|
From: Kenton V. <tem...@ga...> - 2003-02-21 15:45:46
|
I finally finished the interactive interpreter... well, not finished, but
it's working. At present, the only way to execute Evlan code is to type it
in at the prompt and run it. Of course, only the kernel dialect is
supported so far.
Here is an example of some code which I tested:
fib = x => result where
loop = counter => last => last2 =>
if counter.equals 1
then last
else loop (counter.subtract 1) (last.add last2) last
result =
if x.isLessThan 1
then 0
else loop x 1 0
I must say I'm rather surprised by how little debugging I have had to do to
get things running as well as they are. I expected to be debugging for
days before code like the above worked! :)
TODO:
Short-term:
- Revise language description
- "Basic" dialect (mainly, adds arithmetic operators)
- Bytecode loading and management
- Very simple API facilities (containers, string ops, etc.)
Medium-term:
- Event system
- "Process" dialect (? perhaps this should be delayed until the
compiler is written in Evlan. I don't think the compiler itself is in dire
need of it.)
- C native interface
Long-term:
- Rewrite compiler in Evlan.
- Design API
-Kenton Varda
|