hi,

I'm working on a tutorial for using the PCT (will be published on
parrotblog.org).
For that purpose I built a case study language, which is simple enough
to understand and implement in a straightforward way, yet it has
enough features to demonstrate the power of the PCT. An important
issue in the design of this language was that I want to provide a
*complete* language, not one with "missing features" due to lack of
PAST/PCT support (there is of course still the issue of disappearing
local variables in interactive mode, but that will be made clear in
the tutorial)

IMO, it's more or less finished now. (I wanted to implement the Game
of Life as a nice demo, but it might take a while before I get that
working)
Features are:

* variables: globals, locals
* subroutines and parameters
* if/while/try/throw/for statements
* assignments and subcalls
* basic types: integer, float, string
* aggregate types: array, hash
* operators: +, -, /, *, %, not, and, or, .. (string concat), and
relational ops (<, == etc)

notable missing features (by choice) are:
* return, break, continue and friends
* classes and objects
* closures (nested subroutines, subroutines as first class citizens)

For the interested reader, I added a .tar.gz file containing the source.
Comments and especially suggestions are most welcome.
kjs

Attachment: squaak.tar.gz
Description: GNU Zip compressed data

Reply via email to