cuplv / cuanto

Apache License 2.0
1 stars 1 forks source link

Adding functions to Jsy #33

Closed bechang closed 7 years ago

bechang commented 7 years ago

This pull request is for adding functions to JavaScripty. Function expressions are ready but not calls.

bechang commented 7 years ago

@bennostein @kyleheadley Could you guys review this PR? The documentation could be better, but perhaps you guys could identify the parts that are most confusing?

bechang commented 7 years ago

@kyleheadley I have had similar concerns about this. In fact, I written exactly such integration modules (primitives and lambda) that simply define a composed language. The lambda language is the first of our main languages. I have been thinking a restructuring is needed to separate the "component" modules from the "core calculi" that we set out to build (e.g., functions is a "component", lambda is the "core calculi" with functions, booleans, and numbers). I don't think I know how to do that yet. Take a look at those tests: I think that's what you're looking for.

Could they be more exhaustive and better documented? Yes, certainly. But at the same, I am working late nights to try to make sure you guys are not blocked.

On one hand, we are getting stuck on the extensibility of just parsers, which is kind of frustrating. I care less on that being an API that can be re-used than, say, the Soot interface. But your point is well-taken.

kyleheadley commented 7 years ago

@bechang Yeah, the jsy component of the project ended up more complicated than anyone expected, I think. I didn't mean to suggest that it wasn't getting done fast enough. Your tests in primitives and lambda are the type of thing I was looking for, I must have missed them. I guess I was expecting many more cases, like in your other tests. If you think that they cover the common possibilities, than that's fine. I'll find my approve button.

bechang commented 7 years ago

@kyleheadley For primitives and lambda, I fully admit that they're so-so test cases--and no, not exhaustive. I am balancing getting stuff out for you guys and the ideal software engineering. I wanted to at least have the modules there to uncover some issues.

Please contribute tests and see if it breaks stuff!

bechang commented 7 years ago

@kyleheadley Thanks for the review. I am going to merge now to keep us moving, but please submit (or update) an issue if there's something that you think can be done longer-term.