Chapter 39 Key Takeaways

Free Pascal

  1. Free Pascal is self-hosting — written in Pascal, it compiles itself. This is a demonstration of the language's power.

  2. Free Pascal supports more platforms than any other free compiler: x86, x86-64, ARM, AArch64, MIPS, PowerPC, SPARC, RISC-V, WebAssembly, JVM, AVR — across Windows, Linux, macOS, FreeBSD, Android, iOS, embedded, and more.

  3. The GPL with linking exception means your compiled programs can use any license. Free Pascal is free for all purposes.

  4. Modern features include generics, anonymous functions, operator overloading, advanced records, and management operators. Free Pascal is not stuck in 1970.

Lazarus

  1. Lazarus is more than a form designer. It includes code completion, an integrated debugger, refactoring tools, code templates, and a built-in terminal.

  2. The Online Package Manager (OPM) provides one-click installation of 300+ community packages for graphics, games, networking, databases, reporting, and more.

  3. The LCL (Lazarus Component Library) wraps native widgets on each platform, producing applications that look and feel native on Windows, Linux, and macOS.

Delphi

  1. Delphi is the commercial Pascal. It provides VCL (Windows-native) and FireMonkey (cross-platform including mobile) frameworks, plus superior database connectivity (FireDAC) and a rich third-party component ecosystem.

  2. Delphi's Community Edition is free for individuals and small businesses under $5,000 revenue, making it accessible for learning and small projects.

  3. **Use {$mode objfpc}` for new Free Pascal projects** and `{$mode delphi} only for porting Delphi code.

Libraries

  1. Essential libraries exist for every common task: Synapse/Indy (networking), Brook/mORMot (web), SQLDB/ZeosLib (databases), BGRABitmap (graphics), Castle Game Engine (games), DCPcrypt (crypto).

  2. PennyWise uses only built-in packages. The standard Lazarus installation covers database access, GUI, charting, and system integration.

Community and Industry

  1. The Pascal community is small but knowledgeable. The Lazarus forums, Delphi-PRAXiS, r/pascal, and Stack Overflow provide active support.

  2. Pascal is used in production in healthcare, enterprise desktop applications, industrial automation, and education. Notable applications include Total Commander, FL Studio, Double Commander, HeidiSQL, and PeaZip.

  3. Contributing to Free Pascal/Lazarus starts with bug reports — the simplest and most valuable contribution a user can make.

The Big Picture

  1. The ecosystem is complete for its size. It does not compete with Python's library count, but it covers professional development needs for desktop, server, embedded, and game programming.

  2. Stability is a feature. The compiler that compiled your program today will compile it ten years from now. In an industry obsessed with the new, this reliability is quietly extraordinary.