Live data from Hacker News

Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

forum.lazarus-ide.org

91–100 of 129 posts

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#91
post #85

Earlier quoted context omitted.

FWIW LCL (Lazarus' framework) emulates the Windows behavior (there are even some reimplementations of Windows functions in non-Windows platforms to assist with that) since the API "descends" from Delphi's VCL which is Windows-only (and IMO it makes perfect sense that if you need to emulate some OS's behavior to focus on the most popular one). The end result is obviously that under Windows things work great, under X11…

Does it emulate Windows behavior, or does it simply wrap it? My understanding is that LCL wraps Win32 API directly on Windows, same as VCL did.

When it comes to the controls, etc it always wraps them, but the exposed API is based on VCL which has several Windows-isms and those Windows-isms are replicated to other widgetsets. One example would be the reliance of several controls (like toolbars, lists, trees, etc) to image lists (which is basically a Windows Common Controls thing that is used in Delphi - Lazarus just keeps the API but reimplements those common controls). On a lower layer, LCL widgetsets implements several Windows API functions (often accessed via the LCLIntf unit or the widgetset itself as methods). As an example this file reimplements several of Windows API functions in Gtk2:

https://github.com/graemeg/lazarus/blob/upstream/lcl/interfa...

Note that all widgetsets implement these methods, even the Win32 one (which instead of reimplementing it just forwards the calls to the real Windows API).

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#92
Its funnt how people will not want to use Pascal of any flavor because its perceived as old/obsolete and yet the same people have no problem firing up AWK to solve a text processing problem.

LAzarus provides a great way to address the perception. Fast, free, rich language underneath. Im about to start using in my hobby IOT stuff, but as other posters have pointed out, it works great for Enterprise level stuff as well. Single exe executable is, in my books, a huge advantage.

FTR have started looking at nim as well which seems so far to be bit of a pascal 'reborn' and it also compiles down to single executable. I recommend people look at both if you are needing to distrbute software without the normal installer drama.

Bottom line i believe there is no software silver bullet. Each language has pros and cons and the biggest challenge these days is choosing the appropriate one to use.

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#93
post #86

Something I always wondered about - what's the current state of affairs wrt Gtk and Qt support? Both are available (different versions, even!), but which one is preferred, so to speak? I've noticed that e.g. Debian installs the Gtk version of Lazarus by default, if you use the virtual package. But it's not clear whether this is a conscious choice, or it just dates back to when they only had Gtk.

Gtk2 is the most mature one, Qt4 follows next (and AFAIK you can build it for Qt5 too but never tried it myself) and Gtk3 is in very early stages. Gtk1 might still work too, but the only distro i know that ships Gtk1 is Slackware.

AFAIK Gtk2 is the preferred one for shipping since it is still widely available and you can simply give a binary (Lazarus uses a rather old version of the Gtk2 API by design so that it is compatible with almost every Gtk2 distro out there, including some that are a few years old). Qt4 and Qt5 require an intermediate shared library that provides a C API and Pascal bindings for it and in addition Qt4 is removed from some distros.

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#94
post #80
post #57

Earlier quoted context omitted.

From the early days I thought it was a mistake for Java and .NET not to follow on what was common back then, and offer AOT compilation out of the box. Java AOT solutions were all commercial (gcj doesn't really count) and .NET had NGEN, but it was only meant for fast startups. .NET was specially disappointing in this regard, given that it had quite some influences from Delphi. We had to wait around 20 years for AOT to…

I think one of the reasons why new languages are going for compilation again is the death of the multi-architecture ecosystem. Support x64 and ARM and you can play with the big boys. Back then? Intel was barely considered mature, every Unix manufacturer (including sun) had their own processor architecture, and who knew what was coming out for the smaller devices ("thin clients" were all the rage). I still think that…

I've got no idea why Microsoft was going apesh· for bytecode all of a sudden.

Delphi probably was one of the main reasons. It was a lot better for Windows 32 development than VB and there were projects to port it to Linux.

Microsoft then recruited Delphi leads, settled a long running suit with Borland (with the fallout of stopping Delphi for Linux development) and finally created a platform where they keep control, unlike native API that is much more open.

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#95
post #55
post #27

Earlier quoted context omitted.

As I view the problem, what's lacking is a GUI markup standard roughly comparable to HTML. HTML browsers were not originally meant to build full-on GUI's in, but the industry has accepted the habit of forcing them to "do" GUI's using convoluted tricks and giant JavaScript libraries. By the way, the "GUI markup language" doesn't necessarily have to be XML-only. Maybe JSON or CSV versions can be defined also. However,…

QML has provided what you want for a decade, and it runs on Linux, macOS, Windows and Android

Interesting. Thanks. On first impressions QML looks more suited toward multimedia applications than CRUD or business applications. But, we can test that theory...

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#96
Some years ago, I had to write program that extract a foot pressure platform for an orthopedist, and I had to do it with a closed-source Delphi API. Delphi was already old at that time and difficult to find. I though about Lazarus and it works perfectly with the Delphi blob file. It's a very great tool.

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#97
post #71

Has anyone used a recent Lazarus version to create apps that can connect easily to an HTTP API? Some months ago I had a need to create a "quick and dirty" API utility for internal use and I remembered about Lazarus. However I couldn't find an HTTP client component that I could use. I just wanted to do the equivalent of a curl GET/POST call. I'm not sure if maybe I'm not familiar enough with the wiki structure so I mi…

Indy is one of the more commonly used networking libraries. It’s open source and in active development (with few breaking changes). Works for Delphi as well as FPC. I’ve had great success with it for FTP, HTTP, POP3, and SMTP.

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#98

Its funnt how people will not want to use Pascal of any flavor because its perceived as old/obsolete and yet the same people have no problem firing up AWK to solve a text processing problem. LAzarus provides a great way to address the perception. Fast, free, rich language underneath. Im about to start using in my hobby IOT stuff, but as other posters have pointed out, it works great for Enterprise level stuff as well…

It's the aesthetic ("program", "procedure", "begin" and "") and the association with proprietary software (Borland) that make Pascal feel "uncool".

While Awk, like C, Is Unix™. Timeless, classic, already there, and cool. This is absolutely just subjective crap, but this is how most of us unix-heads feel :)

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#99
post #15

Earlier quoted context omitted.

I cut my teeth on VB classic, as I'm sure a lot of folks my age did. I was learning C/C++ concurrently, got through the basics, and of course hurried to GUI programming since that's what I made. It's been 20 something years, but I remember it being something like 31 lines of code to just get an empty window in Windows. With VB it was basically zero effort. I wish WYSIWYG IDEs for both desktop programming AND html (re…

I also did some VB classic and Delphi back in the day. I later moved on to C++ with Qt. I've not been working on GUI programming much since, but I really enjoyed the Qt experience; good tools and superior documentation. I never liked gtk - much for the same reasons as your Windows GUI C programming; Too verbose for trivial and mundane things.

It's only verbose if you use C. GTK is very nice with Rust, C++, D, Vala, Python, JS, Haskell, etc.

Re: Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

#100

I love the idea of a WYSIWYG IDE that's integrated with the language like this, or like VB used to be, but personally I just can't stomach the whole "have to learn yet another language to use it" problem. From what little I've played with Lazarus and FPC it seems really nice though, and I might make use of it for some smaller projects at work in the near future. I'm sick of trying to make web apps and all the ridicul…

I felt the same way but I tried playing implementing a quick idea in Lazarus last year and I swear it was the fastest ramping up I've ever had. Pascal/Delphi are a little weird but I found them easy to pick up.

Then again my very first programming experience was in VB so I might be biased :)

If anything is wrong with it, I'd say some of the widgets are little out of date or lacking, but since most of that maps to GTK primitives it's only when you need something weird that you might have to start hacking, since there probably isn't an open-source tool lying around like we'd be used to with JS/ruby/go

Post reply on HN