-
-
Notifications
You must be signed in to change notification settings - Fork 116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add type system, totality checking, abstract data types, and pattern matching. #20
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
… temporary) representation. The type-checker still doesn't quite support them, though.
The new strategy is to make Grain use a modified version of the OCaml compiler pipeline for the parsing and type-checking phases, and this typed AST will be translated into a linearized ANF form of our own creation. Once this gets running, we can go back and winnow away the unneeded parts from the OCaml libraries.
- Update ANF code to use typed AST - Migrate compile.ml/grainc to new pipeline - Update tests to use new definitions - Pray - Fix tests - Clean up cruft from OCaml frontend fork - Write more tests - Enjoy our new frontend
Add grain cmdline tool
Fix browser runtime
This makes our project layout a bit grosser, but my understanding is that the prior lack of grossness was a bug (that is, the nested libraries under src/ would not have been installed in a distribution).
Update data types grammar
This was referenced Jun 21, 2018
Closed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is definitely a WIP, as there are still tests that are TODOs, and DOM interactions are definitely broken.