
Go-flavored Pascal: A small embeddable self-hosting Pascal compiler for Windows - tomcam
https://github.com/vtereshkov/xdpw
======
mhd
It's interesting how the software landscape twists and turns sometimes. Go
itself has some good Pascal-ish flavor, mostly via Oberon (although I actually
liked the comparison with Algol 68[1], flawed as it was)

A good comparison of Go-like interfaces vs Oberon's minimalistic record
extension would be interesting.

[1]: [http://cowlark.com/2009-11-15-go/](http://cowlark.com/2009-11-15-go/)

~~~
jhbadger
Indeed. Pike also created the editor acme, which clearly was inspired by
Oberon.

~~~
marktangotango
I really love that the Pascal/Modula/Oberon lineage became mainstream via Go.

~~~
badsectoracula
Pascal used to be mainstream, but it fell out of favor after Borland became
the defacto standard and then self-destructing.

~~~
coliveira
I believe that Pascal's problem was that it didn't have any standard, while C
and C++ were standardized early (even before the official standard there was
an informal one). There was also the influence of UNIX software behind C,
while Pascal was not as well established.

~~~
badsectoracula
Pascal was actually standardized both as ISO 7185 a few years before C and the
same year as C as ISO 10206 (see [0]), however both (especially the second)
saw very little interest and any further standardization efforts stopped soon
later. Even from its inception (like all of Wirth's languages) it was meant to
be extended - even the standard itself mentions that any deviation from it is
accepted as long as it is documented. Dialects are much more common in Pascal,
pretty much like BASIC (and other languages - standardization to the level of
C and C++ isn't really that common).

In practice every implementation was copying features from the most popular of
its time - UCSD Pascal in the earlier days, Borland Pascal in later days (and
Borland Pascal actually copied a bunch of features from UCSD Pascal).
Implementations were running on systems that had enough differences as to not
be worth the portability anyway.

Nowadays pretty much all Pascal compilers are either pure procedural Pascal
compilers loosely based on the first standard (i do not think the extended one
was implemented much) or the object oriented variant introduced in Delphi.
AFAIK pretty much all of the latter support the Delphi 7 dialect, so that acts
as a sort of de-facto standard.

The UNIX influence was a much much bigger reason that C got so widespread and
C++ simply piggybacked on that.

[0] [http://pascal-central.com/standards.html](http://pascal-
central.com/standards.html)

------
peter_d_sherman
Amazing Work!

Exactly the right level of functionality vs. complexity for compiler writing
educational purposes, which is very hard to do!

