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

About the interpreter #3

Open
LdBeth opened this issue May 7, 2019 · 3 comments
Open

About the interpreter #3

LdBeth opened this issue May 7, 2019 · 3 comments

Comments

@LdBeth
Copy link
Contributor

LdBeth commented May 7, 2019

Now we have a lambda rep based interpretation, however it is buggy and limited in certain ways:

  • It doesn't implement runtime I/O, and because the type checker requires top-level to be integer, it can only do integer arithmetic.

  • It can't even do integer arithmetic right, because the design represents integer as even number Int32 so it can be distinguished from pointers, which uses odd number Int32, and the the convention's done at parsing time, but the lambda interpreter is written for regular integers.

@LdBeth
Copy link
Contributor Author

LdBeth commented May 7, 2019

TODOs:

  • fix the arith ops to work with the even representation fed3773
  • add support for I/O

@ice1000
Copy link
Member

ice1000 commented May 7, 2019

tql

@LdBeth
Copy link
Contributor Author

LdBeth commented May 7, 2019

Stuffs like typical length on a list raise runtime error says “integer is required, ” the exact cause needs to investigate.

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

No branches or pull requests

2 participants