Jonathan Lindegaard Starup
Jonathan Lindegaard Starup
This code only takes care of Full schema types like `${Hello(Int32)}` but not types such as `#()`. ``` private def visitType(tpe0: Type)(implicit root: TypedAst.Root, flix: Flix): Type = tpe0.typeConstructor match...
Just as you can write `fun(param = arg)`, I'd also like write ``` def fun(param = t): t = param ``` instead of ``` def fun(param: {param: t}): t =...
`x.and(y)` now needs to be ``` x.`and`(y) ``` Concerns and missing things: - Should it be an error to escape a non-keyword? - Static fields and methods cannot use escapes...
``` while (Ref.get(cantSleep)) { addWhileLoop() // ^^^^^^^^^^^^^^ useless expression } ``` - Good for user programs (I've implemented my own wonky while at least thrice) - Good for backend rewrites...
https://github.com/flix/flix/blob/44efae8de60810078a3db5942c0f7f0f0d9e4fea/main/src/ca/uwaterloo/flix/language/phase/typer/TypeContext.scala#L187
https://github.com/flix/flix/blob/44efae8de60810078a3db5942c0f7f0f0d9e4fea/main/src/ca/uwaterloo/flix/language/phase/Kinder.scala#L1397 https://github.com/flix/flix/blob/44efae8de60810078a3db5942c0f7f0f0d9e4fea/main/src/ca/uwaterloo/flix/language/phase/Kinder.scala#L1403 https://github.com/flix/flix/blob/44efae8de60810078a3db5942c0f7f0f0d9e4fea/main/src/ca/uwaterloo/flix/language/phase/Kinder.scala#L1431 https://github.com/flix/flix/blob/44efae8de60810078a3db5942c0f7f0f0d9e4fea/main/src/ca/uwaterloo/flix/language/phase/Kinder.scala#L1438 https://github.com/flix/flix/blob/44efae8de60810078a3db5942c0f7f0f0d9e4fea/main/src/ca/uwaterloo/flix/language/phase/Kinder.scala#L1445
https://github.com/flix/flix/blob/44efae8de60810078a3db5942c0f7f0f0d9e4fea/main/src/ca/uwaterloo/flix/language/phase/PatMatch.scala#L759
Follow up to #10906, writing `inject List#{42} into Hello/0xFF` and `inject List#{42} into Hello/1_000` should give a better message. My proposal is to add a `hint: String` to the error,...