Parrot (http://www.parrotcode.org/) is a new runtime interpretor written in support of [Perl] 6 and other dynamic languages. '''Try it out''' To try out the Tcl interpreter that is currently available with parrot: (you'll need a compiler, make, and perl, for now.)
svn checkout http://svn.perl.org/parrot/trunk/ parrot
cd parrot
perl Configure.pl
make
cd languages/tcl
make
From here, you can cd to examples and make hello. In the tcl directory, there is also a make test target, where you can run the limited test suite. '''Current Status:''' This is a tcl interpreter. Code is parsed out into words, and then an interpreter finds the appropriate command and invokes it, passing in the arguments. A number of builtins are implemented, mostly in PIR (http://www.parrotcode.org/examples/pir.html), though they are easily swapped out for code written in C. '''Future Goals:''' Drop the interpreter - have the parser emit an invokable parrot object. (At this point, we'd still be doing command lookup dynamically at runtime.). Eventually, make the compiler smart enough to know when it can use cached versions of the builtins. Pass most of tcl's test suite. (Main holdup here is implementing the rest of the builtins) Provide the ability to call routines defined in other languages from inside Tcl. (There is already a parrot standard library; eventually this would allow us to call anything, say, written in perl, using native Tcl syntax.) See also [perl] and [python]. ---- [Category Language]