Native compilers for Windows

It is remarkable to me that so few  native compilers are still available on the market today. I am well aware of the benefits of .Net and Java byte-code compilers. However, there are a number of products that are better suited to native code.   Regardless of the reasons, it is troubling to note how few commercial/high quality competitors are left.

There's a certain irony, considering the Intel/AMD chips have won the instruction set wars.  Making software go fast on an Intel chip would seem to be a valuable service.  Of course, you'd have to compete with open source software.

Worse yet, some of these compilers are basically out to pasture, obsolete, no longer maintained, old, crusty, and ultimately a dubious idea to base any professional work on. But they might still be a ton of fun to explore.

Here are a few products that still generate native code. I do not include compilers that run byte codes or tokenized source. I include compilers that generate assembly or "C" source that can the n be assembled/compiled to binaries.

Inclusion in this list is not an endorsement and neither is exclusion a judgment - I am merely collecting these lists as a service to myself and others.  The main criteria for inclusion is the generation of native code at compile time, not JIT and not interpreted.

By the way, it seems that 64-bit compilers are even rarer than Win32 compilers.

Many of these are no longer actively maintained which is too bad.

Ada Compilers

none known. See J language below for alternative.


Oh yeah, there's an Awk Compiler: 


NASM -the netwide assembler.

BASIC Compilers

It's rather amazing how many BASIC compilers generate native code. 
C/C++ Compilers
NOTE: if you are doing Windows development using free tools, you probably need to get the Windows-specific headers and libraries. You can get these at:

CAML Compiler
COBOL Compilers
D Compilers
Factor Compiler

Factor has an optimizing compiler! This is a neat functional programming language very similar to Forth but far more powerful.
FORTRAN Compilers
Naturally, Fortran has many native compilers.

Google GO

Jovial Compilers



The kotlin native compiler can generate x86_64 binaries for Windows.

Lisp Compilers (Common Lisp and Scheme)

It seems many of the lisp compilers either generate byte-code or don't target Windows as a platform.  I will say that most of these compiles are rather expensive for my tastes.  However, given the productivity of Common Lisp, there may be good reason to adopt them.
Modula-2/3 Compilers
ML Compiler
Oberon 2 Compilers
OCCAM Compilers
  • none known

OCAML Compilers
  • OCaml for Windows (uses Cygwin to run but generates Win32 exes that don't require cygwin)

Pascal Compilers
PL/1 Compilers

As far as I can see, there are no PL/1 compilers left.

Prolog Compilers
Oddly enough, there are a ton of compilers for prolog, which is funny since this was originally an interpreted language.
The mozilla Rust language can compile native binaries. 

Seed7 Compilers

The Seed7 language is both interpreted and compiled. (see The compiler is at and generates C code (like old C++ compilers used to do...)

What happened to Lund Simula?


Smalltalk is an odd beast because it does not produce standalone binaries.  It's all about the "image" file.  So I'm uncertain how you would use it on the Desktop.  On Server side, you can certainly use it.  Now the only question is whether it is a true native code compiler.

none known.
Catspaw used to provide a Spitbol-386 compiler.

Harbour Project -


Popular Posts