14 comments

[ 2.7 ms ] story [ 43.1 ms ] thread
Looks cool, last post in 2022 though? Is it feature complete?
tl;dr: A kit for targeting several old or old-ish platforms, with code in some languages popular in the 1980s: C89 (ANSI C), Pascal, Modula 2, Basic. A 'kit' here means: frontend, codegen, support libraries and some tools. This is apparently known as being the default toolchain for Minix 1 and 2.

But - the repository is not "everything you need"; it actually relies on a lot from an existing platform - GCC, Lua, Make, Python etc. So, you would typically use this to cross-compile it seems.

It's interesting that they have a Raspberry Pi GPU backend, but neither an ARM backend nor any modern ISA. (such as x86-64, Aarch64, etc.) Is there any example program that actually runs on the rpi gpu? I skimped the website, but it is only mentioned in the release notes.
Presumably someone wanted to write an RPi bootloader, which run on the GPU. Several universities have OS programming courses that use old 32-bit RPis. Not sure if anything was actually written though.
I’m still making my way through the MINIX book. Love it.
One of the first widely used compiler toolkits with multiple frontends, intermediate language for the phases and a common backend.

Contrary to common understanding LLVM wasn't the very first one, ACK also not, there are others predating it when diving into compiler literature.

Is this the same compiler that famously spurred Richard Stallman to create GCC [1] when its author "responded derisively, stating that the university was free but the compiler was not"?

It seems to be free now anyway, since 2005 according to the git history, under a 3-clause BSD license.

[1] https://www.gnu.org/gnu/thegnuproject.en.html

UniPress, RMS's arch enemy Evil Software Hoarder, sold a commercial version of the Amsterdam Compiler Kit as well as Gosling's Emacs.

https://compilers.iecc.com/comparch/article/92-04-041

UniPress made a PostScript back-end for ACK that they marketed with the NeWS version Emacs, whose slogan was "C for yourself: PostScript for NeWS!"

https://news.ycombinator.com/item?id=42838736

>UniPress ported and sold a commercial version of the "Extended Amsterdam Compiler Kit" for Andrew Tanenbaum for many CPUs and versions of Unix (like they also ported and sold his Unix version of Emacs for James Gosling), so Emacs might have been compiled with ACK on the Cray, but I don't recall.

>During the late 80's and early 90's, UniPress's Enhanced ACK cost $9,995 for a full source license, $995 for an educational source license, with front ends for C, Pascal, BASIC, Modula-2, Occam, and Fortran, and backends for VAX, 68020, NS32000, Sparc, 80368, and others, on many contemporary versions of Unix.

>Rehmi Post at UniPress also made a back-end for ACK that compiled C to PostScript for the NeWS window system and PostScript printers, called "c2ps", which cost $2,995 for binaries or $14,995 for sources.

>Independently Arthur van Hoff wrote a different C to PostScript compiler called "PdB" at the Turing Institute, not related to c2ps. It was a much simpler, more powerful, more direct compiler written from scratch, and it supported object oriented PostScript programming in NeWS, subclassing PostScript from C or C from PostScript. I can't remember how much Turing sold it for, but I think it was less than c2ps.

https://compilers.iecc.com/comparch/article/92-04-041

https://donhopkins.com/home/archive/NeWS/NeScheme.txt

hah, kinda funny to see this here. Graduated from the VU so we where tought about the ack and minix in our first CS classes. What a throwback.
The requirements for "flex and yacc" seem to indicate that this is from a time and culture before recursive descent/precedence climbing became the norm.