
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.
272 Listeners
90,576 Listeners
30,975 Listeners
109 Listeners
4,130 Listeners
31 Listeners
15,306 Listeners
34 Listeners
11 Listeners
10,285 Listeners
3,079 Listeners
47 Listeners
21 Listeners