|
Post by mccraigmccraig on Apr 17, 2018 10:59:05 GMT
hi,
what's the status of the new compiler ?
can i use it yet ?
if so, would it be helpful for me to play with it and report bugs ?
thx
|
|
|
Post by Eduardo Julian on Apr 17, 2018 12:57:55 GMT
Sadly, not yet.
I've been spending most of my time lately adding new backends for Lux.
Originally, 0.6 was only going to ship with a new JS back-end, but I've been able to speed up back-end development a lot and decided to add others. If I get my way, Lux will ship with JS, Lua, Python, Ruby and R (all of which have been added by now), plus Scheme (under development), Common Lisp, Perl, PHP, Tcl and Smalltalk.
I'll be done with those back-ends by late-April/early-May.
After that, I'm just going to finish the compiler and ship it (that is to say, no more new features or any extra workload); just finish the thing.
I'm thinking of late June for the 0.6 release.
BTW, 0.7 will not suffer from the incredible delays of 0.6, as I only plan to do a few bug-fixes, plus the addition of the re-definable compiler pipelines. So, I expect 0.7 to be about a month's worth of work, at most. So... late July or early August.
|
|
|
Post by Eduardo Julian on May 1, 2018 6:34:39 GMT
An update on this:
Initial support has been added for JS, Lua, Python, Ruby, R, Scheme, Common Lisp and PHP.
Perl support won't be added because the Perl interpreter/compiler I had my eyes on can't be used (I thought it was a JVM library, but it isn't; which renders it unusable). There's also Rakudo, but it's Perl 6; and as far as I know, nobody cares about Perl 6. :/
Smalltalk won't be supported (for now), because the implementation I was going to rely on (Redline) can be used as a compiler, but not as an interpreter; so I can't incorporate it into the LuxC compilation process.
Finally, TCL won't be supported... because TCL is just plain weird. Plus, I'd probably have to do some special work regarding closures/anonymous-functions, which I'd rather avoid (PHP has already traumatized me enough with its atrocious treatment of functions).
That means the endgame has begun, as far as new-luxc is concerned. I'll finally be finishing the thing.
|
|