Lazarus Release 4.0

72 proxysna 24 5/7/2025, 8:36:57 AM forum.lazarus.freepascal.org ↗

Comments (24)

zerr · 1h ago
> Windows: 2k, 32 or 64bit, Qt, Qt5, Qt6 (64bit only)

Besides Qt, does it have a pure Win API back-end as well?

Peter5 · 55m ago
Yes. Try the IDE itself; on Windows it is built with Win API. PeaZip is a sample of it https://github.com/peazip/PeaZip
zerr · 24m ago
Ok, using WinAPI means it is not easily theme-able, unless they provide custom set of controls. I assume it is possible to use Qt back-end for Windows as well. I wish Lazarus also supported C++ akin to C++Builder. Pascal is a deal-breaker many.
colechristensen · 2h ago
It would be great if release announcements like this always included a description of what the product actually is.

>Lazarus is a Delphi compatible cross-platform IDE for Rapid Application Development. It has variety of components ready for use and a graphical form designer to easily create complex graphical user interfaces.

szszrk · 4m ago
It's a link to a whole forum purely focused on that IDE, with it's name in domain name.

Why would they explain that to their audience? They know.

nurettin · 2h ago
Delphi and Lazarus have been around for decades. It's like asking what lisp is.
integricho · 1h ago
Since I read about the guy who was surprised that anything other than SPAs exist (the full page reload magic incident), I realized there are way younger people in the field with no context or knowledge of CS history whatsoever, so some of them not knowing about Lazarus or Delphi sounds totally plausible.
lionkor · 1h ago
I think it's not elitist at all to say that people with no CS education (whether academic, self taught, or acquired over time) should probably not be considered when writing documentation or release notes.

If you generate AI slop web dev code (and the chances are incredibly high if you haven't heard of Lisp or Delphi) you probably won't need Lazarus or care that native apps even exist.

I'm all for teaching and explaining, and I know a small percentage of new CS people are curious and interested, but... release notes aren't the place for helping them.

That said, an explanation of what Lazarus is is genuinely needed, because people who have written Delphi for years might not have heard it (thanks, Embarcadero). So your have a point beyond your main point there.

Timon3 · 25m ago
I know Delphi, yet I didn't know Lazarus until now. I'm sure there are others like me.

I can understand not wanting to explain Delphi, but come on, not everyone knows the name of every IDE for every language. It doesn't hurt to add one sentence explaining that. If I hadn't seen the comment above, I wouldn't be able to consider Lazarus in the future if I ever use Delphi again.

mseepgood · 1h ago
You forget that every day, someone wakes up who is new to this planet.
troupo · 1h ago
10000 thousand people a day hear about any given topic for the first time in their life https://xkcd.com/1053/
evidencetamper · 1h ago
Which is an excellent point for conversations, but in the context of the release notes in the website of the project, I understand that this xkcd principle does not apply.

If one goes to the release notes for Lazarus, they either sought those release notes out, and hence already know what it is. Or they were linked to it in a specific context, such as Hacker News, which the expectation of curiously clicking around to understand the project is natural.

troupo · 36m ago
Sometimes I click on HN submissions out of idle curiosity, not because I seek those out, or because I know what the link refers to.

It doesn't mean that I will actively try and navigate out of a forum completely separated [1] from the actual product site just to see what it is.

[1] It's the bane of nearly all projects, both commercial and open-source: blogs, release notes, discussions, forums and often even documentation don't have a single link back to the product page

TiredOfLife · 2h ago
HN submissions don't have a field for description. And you are supposed to use original title. And there is a length limit on title. And some angry internet user will make a comment - sometimes even the submitter.
notpushkin · 2h ago
Yeah, technically you could add text with the link submission, but it will demote the link somewhat and I guess is just frowned upon here.
colechristensen · 1h ago
Oh it seems my point was ambiguous, I really meant the website should include it
cess11 · 1h ago
I think you'd have a larger impact if you convinced other communities, like the Linux kernel or Xfce, that their "products" ought to have a note like that in their release announcements.
TiredOfLife · 2h ago
marttt · 28m ago
Alternatively, Jeff Duntemann just released new edition of "FreePascal from Square One", free PDF: https://www.contrapositivediary.com/?p=5399
mdaniel · 1h ago
> To return a value from a function, assign something to the magic Result variable. You can read and set the Result freely, just like a local variable.

I'm torn about which is clearer, that magic variable style or assigning to the function name as one does in VBScript. I guess the magic variable makes refactoring dirty fewer lines

I also have mixed feelings about golang's `func Doit() (result int, err error)` syntax. To quote another platform, "there should be one, and preferably only one, obvious way to do it"

chungy · 1h ago
> I'm torn about which is clearer, that magic variable style or assigning to the function name as one does in VBScript.

That's also "old style" Pascal, and still supported by Free Pascal (even though the compiler gives you a warning for doing it!).

kgeist · 1h ago
>I also have mixed feelings about golang's `func Doit() (result int, err error)` syntax. To quote another platform, "there should be one, and preferably only one, obvious way to do it"

Isn't it basically equivalent to an anonymous tuple which is automatically deconstructed on assignment?

throw-the-towel · 1h ago
Not exactly because you cannot store the entire tuple in a variable.
ysleepy · 1h ago
For glance reading code, a predictable variable name or return keyword is a lot easier imo.