Please see the
full language reference manual for details of Pushlogic SPL1 itself.
GENERAL
The compiler is run from the unix command line. It is called pushcomp.
It is a shell script that invokes Moscow ML, which in turn, invokes several
small C programs and so DLLs.
You need access to Moscow ML and at the Computer Laboratory this is normally
in /usr/groups/theory/mosml.
The compiler reads in one Pushlogic source file. The source file
extension is normally .plog. The compiler generate a .lst listing
file and a .plc object code file. It also writes certain log files
to hidden files.
INSTALLATION
RUNNING A SIMPLE TEST EXAMPLE
See Daniel Gordon's readme notes
GENERATING PIC MICRO CODE FOR CAN BUS
PRAGMAS
The directive
pragma x = true/false;
can be placed in the input to the compiler to alter its behaviour, where
x is one of the defined pragmas. The intention is that none of these
will be needed eventually. Available pragmas are
elab - defaults true - elaborate until closure
slchecks - defaults true - check safe and live properties found un the source code
USER FILES
mydesign.plog - pushlogic source code
mydesign.plc - combiled bundle file
mydesign.lst - listing files
mydesign.c - bytecode in a c struct for canning to ROM
mydesign.c - native c compiled version of the design (in future)
mydesign.pic - Microchip PIC code native
LIBRARY FILES
.periodic - A profile showing where time has gone, written every
second or so during compilation.
.pclogxx - A log file created by the most recent compilation
xx is the first two letters of the hostname, when
(handy when multiple machines are writing to the same directory)
.bddlog - Report file created by bdd package
.encoding - A report of the mappings of constants to domains
SYSTEM FILES
END