-
Notifications
You must be signed in to change notification settings - Fork 39
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
RaptorJIT language side evolution and Lua compatibility #238
Comments
Supporting bitwise operators like There has been some past discussion on the LuaJIT repo over at LuaJIT/LuaJIT#63. Mike wrote that "the main implementation cost [is] modifying all of the So perhaps we can revisit this issue once the VM port is done and then look at the best way to support these new operators (which may or may not have the same semantics as Lua 5.3 as per LuaJIT/LuaJIT#63.) |
Is it planned to have a partial control on the lexer/parser at runtime ? We can also transform I'd like to know your opinion about MACRO processing and non static grammar parser... |
@tst2005 You are welcome to experiment with preprocessing and/or metaprogramming features on a branch and make that available for other people to merge :) The nearest example that I can think of is DynASM. This is a preprocessor written in Lua coupled with a runtime library. Mike Pall did the original targeting C but @capr made a Lua version in LuaPower that lets you write inline assembler. The main limitation in LuaJIT/RaptorJIT seems to be not having a directive to preserve line numbers in the source file through preprocessing. It's a major pain when Lua errors use line numbers that don't match the source file. This could justify a simple change to the RaptorJIT lexer to "hint" what the line number is in terms of the source file. On the other hand @CapsAdmin is working on a dynamic assembler that's like DynASM but without a preprocessor and I suspect this would make a better approach with no magic syntax. (The preprocessor is mostly there to make code generation fast but that's because DynASM was designed as a JIT backend rather than a macro-assembler.) |
Hello,
After the "Remove Lua C-API" discuss, If RaptorJIT choose his own road.
I wonder if it is easy to introduce in RaptorJIT :
<<
,>>
,&
,|
, etc) and the implicite call of their meta.Regards,
The text was updated successfully, but these errors were encountered: