Marco van de Voort wrote:
>
.... snip ...
>
> (While Delphi in the .NET flavour generates IL and Component Pascal
> (which afaik is more an Oberon) generates JVM and IL, they are at
> least not exactly traditional Pascal)
>
> Moreover, I doubt classic P-code could withstand a comparison with
> an embedded C compiler.
IIRC Pascal M generated native code. My PCD system outperformed it
in speed, and there was no comparison whatsoever in code size.
Native code output left Pascal M in the dust. And that was early
in it's development.
PascalP had extensions, but its innate parsing was ISO standard.
The extensions were designed, in the main, so that they could be
implemented by functions or procedures. I.e. splitbytes converted
integers into bytes, and took care of endianism. Mergebytes was
the reverse. splitreal/mergereal was equivalent for reals to
integer pairs. (Integers were 16 bits). Other standard procedures
were for compiler code generator use, to form reals in the native
form for a particular machine. The substring construct was
similar, in that it could pick out a substring starting at an index
and of a prescribed length, but the syntax was peculiar (s1 :=
s2[first FOR length]; This was invented by Dave Fraley. OTHERWISE
in CASE statements was implemented, but was context sensitive so it
didn't prevent using otherwise as an identifier. That was a bear
to do cleanly.
--
"A man who is right every time is not likely to do very much."
-- Francis Crick, co-discover of DNA
"There is nothing more amazing than stupidity in action."
-- Thomas Matthews
<http://www.cs.auckland.ac.nz/~pgut001/pubs/vista_cost.txt>


|