1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-07-02 15:40:38 +02:00
guile/module/language
No Itisnt a30c18c22a add lua language implementation
What is missing:

+ Functions: module, getfenv, setfenv, math.modf, table.sort

+ Parser: needs to be more flexible

+ Compiler: needs more extensive work to properly handle all possible
cases of variable arguments, multiple returns, and loops

+ Language: Variable arguments and unpacking of multiple returns. (For
example we need to be able to handle something as complex as
print(unpack({...})), which is easy with Lua's explicit stack but will
require lots of tree-il gymnastics, or perhaps modifications to better
allow different calling conventions. (For instance -- how would we
support Python or Ruby, where keyword arguments are gathered into a
hashtable and passed as a single argument?)

What is there:

A fair shot at supporting Lua 5.1, not quite a drop-in replacement, but
not far from that goal either.
2013-09-09 17:01:23 +01:00
..
assembly Merge remote-tracking branch 'origin/stable-2.0' 2013-01-31 11:52:42 +01:00
brainfuck rename <application> to <call> 2011-06-02 13:42:55 +02:00
bytecode Merge remote-tracking branch 'origin/stable-2.0' 2013-01-31 11:52:42 +01:00
cps Add contification pass 2013-08-31 09:40:56 +02:00
ecmascript Adapt ecmascript compiler to tree-il prompt changes, again. 2013-08-11 17:18:09 -04:00
elisp compile-file adds #:to-disk? #t to opts 2013-08-24 15:27:57 +02:00
glil remove language/glil/decompile-assembly.scm 2013-02-24 15:50:09 +01:00
lua add lua language implementation 2013-09-09 17:01:23 +01:00
objcode linker string tables are stateful objects 2013-06-09 16:04:12 +02:00
rtl RTL language 2013-08-31 09:40:56 +02:00
scheme Merge remote-tracking branch 'origin/stable-2.0' 2013-08-11 22:46:22 -04:00
tree-il (compile foo #:to 'cps) 2013-08-31 09:40:56 +02:00
value Add 'for-humans?' flag to <language> specifications. 2013-01-27 10:16:40 -05:00
assembly.scm silly "optimization" in (language assembly) 2011-05-05 11:43:12 +02:00
cps.scm Add CPS language 2013-08-31 09:40:56 +02:00
glil.scm prompt handlers are always inline 2010-02-19 15:30:34 +01:00
objcode.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
rtl.scm RTL language 2013-08-31 09:40:56 +02:00
tree-il.scm <prompt> body and handler are lambdas; add escape-only? field 2013-07-06 20:27:21 +09:00