The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

partcl

A from scratch implementation of Tcl on Parrot.

To build the tcl compiler, first build parrot and the parrot utilities. From the top level parrot directory:

 perl Configure.pl && make

Then, type make in this directory. This will generate the file tcl.pbc which can then be used to run tcl programs.

 ../../parrot tcl.pbc foo.tcl

Interactive tclsh

To run partcl interactively, type:

 make tclsh

in this directory.

Command line options

partcl supports two command line options (that are not standard Tcl):

-e

Analagous to perl's -e switch, this option will let you specify tcl code in the command line, which will then be executed. e.g:

 $ ../../parrot tcl.pbc -e 'puts {Hello World}'
 Hello World

You will need to properly quote the tcl to protect it from your shell.

--pir

Given this option, partcl will compile the tcl code to PIR, and output the PIR on STDOUT. This PIR can then be compiled to parrot bytecode, or run directly through parrot. (Works with -e.).

To pretty print the PIR that is generated, you can use the experimental utility in ../../tools/util/pirtidy.pl.

Examples

To run an example, change to the examples, and type make for instructions.

Test Suite

To run the test suite, type make test. If any tests fail, try TEST_PROG_ARGS=-G make test. Send the results of both to the mailing list parrot-porters@perl.org.

Documentation

See docs/ and TODO

Tcl Version

We are targeting Tcl 8.5.1.