Skip to content
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
merged 99 commits into from
Jun 21, 2018

Conversation

ospencer
Copy link
Member

This is definitely a WIP, as there are still tests that are TODOs, and DOM interactions are definitely broken.

peblair and others added 30 commits December 9, 2017 18:45
… 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
peblair and others added 23 commits April 29, 2018 16:15
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).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants