For all you Pascal programmers among my readers: Lazarus 3.0 is out, and available for free download. Here’s the announcement. I’ve already installed it on Win10 and will install it on Linux when time becomes available. (I’m still struggling to write the trademark Jeff Duntemann mayhem-filled action climax of my current WIP: The Everything Machine, the first full-length drumlins novel.)
Delphi now costs over $1000. If I’m going to teach Pascal, I can’t use Delphi, love it though I may–and do. Lazarus is pretty much Delphi’s peer, though it doesn’t…quite…have the third-party component aftermarket that Delphi has. Doesn’t matter. The fundamental principles of OOP and event-driven programming are the same.
For newcomers: Lazarus is a superb IDE and drag-‘n-drop GUI builder conceived as a Delphi competitor, though open-source and thus free of charge. It uses FreePascal 3.2.2 as its compiler. FreePascal understands Delphi’s additions to the Pascal programming language, and will also compile ancient Turbo Pascal programs. FreePascal is part of the Lazarus package and is installed when you install Lazarus. I have fragments of a book on Lazarus that I will return to at some point. But if you know Delphi, well, there’s not a lot more to learn. You’ll feel right at home.
Go get it. I’ve done a lot of work in Lazarus. It’s mature. It works. It can create wonderful GUI apps. And it’s free. What more do you want?
Can you use code libraries, written for Delphi, with Lazarus and vice versa?
I have used Delphi on the past, but nowadays I’m doing most work in Matlab. This has a clone called Octave but they were unable to resist “enhancing” it so now code for either one sort of works with the other but not really. Octave does not have much of a user base, so it will probably disappear
Like a lot of things in programming (and life in general) it’s complicated. There are drop-in analogs in the Lazarus Component Library (LCL) for all the most common Delphi components. Out on the fringes, not so much. However, there are libraries developed specifically for Lazarus, including LCL translations of some of Turbo Power’s Delphi libraries. I’ve seen a few libraries for Lazarus on Torry’s, but they’re few and far between.
There is a fork of Lazarus called Code Typhon that has a HUGE pile of components preinstalled. They’re not directly compatible with Lazarus but there is a converter that takes CT componenets and makes LCL components out of them. You can google around and see what’s out there. I’ve seen a lot of them on Github.
I’d say, Hey, download and install it and see what you think. I’ve found it very useful in the past 18-odd years I’ve been using it, back to the pre-V1.0 releases.
It’s quite impressive. I haven’t used Delphi since the 1990s, but it brings back happy memories. (The first web applications that I ever wrote were done on that platform.)
I’m a Mac user and got it to work for me on my relatively new Apple Silicon M1 machine using the Homebrew package manager. You do have to read the installation instructions, though:
https://wiki.freepascal.org/Installing_Lazarus_on_macOS#Step_4:_Binary_Install_of_the_Lazarus_IDE
Running `brew install -s fpc-laz`, then `brew install lazarus`, then configuring LLDB as described in that page seemed to work.
I just ran across an amusing article about the Dos TUI and Borland editors back in the day. Even a reference to Free Pascal.
https://blogsystem5.substack.com/p/the-ides-we-had-30-years-ago-and
Sad news for fans of Pascal/Modula-2/… ; Niklaus Wirth passed away on New Years’ Day https://twitter.com/Bertrand_Meyer/status/1742613897675178347