Cross-compiling to a modern machine would definitely be interesting. As others have noted, many applications were written in BCPL with bits of assembly language (very similar to Nova assembly language) plus microcode for "tight loops" such as BITBLT. There is also a simulator called Salto, written by Juergen Buchmueller, that works well enough to give a feel for the Alto but still has bugs. This page has
.zip file with executables and disk images ready to run on Windows, plus links to the source code:
http://toastytech.com/guis/sal... .