Free Pascal compiler now supports dynamic packages

181 points · 44 comments on HN · read original →

Points and comments are a snapshot, not live.

Free Pascal and Lazarus now support dynamic packages for plugin and component deployment.

The Free Pascal Compiler and Lazarus IDE now support dynamic packages, allowing users to create and install components, controls, and extensions without rebuilding the entire IDE. Packages are standard shared library files with metadata for Linux, Windows, and macOS. Restrictions include unique unit names across packages and no unit sharing the package name. RTL enhancements include the DynPkgTypes.pas unit for loading, enumerating, and unloading packages. Lazarus improvements include a progress window for automatic rebuilds, a docked Packages window, and form-to-component conversion.

What commenters are saying

Commenters broadly celebrated the release, noting it fulfills a feature over 20 years in the making. Many praised Pascal/Lazarus for its tight feedback loops and rapid desktop development, comparing it favorably to Delphi. Some clarified the project is a fork ahead of mainline, with plans to merge changes. A few raised limitations: FPC still lacks inline variable declarations, and the last official release was in 2021. Questions about Pascal's modern relevance were met with examples like FLStudio and cross-platform GUI advantages.