Разработчик (и) | Эндрю Таненбаум, Сериэль Джейкобс |
---|---|
Первоначальный выпуск | начало 1980-х годов |
Стабильный выпуск | 6.0pre5 / 2 июня 2016 г.; 4 года назад (02.06.2016) |
Репозиторий | |
Написано в | C |
Операционной системе | Minix, Unix-подобный |
Тип | Ретаргетируемый компилятор |
Лицензия | Лицензии BSD |
Веб-сайт | tack.sourceforge.net |
The Amsterdam Compiler Kit (ACK) - это перенаправляемый компилятор набор и набор инструментов, написанный Эндрю Таненбаумом, и был MINIX ' s родной набор инструментов до тех пор, пока MINIX userland не был в значительной степени заменен на NetBSD (MINIX 3.2.0) и Clang был принят в качестве системного компилятора. Первоначально ACK был программным обеспечением с закрытым исходным кодом (что позволяло распространять двоичные файлы для MINIX как особый случай), но в апреле 2003 года он был выпущен в рамках open source BSD. лицензия. Он имеет интерфейсы для следующих языков программирования : C, Pascal, Modula-2, Occam и BASIC.
Известность ACK проистекает из тот факт, что в начале 1980-х это была одна из первых переносимых систем компиляции, разработанных для поддержки нескольких исходных языков и целевых платформ.
ACK обеспечивает максимальную переносимость за счет использования промежуточного языка с использованием байт-код, называется EM. Каждый языковой интерфейс создает объектные файлы EM , которые затем обрабатываются несколькими универсальными оптимизаторами перед тем, как серверная часть переведет их в собственный машинный код.
ACK поставляется с универсальным компоновщиком и библиотекарем. возможность манипулировать файлами в собственном формате ACK a.out ; он будет работать с файлами, содержащими EM-код, а также с машинным кодом. Однако EM-код не может быть связан с машинным кодом в машинном коде без предварительной трансляции двоичного кода EM.
Версия 6.0