GNU Smalltalk note: The latest release of GNU Smalltalk has a bug printing floating point numbers. This is fixed in the version installed to /u/cs442
, but if you're using your own installation of GST, you can use floatfix.st to fix it. Just load floatfix.st
before your own files.
- Assignment 1 is due January 31st. Resources:
- Converter from original language to BrainBranch
- Example programs:
- Assignment 2 is due Febrary 28th. Resources: lambda.st
- Assignment 3 is due March 7th. Resources: hasntkell.st
- Assignment 4 is due March 21st. Resources:
- Assignment 5 is due Friday, April 4th. Resources:
- SIL.ml, the parser and utilities for the Simple Imperative Language.
- frontend.ml, an SIL frontend.
- facimp.sil, an imperative (SIL only) implementation of factorial.
- fibimp.sil, an imperative (SIL only) implementation of the Fibonacci sequence.
- facproc.sil, a procedural (SIL-P) implementation of factorial.
- factorize.sil, a procedural (SIL-P) number factorizer.
- fibarr.sil, an array (SIL-PA) implementation of the Fibonacci sequence.
- fibtree.sil, a terrible tree (SIL-PAO) implementation of the Fibonacci sequence.
- notfibtree.sil, an intentionally broken version of fibtree.sil that demonstrates that objects are reference typed.
- rpn.sil, the venerable reverse Polish notation calculator from assignment 1, in SIL-PAO.