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

Include AST info in serialized module files #52

Open
griwes opened this issue Apr 24, 2019 · 1 comment
Open

Include AST info in serialized module files #52

griwes opened this issue Apr 24, 2019 · 1 comment

Comments

@griwes
Copy link
Member

griwes commented Apr 24, 2019

Currently, the module files don't contain any AST info; this is bad, since it makes good error messages essentially impossible. It also makes a few places in code awkward, like, for instance, it makes it necessary to have two constructors in typeclass_expression, which is what I'd like to fix as I'm adding it, but it seems like a bigger effort than what I want to include in typeclasses themselves.

(Nevermind that I've already done some big changes not related to the feature on that branch. Everything is fine.)

@griwes griwes added this to the Release v0.1 milestone Apr 24, 2019
@griwes griwes self-assigned this Apr 24, 2019
@griwes
Copy link
Member Author

griwes commented May 1, 2019

...walking around this with silly hacks is proving to be more and more expensive as I proceed, so at this point I'll probably just fold this into #50.

griwes added a commit to griwes/vapor that referenced this issue May 3, 2019
One big missing thing is importing default implementations of typeclass
member functions, but that will come at a later date when I figure out
how the heck to serialize function definitions.

This is the first commit that touches in reaver-project#52; it is by no means a proper
implementation of that, since it mostly only _reads_ the AST location
info from the module files; it doesn't really _write_ them, which is
something that will require a more proper pass over everything we
export.

This also somewhat improves dependencies for proto files; it's slightly
overeager there, because all proto files are re-compiled when any of
them changes.

To make testcases more interesting, integer division has been
implemented.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

1 participant