|
The Amsterdam Compiler Kit (ACK) is fast, lightweight and retargetable compiler suite and toolchain written by Andrew Tanenbaum and Ceriel Jacobs, and is Minix' native toolchain. The ACK was originally closed-source software (that allowed binaries to be distributed for Minix as a special case), but in April 2003 it was released under a BSD open source license. A retargetable compiler is a compiler that can relatively easily be modified to generate code for different CPU architectures. ...
Andrew S. Tanenbaum Andrew Stuart Andy Tanenbaum (born 1944) is the head of Department of Computer Systems, Vrije Universiteit, Netherlands. ...
This article is about the operating system in general. ...
It has frontends for C, Pascal, Modula-2, Occam, and BASIC. Wikibooks has a book on the topic of C Programming The C programming language (often, just C) is a general-purpose, procedural, imperative computer programming language developed in the early 1970s by Dennis Ritchie for use on the Unix operating system. ...
Pascal is an imperative computer programming language, developed in 1970 by Niklaus Wirth as a language particularly suitable for structured programming. ...
Modula-2 is a computer programming language invented by Niklaus Wirth at ETH around 1978, as a successor to Modula, another language by him. ...
Occam is a parallel programming language that builds on Communicating Sequential Processes (CSP) and shares many of their features. ...
Screenshot of Atari BASIC, an early BASIC language for small computers. ...
The ACK achieves maximum portability by using an intermediate byte-code language called EM. Each language front-end produces EM object files, which are then processed through a number of generic optimisers before being translated by a back-end into native machine code. Unlike GCC's intermediate language, EM is a real programming language and could be implemented in hardware; a number of the language front-ends have libraries implemented in EM assembly. EM is a relatively high-level stack-based machine, and one of the tools supplied with ACK is an interpreter capable of executing EM binaries directly, with a high degree of safety checking. See the em document referenced below for more information. The GNU Compiler Collection (usually shortened to GCC) is a set of programming language compilers produced by the GNU Project. ...
In computer science, an intermediate language is the language of an abstract machine designed to aid in the analysis of computer programs. ...
ACK comes with a generic linker and librarian capable of manipulating files in the ACK's own a.out-based format; it will work on files containing EM code as well as native machine code. (You can not, however, link EM code to native machine code without translating the EM binary first.)
External links
- http://tack.sourceforge.net/
|