From 2020ccfd090a5d9cc8cdd5f252c15749bdaae58f Mon Sep 17 00:00:00 2001 From: Eirikr Hinngart <151315375+Oichkatzelesfrettschen@users.noreply.github.com> Date: Thu, 29 May 2025 19:06:20 -0700 Subject: [PATCH] docs: add language overview --- docs/LANGUAGES.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 docs/LANGUAGES.md diff --git a/docs/LANGUAGES.md b/docs/LANGUAGES.md new file mode 100644 index 000000000..644067c16 --- /dev/null +++ b/docs/LANGUAGES.md @@ -0,0 +1,32 @@ +# Programming Languages in MINIX + +This repository contains several languages used for the operating system and associated tools. + +## C +- The bulk of MINIX is written in C. +- Code is generally built with GCC 4.8.5 or Clang 3.4. +- Most of the system follows ISO C99. Some toolchain components limit themselves to C89 for portability. + +## C++ +- A limited amount of C++ exists, primarily in external packages. +- Supported with GCC 4.8.5 (including libstdc++ and g++) and Clang 3.4. +- C++11 features are available. + +## Assembly +- Assembly sources use the GNU assembler syntax. +- These files are compiled as part of the normal build through GCC or clang. + +## Go +- LLVM bindings include Go code. +- Requires a Go compiler at least version 1.2. + +## Python +- Some build scripts and tests use Python 2.7 or newer. +- Python 3 is also supported by parts of the tree. + +## AWK +- Several utilities rely on POSIX AWK scripts. + +## Shell +- Numerous build scripts use the POSIX shell. +