Re: New Neko developments?
Justin Collins <justin <at> presidentbeef.com>
2009-11-22 22:02:48 GMT
Nicolas Cannasse wrote:
> Justin Collins a écrit :
>> Just curious what might be on the horizon for Neko. Are any exciting
>> new features or improvements being worked on?
> Hi Justin,
> There is no currently "exciting features" being developed for Neko,
> because it works exactly as it should so far :) Currently, I'm putting
> more efforts into more high-level tools such as haXe and Tora. The
> lowlevel bits are efficient and stable enough so far.
> But maybe you have some suggestions about things you would like to see
> in Neko ?
A very fair question. I will admit I did not have anything specifically
in mind when I asked the question, so I'll just throw out some things
that have occurred to me while working with Neko:
-A profiler would be great. It does not need to be exceptionally
efficient, I just want to know what functions are taking up the most
time. I know you had worked on something for this in the past, but I'm
not sure if it is actually usable.
-Functions that take a variable number of arguments/default arguments.
Using $varargs is not always an option, because it breaks tail
recursion. I've worked around this now, but only by modifying Neko.
-A better REPL and/or the ability to execute code in the scope of a
particular module. I think these two are related, because currently the
Neko console works by exporting and then importing globals from a
module. This means any local variables (via "var") are lost. This isn't
so bad if you are just using the console to test out Neko code, but it
has made it difficult for me to implement my own REPL.
-Neko needs better error messages. I can't remember all of them off the
top of my head, but the errors when calling C code and errors in JIT
code are typically very unhelpful.
-I agree with Rich's suggestion about coroutines/continuations of some kind.
-A built-in sort routine would be nice.
-Perhaps add in the file_gets function (or a version of it) from here:
-Simpler way to combine a bunch of modules into a single executable.
Linking of modules still seems buggy (see
and there are several steps to creating a standalone executable (compile
each module, link them all together, then run neko_tools -boot).
-A join function for threads.
Performance improvements are always appreciated, although to be honest I
do not know where the slow parts are at the moment.
Neko : One VM to run them all