vision alive 1993

Turbo Pascal (conceptual/dialect) Free Pascal

A free, open-source Pascal compiler started in 1993 when Borland abandoned DOS Pascal development. Originally called FPK-Pascal, it grew into a mature cross-platform compiler supporting Turbo Pascal and Delphi dialects across dozens of platforms.

What it is

Supports multiple Pascal dialects (Turbo Pascal, Delphi up to ~Delphi 7+, Objective Pascal, Apple Pascal) selectable per compilation unit. Targets 20+ CPU architectures including x86, x86-64, ARM, AArch64, MIPS, PowerPC, SPARC, RISC-V, and JVM. Features an internal linker for Windows targets, smart-linking/dead code elimination, and multiple optimization levels.

The story

Free Pascal emerged in June 1993 when German student Florian Paul Klaempfl began developing his own Pascal compiler after Borland made clear that Borland Pascal 8 would not exist — the next product would be Delphi, a Windows-only RAD environment. Klaempfl wanted a free, 32-bit Pascal compiler compatible with the Turbo Pascal dialect for DOS. The project was initially called FPK-Pascal (from Klaempfl's initials) and was renamed Free Pascal Compiler (FPC) in late 1997.

The initial compiler was itself a 16-bit executable compiled by Turbo Pascal, targeting the GO32v1 DOS extender. After two years, the compiler achieved the critical milestone of self-compilation — building itself as a 32-bit executable. When published on the Internet, contributors joined: Michael van Canneyt created a Linux port (five years before Borland's own Kylix Pascal compiler for Linux), and Daniel Mantione contributed the OS/2 port.

Version 1.0, released in July 2000, was widely adopted in business and education. The 1.1.x branch (from December 1999) brought major rewrites of the code generator and register allocator, and importantly added full Delphi compatibility mode — allowing FPC to compile most Delphi code. From version 2.0 onward, Delphi compatibility has been continuously improved, with FPC sometimes implementing language features (like generics in 2.2.0) years before Delphi itself.

Free Pascal is not technically a 'fork' of Turbo Pascal's source code — it is a clean-room compatible reimplementation. However, it represents the most significant community response to a proprietary language platform being discontinued, and its Delphi compatibility mode has made it the de facto open-source alternative to Embarcadero's commercial products. It compiles for over 20 processor architectures and dozens of operating systems.

Timeline

Florian Klaempfl begins developing FPK-Pascal

Compiler achieves self-compilation as 32-bit executable

First public release on the Internet

Renamed from FPK-Pascal to Free Pascal Compiler (FPC)

Version 1.0 released, widely adopted in business and education

Version 2.0 released with comprehensive Delphi compatibility mode

Version 2.2.0 adds generics support (before Delphi)

Version 3.0.0 adds JVM bytecode generation, ARM Android target

Key people

Florian Paul Klaempfl
Creator and lead developer
Michael van Canneyt
Created Linux port
Daniel Mantione
OS/2 port and runtime library

Impact

Became the primary open-source Pascal compiler, keeping the Pascal language alive and accessible after Borland's shift to commercial-only products. Enabled the Lazarus IDE project. Supports more platforms than any commercial Pascal compiler. Used by notable projects including Cheat Engine, PeaZip, and Beyond Compare (Linux/Mac versions).

Lesson: Clean-room reimplementations can serve as effective 'spiritual forks' when source code is unavailable. Dialect compatibility (being able to compile existing code) is critical for adoption. Community-driven compilers can match or exceed commercial ones in platform support, even if they lag in some language features.

Related forks