Parallaxis is a combination of two programs: a compiler, which generates PARZ intermediate code, and a simulator, which runs the intermediate code on whatever machine you have. Compiler (pa): ============== Can't mix types in an expression (eg, integers and reals). Must explicitly cast integer or cardinal to float (eg, float(N)), or truncate floats to integers (eg, trunc(3.14 * r*r)). Also can use real constants instead of integer constants, in real expressions. All variables must be specified as either SCALAR or VECTOR. If a function is called in a PARALLEL block, it must take VECTOR args and return a VECTOR value. Writing a vector variable writes all values of the vector, in order. Eg, VECTOR x: integer; ... PARALLEL WriteInt(x, 10); ENDPARALLEL id_no is [1..n], if you have n procs, no matter what your CONFIGURATION statement says. Thus if you say CONFIGURATION list[N] the processes are numbered 0..N-1 for the purpose of the CONNECTION statement, but id_no runs [1..N] anyway. Graphics functions are not implemented. MAC: The compiler takes its switches through the "Settings..." menu item, in a more mac-like fashion. The compiler is a pain: no scroll bars. Set a limit on the number of error messages. Simulator (pz): =============== On Macs the SimulatorFP is for machines with floating point coprocessor, and can be faster. Seems to crash more though. On the DEC you can pass a .p file to the pz simulator and it will compile it first, then run it. On the Mac, launching a .z file runs the simulator on that file. If you run the Simulator directly, you have access to the pz command line, and can specify debugging options there. To use the debugger: Run the simulator and change the command line to simulator -l foo.z (that's a little L, not a one). foo.z is the compiled version of your program. Type 'help' to get a list of commands. Read the man pages for other simulator switches. MAC: It appears that if you don't change the simulator command line, a file dialog comes up, but there will be no dialog box if you change the command line. Thus the file name must be given there. In that case, it seems the file must be in the same folder. Timing (ptiming): ================= To measure times, get a trace of the program run (here the memory etc on the Mac may really limit you) in a file. eg, pz -r1myprog.out myprog.z This will do a mode '1' recording to file 'myprog.out'. Then run the program called 'ptiming'. Supply it the name myprog.out, and tell it where you want the statistics output (RETURN is a good choice). Enter 0 at the next question to get stats only. Then hit return twice, choosing the default which says that a propagate or reduce costs 10 times as much as a regular instruction.