List of compilers
This page is intended to list all current compilers, compiler generators, interpreters, translators, tool foundations, assemblers, automatable command line interfaces (shells), etc.
Ada compilers
ALGOL 60 compilers
ALGOL 68 compilers
cf. ALGOL 68s specification and implementation timeline
Assemblers (Intel *86)
Assemblers (Motorola 68*)
Assemblers (Zilog Z80)
Assemblers (other)
BASIC compilers
BASIC interpreters
C compilers
Notes:
C++ compilers
Notes:
C# compilers
COBOL compilers
Common Lisp compilers
D compilers
DIBOL/DBL compilers
ECMAScript interpreters
Eiffel compilers
Forth compilers and interpreters
Fortran compilers
Go compilers
Haskell compilers
ISLISP compilers and interpreters
Java compilers
Lisaac compiler
Pascal compilers
Perl interpreters
PHP compilers
PL/I compilers
Python compilers and interpreters
Ruby compilers and interpreters
Rust compilers
Scheme compilers and interpreters
Smalltalk compilers
Tcl interpreters
Command language interpreters
Rexx interpreters
CLI compilers
Source-to-source compilers
This list is incomplete. A more extensive list of source-to-source compilers can be found here.
Free/libre and open source compilers
Production quality, free/libre and open source compilers.
- Amsterdam Compiler Kit (ACK) [C, Pascal, Modula-2, Occam, and BASIC] [Unix-like]
- Clang C/C++/Objective-C Compiler
- AMD Optimizing C/C++ Compiler
- FreeBASIC [Basic] [DOS/Linux/Windows]
- Free Pascal [Pascal] [DOS/Linux/Windows(32/64/CE)/MacOS/NDS/GBA/..(and many more)]
- GNU Compiler Collection (GCC): C (
gcc
), C++ (g++
), Objective-C, Objective-C++, Fortran (gfortran
), Ada (GNAT), Go (gccgo
), D (gdc
, since 9.1), Modula-2 (gm2
, since 13.1), COBOL (gcobol
, since 15.1) and Rust (gccrs
, since 15.1) also available, but not in standard are: Java (gcj
), ALGOL 68, Pascal (gpc
), Mercury, Modula-3, VHDL and PL/I; Linux, the BSDs, macOS, NeXTSTEP, Windows and BeOS, among others - Local C compiler [C] [Linux, SPARC, MIPS]
- The LLVM Compiler Infrastructure which is also frequently used for research
- Portable C Compiler [C] [Unix-like]
- Open Watcom [C, C++, and Fortran] [Windows and OS/2, Linux/FreeBSD WIP]
- TenDRA [C/C++] [Unix-like]
- Tiny C Compiler [C] [Linux, Windows]
- Open64, supported by AMD on Linux.
- XPL PL/I dialect (several systems)
- Swift [Apple OSes, Linux, Windows (as of version 5.3)]
Research compilers
Research compilers are mostly not robust or complete enough to handle real, large applications. They are used mostly for fast prototyping new language features and new optimizations in research areas.
- Open64: A popular research compiler. Open64 merges the open source changes from the PathScale compiler mentioned.
- ROSE: an open source compiler framework to generate source-to-source analyzers and translators for C/C++ and Fortran, developed at Lawrence Livermore National Laboratory
- MILEPOST GCC: interactive plugin-based open-source research compiler that combines the strength of GCC and the flexibility of the common Interactive Compilation Interface that transforms production compilers into interactive research toolsets.
- Interactive Compilation Interface – a plugin system with high-level API to transform production-quality compilers such as GCC into powerful and stable research infrastructure while avoiding developing new research compilers from scratch
- Phoenix optimization and analysis framework by Microsoft
- Edison Design Group: provides production-quality front end compilers for C, C++, and Java (a number of the compilers listed on this page use front end source code from Edison Design Group). Additionally, Edison Design Group makes their proprietary software available for research uses.
See also
- Compiler
- Comparison of integrated development environments
- List of command-line interpreters
- List of open-source compilers and assemblers
Footnotes
References
External links
- List of C++ compilers, maintained by C++'s inventor, Bjarne Stroustrup
- List of free C/C++ compilers and interpreters
- List of compiler resources