Here is a list of improvment, I 'd like to make :
- Allowing to use undeclared variables.
When looking at current Lem script, it appears to have many declaration, so although declaring variable is wishable in a large program, it makes the writing of small script a pain. So I 'd like to have the possibility to enable or disable an auto-declaration feature.
- Improving startup time.
In the current implementation, a lot of code is compiled at startup time. A way to fix the problem would be to put this code an a pre-compiled module.
- Adding support for exception in the core language
- Save a full running environment.
This is something possible in smalltalk.
- Allowing run time function resolution.
Currently, when a function is
invoked, the avaibility of the function is checked at compile time.
While this avoid runtime error, I think this constraint should be relaxed for some type.
For instance, similarly to objective-c , we could allow for object the "Object"
class (In Lem , "Object" is the root class for all objects) type to lookup the function at runtime.
- Adding the notion of interface (like Java interface)
- Write the code to dump a stack trace
- Write new domain specific langage such as lemmake (a make replacement)
- Porting on other hardware architecture support (powerpc for mac)
- Porting on other software architecture(Windows XP)
- Removing (may be) object-orientation stuffs and
use only a notion of interface.
- Write a decent manual.
- Write a FAQ.
- Add some help builtin.
- Add some support for the "programing by example".
- Fix bugs