ACK : the Amsterdam Compiler Kit
One upon a time there was this magnificent and free operating system, called Minix. It was a small version of
Unix meant to be used for research on and teaching about operating systems. Minix was made by Professor Andrew
Tanenbaum (AST) of the Free University of Amsterdam. Minix was small, flexible, extendable and rock stable.
Minix was so good, that the Linux guys decided to use it as a template for their new platform. Until the
latter guys got too greedy and could not understand why AST would not let them ruin his OS. So they left and
created their own version of Minix, called Linux. We all know what way that went.
Minix
went its own way. It is built upon the ACK, which is short for the Amsterdam Compiler Kit. It is a compiler
that has multiple front ends and multiple back ends. It managed to compile for all the platforms and all the
target processors of the era. A product so good and stable, that nobody took an interest in it. Bad code
sells. And it keeps selling since every bug brings in new money. So who cares for a good compiler, if there
are so many bad compilers around?
Is it free?
Yes. As of 2003, the ACK is in the Public Domain or on a GPL. I'm not sure what exactly. But it is free as in
free
But there is a price to pay, for this freedom of course. The amount of libraries is rather limited. Which, of
course makes the compiler more appealing to us, real programmers. We do not need a zillion lines of code in a
million libraries, so you can cut and paste all the .h files together to get a piece of software that may
eventually do what it was intended for. No, we (the real men) start our editors and produce that code from
scratch.
In this aspect, the ACK resembles the Mocka compiler. With that distinction, that the ACK will compile
Modula-2, ANSI C and Pascal for either PC86, Linux or CP/M. Yes. That's what your eyes see: CP/M-80.
Topics covered
Below is a list of topics covered with the ACK compilers:
Page created 30 July 2010,