-
Would be lovely to have [GADTs](https://en.wikipedia.org/wiki/Generalized_algebraic_data_type)!
Eg.
```elm
type Expr : Type -> Type =
| Bool : Bool -> Expr Bool
| Int : Int …
-
Here's the reproduction
```rescript
type text_tag =
| BlockHeading: block_like
| BlockText: block_like
| BlockImage: block_like
type text_like>
// good
let h = (block: block_like) …
-
Hi,
this is not an issue about Catala, but a question about how to (correctly) use GADTs and object types in an AST.
I'm trying to implement an AST with regular constructions and recursive types…
-
CC @AleksanderBG
## Minimized code
Bug found by @julianmichael on [the contributors forum](https://contributors.scala-lang.org/t/question-about-reasoning-about-type-equality).
```Scala
case …
-
## Compiler version
3.3.1
## Minimized code
```Scala
enum Eq[A, B]:
case Refl[A]() extends Eq[A, A]
enum T[A]:
case S(witness: Eq[A, String])
case I(witness: Eq[A, Int])
de…
-
Brittany is pulling the space out from between the `::` and the type immediately following the `::`
corrects this:
```haskell
data MyGADT a where
Constructor1 :: Int -> MyGADT Int
```
to thi…
-
```
What steps will reproduce the problem?
1. load this file:
2. observe error message:
**** Near line: 80 column: 1
Non type constructor: _b as range of constructor: Ahh
3. When I enter the pattern…
-
SH formats my GADTs instead of this:
```hs
data Foo a where
SomeA :: String -> Foo ()
SomeB :: Bool -> Foo String
SomeC :: String -> Foo ()
```
like this:
```hs
data Foo a where Som…
-
While reviewing my thesis, Oleg Kiselyov pointed out a subtlety in the interaction of GADTs with staging in MetaOCaml: GADT constraints should be marked by stage to prevent the use of future-stage con…
-
stylish-haskell fails on the following:
```
{-# LANGUAGE GADTs #-}
data Foo a where
Foo :: (Eq a) => {
fooBar :: [a],
fooBaz :: Int
} -> Foo a
main = pu…