Some time ago it occurred to me that the best way to illustrate the
remarkable architecture of the EE KDF9 would be to write a
cross-compiler that generates idiomatic KDF9 Usercode (assembly
language) and displays it in association with the source code.
I chose Pascal as the source language, having compiler texts available
for retargetting.
PASKAL, which implements a large subset of Pascal, is now available.
The only parts of Pascal not implemented are file types and packed
types, including the 'text' type, which means that there is no Standard
Pascal I/O. However, I provide some basic KDF9-oriented output routines
as a stopgap. They are more than adequate to show the correct execution
of, for example, the Whetstone Benchmark, and many other classic codes,
such as Quicksort.
PASKAL is written in Pascal, using the fpc compiler, and in Ada 2012,
and is included with V11.2c of ee9, my KDF9 emulator (also in Ada 2012).
Included with it are the following documents:
* PASKAL: Users' Guide
* PASKAL: Object Program Structure
* PASKAL: Implementation Overview
Compiled binaries are available for:
* 64-bit Raspberry Pi OS (Debian Bookworm)
* Apple Silicon Macs
* Intel Macs
* 64-bit Intel Linux (Debian Bookworm)
The Intel Linux binary should run under WSL on MS Windows 10 or 11.
Get your copy here:
<
http://www.findlayw.plus.com/KDF9/#PSK>
There is a direct link there to the Users' Guide. It includes an example
of a complete Pascal program and the corresponding KDF9 Usercode, should
that be the extent of your interest.
Enjoy.
--
Bill F.
--- SoupGate-Win32 v1.05
* Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)