mlscript
mlscript copied to clipboard
The MLscript programming language. Functional and object-oriented; structurally typed and sound; with powerful type inference. Soon to have full interop with TypeScript!
This issue tracks the problems that are _neither urgent nor pressing_ related to the resolver & type classes feature. ### Summer UROP - [x] Unsoundness of partial application. - [x]...
Here are some problems left in the original PR (https://github.com/hkust-taco/mlscript/pull/257) that still need to be addressed. ### Code documentation - [ ] https://github.com/hkust-taco/mlscript/pull/257#pullrequestreview-2557775711 ### Interactions with initialization - [x] `handle`...
Draft PR for implementing a user-guided specialisation pass in the mlscript compiler, very much still WIP
I'm trying to refactor the currently messy handling of variables in MIR. - [X] Distinguish initial variable assignments from mutable reassignments - [ ] Add a way of specifying where...
TODO - [ ] Member classes are not lifted correctly: they are no longer accessible from the original owner (outer definition). - [ ] The current lifter has these comment:...
https://github.com/hkust-taco/mlscript/pull/260#pullrequestreview-2563415139
Multi-line lambda functions can be parsed as Jux: ```fs (x => x + 1)(0) //│ FAILURE: Unexpected type error //│ ╔══[ERROR] Illegal juxtaposition right-hand side. //│ ║ l.46: x +...
Basically we should distinguish two kinds of classes * Simple/classical classes, similar to what one would define in Java. These can generally be moved around and lifted. * Complex/first-class classes,...
- [x] Print runtime error stack traces - [x] Generate sanity checks as part of the JS code (with a flag to disable that when more performance is needed): -...
- [ ] Generate human-readable type variable names (see #240) - [ ] Improve the constraining error messages - [ ] ...