List of compilers
From Wikipedia, the free encyclopedia
This page lists notable software that can be classified as a compiler, a compiler generator, an interpreter, translator, a tool foundation, an assembler, an automatable command line interface (shell), or similar.
Ada compilers
| Compiler | Author | Windows | Unix-like | Other OSs | License type |
|---|---|---|---|---|---|
| GCC (GNAT) | GNU Project | Yes | Yes | Yes | GPLv3+ |
| Tandem Ada[1] | Tandem Computers | No | Yes | Guardian, NonStop Kernel | Proprietary |
ALGOL 60 compilers
ALGOL 68 compilers
cf. ALGOL 68s specification and implementation timeline
| Name | Year | Purpose | State | Description | Target CPU | Licensing | Implementation Language |
|---|---|---|---|---|---|---|---|
| ALGOL 68-RR | 1970 | Military | UK | ICL 1900 | ALGOL 60 | ||
| ALGOL 68RSRS | 1972 | Military | UK | Portable compiler system | ICL 2900/Series 39, Multics, VMS & C generator (1993) | Crown Copyright | ALGOL 68RS |
| ALGOL 68CC | 1975 | Scientific | UK | Cambridge ALGOL 68 | ICL, IBM 360, PDP 10 & Unix, Telefunken, Tesla & Z80(1980)[2] | Cambridge | ALGOL 68C |
| Odra ALGOL 68[citation needed] | 1976 | practical uses | USSR/Poland | Odra 1204/IL | Soviet | ALGOL 60 | |
| FLACCF | 1977 | Multi-purpose | CA | Revised Report complete implementation with debug features | System/370 | lease, Chion Corporation | Assembler |
| Interactive ALGOL 68I | 1983 | UK | Incremental compilation | PC | Noncommercial shareware | ||
| ALGOL 68SS | 1985 | Scientific | Intl | Sun version of ALGOL 68 | Sun-3, Sun SPARC (under SunOS 4.1 & Solaris 2), Atari ST (under GEMDOS), Acorn Archimedes (under RISC OS), VAX-11 under Ultrix-32 | ||
| Algol68toC[3][better source needed] (ctrans) | 1985 | Electronics | UK | ctrans from ELLA ALGOL 68RS | Portable C generator | Open sourced & Public Domained (1995) | ALGOL 68RS |
| GCC (ga68) | 2025 | Full Language | ES | GCC Front-End | Portable compiler | GPL | C |
ALGOL 68 interpreters
Assemblers (Intel *86)
| Assembler | Author | Windows | Unix-like | Other OSs | License type |
|---|---|---|---|---|---|
| A86 assembler | Eric Isaacson | Yes | No | No | Proprietary |
| FASM | Tomasz Grysztar | Yes | Yes | Yes | BSD |
| GNU Assembler | The GNU Project | Yes | Yes | Yes | GPLv3 |
| High Level Assembly (HLA) | Randall Hyde | Yes | Yes | Yes | Public domain |
| JWasm Assembler[5] | Japheth and others | Yes | Yes | Yes | Sybase Open Watcom Public License |
| Microsoft Macro Assembler | Microsoft | Yes | No | No | Proprietary |
| Netwide Assembler | Simon Tatham and Julian Hall | Yes | Yes | Yes | BSD |
| Turbo Assembler | Borland | Yes | No | No | Proprietary |
Assemblers (Motorola 68*)
| Assembler | Author | Windows | Unix-like | Other OSs | License type |
|---|---|---|---|---|---|
| GNU Assembler | The GNU Project | Yes | Yes | Yes | GPLv3 |
Assemblers (Zilog Z80)
| Assembler | Author | Windows | Unix-like | Other OSs | License type |
|---|---|---|---|---|---|
| Microsoft MACRO-80 | Microsoft | No | No | Yes | Proprietary |
| Zeus Assembler | Neil Mottershead, Simon Brattel | No | No | Yes | Proprietary |
| Prometheus | Proxima software | No | No | No | Proprietary |
Assemblers (other)
| Assembler | Author | Windows | Unix-like | Other OSs | License type |
|---|---|---|---|---|---|
| TMS 9900 assembler | Texas Instruments | Yes | Yes | Yes | Proprietary |
| GNU Assembler | The GNU Project | Yes | Yes | Yes | GPLv3 |
BASIC compilers
| Compiler | Author | Working state | Windows | Unix-like | Other OSs | License type | Standard conformance | |
|---|---|---|---|---|---|---|---|---|
| Minimal BASIC | Full BASIC | |||||||
| AppGameKit | The Game Creators | Current | Yes | Yes | No | Proprietary | ? | ? |
| BBC BASIC for SDL 2.0 | Richard T. Russell | Current | Yes | Yes (Linux, macOS, Android) | Yes (Raspberry Pi OS) | zlib License | No | No |
| BlitzMax | Blitz Research | Discontinued | Yes | Yes (Linux, macOS) | No | zlib License | No | No |
| DarkBASIC | The Game Creators | Inactive | Yes | No | No | MIT License | No | No |
| ECMA-55 Minimal BASIC compiler[6] | John Gatewood Ham | Current | No | Linux | No | GPLv2 | Yes | No |
| FreeBASIC | FreeBASIC Development Team | Current | Yes | Yes | MS-DOS, FreeBSD, Linux | GPLv2+ | Partial[7][unreliable source?] | No |
| FutureBASIC | Brilor Software | Current | No | macOS | Classic Mac OS | Proprietary | Partial | No |
| Gambas | Benoît Minisini | Current | No | Yes | No | GPLv2+ | No | No |
| GFA BASIC | Frank Ostrowski | Abandoned | Yes | No | Amiga, Atari ST, MS-DOS | Proprietary | No | No |
| Mercury | RemObjects | Current | Yes | Yes (Linux, macOS, Android, iOS) | Yes (WebAssembly) | Proprietary | No | No |
| PowerBASIC (formerly Turbo Basic) | PowerBASIC, Inc. | Inactive | Yes | No | DOS | Proprietary | ? | ? |
| PureBasic | Fantaisie Software | Current | Yes | Yes | Yes | Proprietary | No | No |
| QB64 | Galleon | Current | Yes | Yes | Yes | LGPLv2.1 | Partial | No |
| QuickBASIC | Microsoft | Discontinued | No | No | MS-DOS | Proprietary | Partial | No |
| True BASIC | True BASIC | Current | Yes | No | No | Proprietary | Yes | Partial[8] |
| VSI BASIC for OpenVMS | VMS Software, Inc. | Current | No | No | OpenVMS | Proprietary | No | No |
| Xojo (formerly REALbasic) | Xojo Inc. (formerly Real Software) | Current | Yes | Yes | Yes | Proprietary | No | No |
BASIC interpreters
C compilers
| Compiler | Author | Operating system[i] | Bare machine | License type | Standard conformance | |||||
|---|---|---|---|---|---|---|---|---|---|---|
| Microsoft Windows | Unix-like | Other OSs | C89 | C99 | C11 | C17 | ||||
| 8cc[9] | Rui Ueyama | Yes | Yes | ? | ? | MIT | Yes | Yes | Yes | No |
| Acorn C/C++ | Acorn and Codemist | No | No | RISC OS | ? | Proprietary | Yes | Yes | No | Yes |
| AMD Optimizing C/C++ Compiler (AOCC) | AMD | No | Yes | No | ? | Proprietary | Yes | Yes | Yes | Yes |
| Aztec C | Manx Software Systems | No | No | CP/M, CP/M-86, DOS, Classic Mac OS | ? | Proprietary | ? | ? | ? | ? |
| Amsterdam Compiler Kit | Andrew Tanenbaum and Ceriel Jacobs | No | Yes | Yes | ? | BSD | ? | ? | ? | ? |
| BDS C | BD Software | No | No | CP/M | ? | Public domain | ? | ? | ? | ? |
| bcc (Bruce's C Compiler)[10] | Bruce Evans | No | Yes | No | ? | GNU License | ? | ? | ? | ? |
| C++Builder | Embarcadero | Yes | Yes (iOS, Android) | No | ? | Proprietary | Yes | Yes | Partial | ? |
| cc65 | No | Yes | No | ? | Zlib License | No | No | No | No | |
| Ch | SoftIntegration, Inc | Yes | macOS, FreeBSD, Linux, Solaris, HP-UX, AIX, QNX | Yes | ? | Freeware | Yes | Yes | No | ? |
| Clang | LLVM Project | Yes | Yes | Yes | Yes | Apache (LLVM Exception) | Yes | Yes | Yes | Yes |
| CompCert | INRIA | Yes | Yes | No | ? | Freeware (source code available for non-commercial use) or GPL | Yes | Partial | No | ? |
| cproc[11][12] | Michael Forney | Yes | Yes | No | ? | ISC | Yes | Yes | Yes | Yes |
| Digital Mars | Digital Mars | Yes | No | No | ? | Proprietary | ? | ? | ? | ? |
| Digital Research C[13][better source needed] | Digital Research | ? | ? | CP/M, DOS | ? | Proprietary | ? | ? | ? | ? |
| Edison Design Group | Edison Design Group | Yes | Yes | Yes | ? | Proprietary | Yes | Yes | Yes | Yes |
| GCC (gcc) | GNU Project | MinGW, Cygwin, WSL | Yes | IBM mainframe, AmigaOS, VMS, RTEMS, DOS[14] | Yes | GPL | Yes | Partial[ii] | Partial[ii] | Partial[ii] |
| Intel oneAPI DPC++/C++ Compiler (icx) | Intel | Yes | Linux | No | ? | Freeware (optional priority support) | Yes | Yes | Yes[15] | Yes |
| Intel C++ Compiler Classic (icc) | Intel | Yes | Linux, macOS | No | ? | Freeware (optional priority support) | Yes | Partial[16] | Partial[16] | ? |
| Interactive C | KISS Institute for Practical Robotics | Yes | Unix, macOS, Linux, IRIX, Solaris, SunOS | No | ? | Freeware | Partial | No | No | ? |
| Lattice C | Lifeboat Associates | No | Yes | DOS, OS/2, Commodore, Amiga, Atari ST, Sinclair QL | ? | Proprietary | ? | ? | ? | ? |
| lcc | Chris Fraser and David Hanson | Yes | Yes | Yes | ? | Freeware (source code available for non-commercial use) | Yes | No | No | ? |
| MCP | Unisys | No | No | MCP | ? | Proprietary | ? | ? | ? | ? |
| MPW C | Apple | No | No | Classic Mac OS | ? | Proprietary | ? | ? | ? | ? |
| Open64 | AMD, SGI, Google, HP, Intel, Nvidia, PathScale, Tsinghua University and others | No | Yes | Yes | ? | GPL | ? | ? | ? | ? |
| PGCC | The Portland Group | Yes | Yes | Unknown | ? | Proprietary | ? | ? | ? | ? |
| Portable C Compiler | Stephen C. Johnson, Anders Magnusson and others | Yes | Yes | Yes | ? | BSD | Yes | Partial | No | ? |
| QuickC | Microsoft | Yes | No | No | ? | Proprietary | ? | ? | ? | ? |
| Alan Snyder's Portable C Compiler | Alan Snyder and current Maintainer larsbrinkhoff|Snyder-C-compiler | No | Yes | No | ? | MIT License | ? | ? | ? | ? |
| SEGGER Compiler[17] | Segger Microcontroller | Yes | Yes | Yes | ? | Proprietary | Yes | Yes | Partial | Partial |
| Small-C | Ron Caine, James E. Hendrix, Byte magazine | Yes | Yes | CP/M, DOS | ? | Public domain | Partial | No | No | ? |
| Small Device C Compiler | Sandeep Dutta and others | Yes | Yes | Unknown | Yes | GPL | ? | ? | ? | ? |
| THINK C, Lightspeed C | THINK Technologies | No | No | Classic Mac OS | ? | Proprietary | ? | ? | ? | ? |
| Tiny C Compiler | Fabrice Bellard | Yes | Yes | No | ? | LGPL | Yes | Partial | Partial | ? |
| (Borland) Turbo C | Embarcadero | Yes | No | Yes | ? | Proprietary - V 2.01 freely available | ? | ? | ? | ? |
| VBCC | Volker Barthelmann | Yes | Yes | Yes | ? | Freeware (source code available, modification not allowed) | Yes | Partial | No | ? |
| Microsoft Visual C++ | Microsoft | Yes | No | No | ? | Proprietary (Freeware) | Yes | Partial[18] | Yes[18] | Yes[18] |
| Oracle C compiler | Oracle | No | Solaris, Linux | No | ? | Proprietary (Freeware) | Yes | Yes | Yes | No |
| Watcom C/C++, Open Watcom C/C++ | Watcom | Yes | experimental | DOS, OS/2 | ? | Sybase Open Watcom Public License | Yes | Partial | No | ? |
| Wind River (Diab) Compiler | Wind River Systems | Yes | Yes | Yes | ? | Proprietary | ? | ? | ? | ? |
| Whitesmiths C compiler | Whitesmiths Ltd | No | Yes | No | ? | proprietary (source code available for non-commercial use) | No | ? | No | ? |
| XL C, XL C/C++ | IBM | No | AIX, Linux | z/OS, z/VM | ? | Proprietary | Yes[19][20][21] | Yes[19][20][21] | Yes[19][20][21] | Yes[19][20][21] |
| Zig cc | Zig Software Foundation | Yes | Yes | Yes | ? | MIT License | ? | ? | ? | ? |
Notes:
- List of host operating systems and/or ⟨cross-compilation targets⟩.
- Complete except for floating point.
C++ compilers
Notes:
C# compilers
| Compiler | Author | Type | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|---|
| Visual C# | Microsoft | JIT | Yes | iOS | No | Proprietary | Yes |
| Visual C# Express | Microsoft | JIT | Yes | No | No | Freeware | Yes |
| Mono | Xamarin | JIT | Yes | Yes | Yes | GPLv2 | Yes |
| Portable.NET | DotGNU | AOT | Yes | Yes | No | GPL | No |
| SharpDevelop | IC#Code Team. | JIT | Yes | No | No | LGPL | Yes |
| Roslyn | .NET Foundation | JIT/AOT | Yes | Partial | No | Apache 2.0[51] | No |
| RemObjects C# | RemObjects | AOT | Yes | Yes (Linux, macOS, Android, iOS) | Yes (WebAssembly) | Proprietary | Yes |
| IL2CPP | Unity Technologies | AOT | Yes | Yes | Yes | Proprietary | No |
| IL2CPU | COSMOS | AOT | Yes | Yes | Yes | BSD licenses[52] | No |
| Bartok | Microsoft Research | AOT | Yes | No | No | Proprietary | No |
| RyuJIT | .NET Foundation. | JIT | Yes | Yes | Yes | MIT License[53] | Yes |
| CoreRT | .NET Foundation. | AOT/JIT | Yes | Yes | Yes | MIT License[53] | Yes |
COBOL compilers
| Compiler | Author | Operating system | License type | IDE? | Standard conformance | |||
|---|---|---|---|---|---|---|---|---|
| Windows | Unix-like | Other | COBOL-85 | COBOL 2002 | ||||
| IBM COBOL | IBM | Yes | AIX, Linux | z/OS, z/VM, z/VSE, IBM i | Proprietary | IBM Developer for z/OS | Yes | Partial |
| GnuCOBOL (formerly OpenCOBOL) | Keisuke Nishida, Roger While, Simon Sobisch | Yes | Yes | Yes | GPL | OpenCobolIDE, GIX, HackEdit | Yes | Partial |
| GCC (gcobol)[54] | COBOLworx (Symas) | Yes | Yes | Yes | GPL | No | Yes[55] | Planned[55] |
| Otterkit[56][57] | Gabriel Gonçalves | Yes | Yes | Yes (Common Language Infrastructure) | Apache 2.0 | Yes | Partial | Release candidate |
| MCP COBOL | Unisys | No | No | MCP | Proprietary | CANDE | Yes[58] | No |
| OS 2200 COBOL | Unisys | No | No | OS 2200 | Proprietary | ? | Yes[59] | No |
| Tandem COBOL[60][61] | Tandem Computers | No | No | Guardian, NonStop Kernel, NonStop OS | Proprietary | Eclipse, Micro Focus COBOL Workbench[62] | ? | ? |
Common Lisp compilers
| Compiler | Author | Target | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|---|
| Allegro Common Lisp | Franz, Inc. | Native code | Yes | Yes | Yes | Proprietary | Yes |
| Armed Bear Common Lisp | Peter Graves | JVM | Yes | Yes | Yes | GPL | Yes |
| CLISP | GNU Project | Bytecode | Yes | Yes | Yes | GPL | No |
| Clozure CL | Clozure Associates | Native code | Yes | Yes | No | LGPL | Yes |
| CMU Common Lisp | Carnegie Mellon University | Native code, Bytecode | No | Yes | No | Public domain | Yes |
| Corman Common Lisp | Corman Technologies | Native code | Yes | No | No | MIT license | Yes |
| Embeddable Common Lisp | Juanjo Garcia-Ripoll | Bytecode, C | Yes | Yes | Yes | LGPL | Yes |
| GNU Common Lisp | GNU Project | C | Yes | Yes | No | GPL | No |
| LispWorks | LispWorks Ltd | Native code | Yes | Yes | No | Proprietary | Yes |
| mocl | Wukix | Native code | No | Yes | Yes | Proprietary | No |
| Open Genera | Symbolics | Ivory emulator, own OS | No | No | Yes | Proprietary | Yes |
| Steel Bank Common Lisp | sbcl.org | Native code | Yes | Yes | Yes | Public domain | Yes |
D compilers
| Compiler | Author | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|
| D (DMD) | Digital Mars and others | Yes | 32-bit Linux, macOS, FreeBSD | No | Boost | No |
| D for .NET | ? | Yes | Yes | ? | ? | ? |
| GCC (GDC) | GNU Project | Yes | Yes | No | GPL | No |
| LDC | LLVM | Yes | Yes | No | multiple Open Source license depending on module | No |
DIBOL/DBL compilers
| Compiler | Author | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|
| Synergy DBL[63][64][65] | Synergex | Yes | Yes | Yes | Proprietary | Yes |
ECMAScript interpreters
Eiffel compilers
| Compiler | Author | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|
| EiffelStudio | Eiffel Software / Community developed (SourceForge) | Yes | Yes | Yes | GPL | Yes |
| LibertyEiffel (fork of SmartEiffel) | D. Colnet and community | ? | Yes | ? | GPLv2 | ? |
| SmartEiffel | D. Colnet | ? | Yes | ? | GPLv2 | ? |
Forth compilers and interpreters
| Compiler | Author | Windows | Unix-like | Other OSs | License type |
|---|---|---|---|---|---|
| SwiftForth[66] | Forth Inc. | Yes | Yes | No | Proprietary |
| Retro Forth[67] | Charles Childers | Yes | Yes | ? | ISC license |
| pForth | Phil Burk | Yes | Yes | Yes | public domain |
| Open Firmware | ? | ? | ? | ? | BSD license |
| Gforth | Bernd Paysan and Anton Ertl | Yes | Yes | No | GPL3 |
| colorForth | Charles H. Moore | ? | ? | ? | public domain |
| ciforth[68][69][70] | Albert van der Horst | Yes | Yes | No | GPL |
| Atlast[71] | John Walker | ? | Yes | No | public domain |
| ByteForth[72] | ? | ? | ? | ? | ? |
| noForth[73] | ? | ? | ? | RISC-V baremetal | ? |
Fortran compilers
| Compiler | Author | Working state | Operating system | License type | IDE? | ||
|---|---|---|---|---|---|---|---|
| Windows | Unix-like | Other | |||||
| Acorn Fortran 77 | Acorn and Codemist | Current | No | No | RISC OS | Proprietary | No |
| AMD Optimizing C/C++ Compiler (AOCC) | AMD | Current | No | Yes | No | Freeware | No |
| Oracle Fortran | Oracle | Discontinued | No | Linux, Solaris | No | Freeware | Oracle Developer Studio |
| Absoft Pro Fortran | Absoft | Discontinued | Yes | Linux, macOS | Yes | Proprietary | Yes |
| G95 | Andy Vaught | Inactive | Yes | Yes | Yes | GPL | No |
| GCC (GNU Fortran) | GNU Project | Current | Yes | Yes | Yes | GPLv3 | Photran (part of Eclipse), Simply Fortran, Lahey Fortran |
| Intel Fortran Compiler Classic (ifort) | Intel | Current | Yes | Linux and macOS | No | Freeware, optional priority support | Yes (plugins), Visual Studio on Windows, Eclipse on Linux, XCode on Mac |
| Open64 | Google, HP, Intel, Nvidia, PathScale, Tsinghua University and others | Finished | No | Yes | Yes | GPL | No |
| Classic Flang | LLVM Project | Current | Yes | Yes | Yes | NCSA | Yes |
| LLVM Flang | LLVM Project | Current | Yes | Yes | Yes | NCSA | Yes |
| LFortran | The LFortran team | Current | Yes | Yes | Yes | BSD | Yes |
| FTN95 | Silverfrost | Current | Yes | No | No | Proprietary | Yes |
| NAG Fortran Compiler | Numerical Algorithms Group | Current | Yes | Linux and macOS | No | Proprietary | Yes |
| Tandem Fortran[61] | Tandem Computers | Discontinued | No | ? | Guardian, NonStop Kernel, NonStop OS | Proprietary | No |
| XL Fortran | IBM | Current | No | Linux (Power and AIX | No | Proprietary | Eclipse |
| MCP | Unisys | Discontinued | No | No | MCP | Proprietary | CANDE |
| Open Watcom | Sybase and Open Watcom Contributors | Current | Yes | Yes | DOS, OS/2 | Sybase Open Watcom Public License | on Windows, OS/2 |
| Cray | Cray | Current | Yes | Yes | Yes | Proprietary | Yes |
Go compilers
Haskell compilers
ISLISP compilers and interpreters
| Name | Author | Working state | Target | Written in | Operating system | License type | Standard conformance | ||
|---|---|---|---|---|---|---|---|---|---|
| Windows | Unix-like | Other | |||||||
| Easy-ISLisp[75] | Kenichi Sasagawa | Current | C, bytecode | C, Lisp | No | Linux, macOS, OpenBSD | No | BSD 2-Clause | Yes |
| OpenLisp | Eligis | Current | C, bytecode | C, Lisp | Yes | macOS, Linux, BSD, AIX, Solaris, QNX | ? | Proprietary | Yes |
Java compilers
| Compiler | Author | Working state | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|---|
| Edison Design Group | Edison Design Group | Discontinued | Yes | Yes | Yes | Proprietary | No |
| GCC (gcj) | GNU Project | Inactive | No | Yes | No | GPL | No |
| javac | Sun Microsystems (Owned by Oracle) | Current | Yes | Yes | Yes | BCL | Yes |
| javac OpenJDK | Sun Microsystems (Owned by Oracle) | Current | Yes | Yes | Yes | GPLv2 | Yes |
| Jikes | IBM | Inactive | ? | Yes | ? | IPL | ? |
Pascal compilers
| Compiler | Author | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|
| Amsterdam Compiler Kit | Andrew Tanenbaum Ceriel Jacobs | No | Yes | Yes | BSD | No |
| Delphi | Embarcadero (CodeGear) | Yes | Yes (Linux, Mac OS) | Yes (iOS, Android) | Proprietary | Yes |
| Oxygene (formerly Delphi Prism) | RemObjects | Yes | Yes (Linux, macOS, Android, IOS) | Yes (WebAssembly) | Proprietary | Yes |
| Free Pascal | Florian Paul Klämpfl | Yes | Yes | Yes (OS/2, FreeBSD, Solaris, Haiku, Android, DOS, etc.[note 1]) | GPL | FPIDE, Lazarus, Geany (on Ubuntu) |
| GCC (GNU Pascal) | GNU Project | Yes | Yes | Yes | GPL | No |
| Kylix | Borland (CodeGear) | No | Yes (Linux) | No | Proprietary | Yes |
| Turbo Pascal for Windows | Borland (CodeGear) | Yes (3.x) | No | No | Proprietary | Yes |
| Microsoft Pascal | Microsoft | No | No | Yes (DOS) | Proprietary | Yes |
| Tandem Pascal[61] | Tandem Computers | No | ? | Guardian, NonStop Kernel | Proprietary | ? |
| VSI Pascal | VMS Software Inc | No | No | Yes (OpenVMS) | Proprietary | Yes |
| Turbo Pascal | CodeGear (Borland) | No | No | Yes | Freeware | Yes |
| Vector Pascal | Glasgow University | Yes | Yes | No | OpenSource | No |
| Virtual Pascal | Vitaly Miryanov | Yes | Yes | Yes (OS/2) | Freeware | Yes |
| MCP | Unisys | No | No | MCP | Proprietary | CANDE |
PHP compilers
| Compiler | Author | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|
| Phalanger | Devsense | Yes | No | Partial | Apache 2.0 | Yes |
| PeachPie | iolevel | Yes | Yes | Yes | Apache 2.0 | Yes |
PL/I compilers
Python compilers and interpreters
| Compiler | Author | Target | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|---|
| Cython | C | Yes | Yes | Yes | PSFL | No | |
| IronPython | CLI | Yes | Yes | Yes (CLI) | Apache 2.0 | No | |
| Jython | JVM | Yes | Yes | Yes (JVM) | PSFL | No | |
| Nuitka | Kay Hayen | C, C++ | Yes | Yes | Yes | Apache 2.0 | No |
| Numba | Anaconda | LLVM (JIT) | Yes | Yes | Yes | BSD 2-Clause | No |
| Psyco | Armin Rigo Christian Tismer | x86-32 (JIT) | Yes | Yes | Yes | MIT | No |
| PyPy | Own VM (JIT) | Yes | Yes | Yes | MIT | No | |
| Shed Skin | C++ | Yes | Yes | Yes | GPLv3 and BSD | No | |
Ruby compilers and interpreters
Rust compilers
| Compiler | Author | Windows | Unix-like | Other OSs | Bare machine | License type |
|---|---|---|---|---|---|---|
| rustc | Rust Foundation | Yes | Yes | Yes | Yes | Apache License |
| GCC Rust[78] | GNU Project | MinGW, Cygwin, WSL | Yes | No | Yes | GPL |
.mw-parser-output .vanchor>:target~.vanchor-text{background-color:#ebf4ff}@media screen{html.skin-theme-clientpref-night .mw-parser-output .vanchor>:target~.vanchor-text{background-color:#0f4dc9}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .vanchor>:target~.vanchor-text{background-color:#0f4dc9}}Scheme compilers and interpreters
| Compiler | Author | Target | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|---|
| Bigloo | Manuel Serrano | native, bytecode | Yes | Yes | ? | GPL (compiler) and LGPL (runtime) | No |
| Chez Scheme | R. Kent Dybvig | native | Yes | Yes | No | Apache 2.0 | No |
| Chicken | The Chicken Team | C | Yes | Yes | ? | BSD | No |
| Gambit | Marc Feeley | C | Yes | Yes | ? | LGPL | No |
| GNU Guile | GNU Project | bytecode | Yes | Yes | ? | LGPL | No |
| Ikarus | Abdulaziz Ghuloum | native | Yes | Yes | ? | GPL | No |
| IronScheme | Llewellyn Pritchard | CLI | Yes | Yes | Yes (Common Language Infrastructure) | Ms-PL | No |
| JScheme | Ken Anderson, Tim Hickey, Peter Norvig | bytecode | Yes | Yes | Yes (JVM) | zlib License | No |
| Kawa | Per Bothner | bytecode | Yes | Yes | Yes (JVM) | MIT | No |
| MIT/GNU Scheme | GNU Project | native | Yes | Yes | ? | GPL | No |
| Racket | PLT Inc. | bytecode + JIT | Yes | Yes | macOS, Microsoft Windows | LGPL | DrRacket |
| Scheme 48 | Richard Kelsey, Jonathan Rees | C, bytecode | Yes | Yes | ? | BSD | No |
| SCM | Aubrey Jaffer | C | Yes | Yes | AmigaOS, Atari ST, Classic Mac OS, DOS, OS/2, NOS/VE, OpenVMS | LGPL | No |
| SISC | Scott G. Miller, Matthias Radestock | bytecode | Yes | Yes | Yes (JVM) | GPL and MPL | No |
| Stalin | Jeffrey Mark Siskind | C | ? | Yes | ? | LGPL | No |
| STklos | Erick Gallesio | bytecode | ? | Yes | ? | GPL | No |
| Interpreter | Author | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|
| Gauche | Shiro Kawai | Yes | Yes | ? | BSD | No |
| Petite Chez Scheme | R. Kent Dybvig | Yes | Yes | No | Apache 2.0 | No |
| TinyScheme | ? | ? | ? | Yes | BSD | No |
Smalltalk compilers
| Compiler | Author | Target | Windows | Unix-like | Other OSs | License type | IDE? |
|---|---|---|---|---|---|---|---|
| Pharo | Pharo Team | VM | Yes | Yes | Yes | MIT License | Yes |
| GNU Smalltalk | GNU Smalltalk project | bytecode + JIT | Yes | Yes | No | GPL | No |
| VisualWorks | Cincom Systems | ? | Yes | Yes | Yes | Proprietary | Yes |
| Smalltalk MT | ObjectConnect | native | Yes | No | No | Proprietary | Yes |
Tcl interpreters
| Interpreter | Author | Windows | Unix-like | Other OSs | License type |
|---|---|---|---|---|---|
| ActiveTcl | ActiveState | Yes | Yes | Yes | Noncommercial or proprietary |
| Tclsh | MKS and many others | Yes | Yes | Yes | Proprietary and/or free |
| Wish | Yes | Yes | Yes |
Command language interpreters
| Interpreter | Author | Windows | Unix-like | Other OSs | License type |
|---|---|---|---|---|---|
| DCL (Digital Control Language) | Digital | No | No | OpenVMS, RSX-11M, RSTS/E | Proprietary |
| TACL (Tandem Advanced Command Language) | Tandem Computers | No | No | Guardian, NonStop Kernel, NonStop OS | Proprietary |
Rexx interpreters
| Interpreter | Author | Windows | Unix-like | Other OSs | License type |
|---|---|---|---|---|---|
| Amiga ARexx | Commodore | No | No | Yes | Proprietary |
| ObjectRexx | IBM | Yes | ? | Yes | Proprietary |
| Open Object Rexx | OO Organisation | Yes | Yes | No | CPL |
CLI compilers
| Compiler | Author | Working state | Operating system | License type | IDE? | ||
|---|---|---|---|---|---|---|---|
| Windows | Unix-like | Other OSs | |||||
| Visual Studio | Microsoft | Current | Yes | No | No | Proprietary | Yes |
| Mono | Mono | Current | Yes | Yes | No | MIT | Yes |
| Delphi Prism | RemObjects | Current | Yes | Yes | Yes | Proprietary | Yes |
| Portable.NET | DotGNU | Inactive | Yes | Yes | No | GPL | Unknown |
Source-to-source compilers
This list is incomplete. A more extensive list of source-to-source compilers can be found here.
| Compiler | Author | Target Input | Target Output | Auto-Parallelizer | Windows | Unix-like | Other OSs | License type | Framework? |
|---|---|---|---|---|---|---|---|---|---|
| DMS Software Reengineering Toolkit | Semantic Designs | C/C++, COBOL, PL/I, many others | Arbitrary languages | No | Yes | Yes | Yes | Proprietary | Yes |
| ROSE | Lawrence Livermore National Laboratory | C, Fortran, and more | C/C++, Fortran, and more | Yes | No | Yes | Yes | BSD | Yes |
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 (ga68), Pascal (gpc), Mercury, Modula-3, VHDL and PL/I;[79] Linux, the BSDs, macOS, NeXTSTEP, Windows and BeOS, among others - Local C compiler [C] [Linux, Windows]
- 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[80]). Additionally, Edison Design Group makes their proprietary software available for research uses.[81]
See also
Footnotes
- Further details on supported hosts and targets may be found on the lists of official installers and supported targets.