
Sign up to save your podcasts
Or
One use case for GADTs (as a special case of dependent types) is to form a typed subset of your host language. One creates an EDSL called Expr a, where a is a type of the language (say this language is Haskell). Values of types Expr a are the abstract syntax trees of expressions of type a from your host language. This is just a special case of embedding a typed language into your host language: in this case the typed language is a subset of your host language.
5
1717 ratings
One use case for GADTs (as a special case of dependent types) is to form a typed subset of your host language. One creates an EDSL called Expr a, where a is a type of the language (say this language is Haskell). Values of types Expr a are the abstract syntax trees of expressions of type a from your host language. This is just a special case of embedding a typed language into your host language: in this case the typed language is a subset of your host language.
274 Listeners
90,949 Listeners
30,845 Listeners
108 Listeners
4,144 Listeners
33 Listeners
15,335 Listeners
35 Listeners
13 Listeners
10,613 Listeners
3,289 Listeners
47 Listeners
28 Listeners