Skip to content
0:00 / 0:00

#haskell#dependenttypes#gadts

Depending on Types - Stephanie Weirich

Erlang Solutions

18K subscribers • 48 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Stephanie Weirich

Advanced. Deep dive for people who know the field.

3.8K views10 years ago1 recommendation

Programming languagesComputer scienceLanguage design and type systemsComputation and complexity

Stephanie Weirich discusses dependently typed programming in Haskell and compares its type system features with languages like Coq, Agda, and Idris.

Slides and more info: codemesh.io/codemesh2015/stephanie-weirich Is Haskell a dependently typed programming language? Should it be? The Glasgow Haskell Compailer's many type-system features, such as Generalized Algebraic Datatypes (GADTs), datatype promotion, multiparameter type classes, and type families, give programmers the ability to encode domain-specific invariants in their types. Clever Haskell programmers have used these features to enhance the reasoning capabilities of static type checking. But really, how far have we come? Could we do more? In this talk, I will discuss dependently typed programming in Haskell, through examples, analysis and comparisons with modern full-spectrum dependently typed languages, such as Coq, Agda and Idris. What sorts of dependently typed programming can be done in Haskell now? What could GHC learn from these languages? Conversely, what lessons can GHC offer in return? Talk objectives: - Demonstrate the expressiveness of GHC's type system Target audience: - Functional programmers About Stephanie Stephanie Weirich has been a functional programmer since 1993 and a Penn faculty member since 2002. She's crazy about types.

Why it's here

1 person recommends this

What people say. Recommended as an insightful talk on the state and future of dependent types in Haskell.

u/cocreaturein r/haskell • Recommends

Depending on Types - Stephanie Weirich

u/abhir00pin r/haskell • Mentions

On “Persistent Red Black Trees in Haskell”

Thanks for the link. In my blog I point to a presentation1 by Stephanie Weirich where she compares the Agda implementation of RB Tree with a Haskell implementation written using GADTs. I suppose Delete would be a mess there too. 1link to this video

u/mrk33nin r/haskell • Mentions

On “Haskell advantages in formal verification”

I had this talk in my mind when I wrote the above: [video Scanning over it now it looks like both Agda and Haskell are demonstrated.