-- BROOD -- CAT -- A (purely) functional concatenative language written in scheme. It is basically a dialect of Joy. It uses an implicit top-of-stack element called the dictionary, which contains (name . function) bindings, and uses lisp list syntax ( ) for coda/data quoting. All data structures are purely functional, enabling very flexible control of state. The language uses late binding for everything, which makes it rather slow, but very flexible . BADNOP -- A forth compiler written in CAT. It is the second incarnation of a compiler originally written in a Forth dialect. This contains the main elements to translate Forth to optimized symbolic assembly code, and assemble/disassemble to/from binary machine code. PURRR18 -- The 8 bit forth dialect for the PIC18F microcontroller series built on top of BADNOP, together with an interactive monitor for incremental development. POKE -- A virtual machine for interpretation of threaded forth code. Will serve as the basis for the second incarnation of PF, and later as a platform to run CAT. PF (Packet Forth) -- The second incarnation of a typed linear language (core) and media processing system (standard library). SCAF (Simple Cellular Automata Forth) -- The third incarnation of a VM plus mini language for specification of cellular automata. -- STATUS -- - CAT is working. - BADNOP core is implemented in CAT, including the PIC18F compiler and its interactive monitor. - PURRR18 is largely ported and tested. The next phase is a test application: SHEEPSINT: a 1 bit synthesizer on the 18f1220. - POKE vm is working. Compiler works as scheme prototype but still needs to be ported to CAT/BADNOP. - PF is currently a separate project written in C. The process of migrating PF to run on POKE will start in the near future as a two--path process: 1) the development of the feature set necessary to support PF on top of POKE. 2) the developpement of compiler modules to generate code to be used as PF modules in the current C-based implementation. - SCAF is currently only running as part of PF. The idea here is to re--incorporate optimization ideas from the first version with the bigger flexibility of the second version into a new architecture.