-
Couldn't load subscription status.
- Fork 108
CSE Machine fixes for variadic functions, closures & heap #1645
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
Conversation
- make closureToJS use CSE machine instead of interpreter - add variadic function array to heap - handle functions from `stream` - added heap move method
Pull Request Test Coverage Report for Build 8608170634Details
💛 - Coveralls |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good work. Quite a few cleanups and improvements.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great to see "closure" in this folder instead of using the legacy interpreter implementation.
Description
This PR fixes many issues related to the new heap addition.
Changes
Closureclass for use in the CSE MachineclosureToJSuse CSE Machine instead of the old interpreterapply_in_underlying_javascriptto correctly display the environment and ensure objects get added to the heap correctlydeclaredNameproperty inClosure, which stores the name of the constant variable the closure is assigned toapply_in_underlying_javascriptto create environment frames with better namesfunctionNamewill now always be in the form ofx => ...environmentproperty to functions returned from callingstreammovemethod inHeapfor use in the frontendStackandIStackto a separate file to avoid circular dependency issues