About Apoo

Apoo is an environment for programming in a simple assembly language. It is implemented in Python and has the following components:

the Apoo vir tual machine is a virtual processor with a very simple architecture and instruction set that mimics almost all the essential features of a modern microprocessor. As the aim is to teach assembly language, there is no machine code associated with the instruction set.
the Apoo Interface is a graphical environment that monitors the state of the machine during the execution of a program and allows the writing/editing/execution of programs in assembly language.
the Apoo Tutor is a module that aims the grading of student programs based on a description of what should be the execution of the program for specified input data sets.

A machine code translation and an assembler implemented in Haskell are also available.

Rogério Reis,Nelma Moreira 2008-03-14