Live data from Hacker News

Lazarus 2.0 RC3 – Delphi-compatible cross-platform IDE

forum.lazarus-ide.org

31–40 of 129 posts

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

#31
post #7
post #4

Earlier quoted context omitted.

I miss WYSIWYG IDE's like Delphi, VB-classic, and Lazarus. Dealing with HTML "autoflow" and Bootstrap is a royal pain. You sketch a draft GUI that seems a good fit for the application and users, and then realize you have to jump through hoops backward on a unicycle while chewing gum blindfolded to get it right on web browsers. Jetsons WYSIWYG technology yanked from my happy fingers by an LSD "standard". (I'm assuming…

We just need a Lazarus target for webassembly and we'll be good.

Hmmm, can Lazarus be used to build a "GUI browser"? For example, can one send a "create button" command or tag to it and have it draw one dynamically? What about new panels and forms? How "meta" can its GUI engine be at run-time.

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

#32
post #24
post #21

I was eyeing Lazarus, because it is close to my particular crossplatform toolkit ideal. I think that UI toolkit should use native widgets and near zero cost FFI. So any toolkit that draws for itself is not within my ideal. The most problematic platform for my ideal is Android as the toolkit should run without NDK. C++ does not cut it. Java would work for Android, but on other platforms there's FFI. FreePascal does co…

Re: I think that UI toolkit should use native widgets and near zero cost FFI. If the target audience is cross-platform, that's hard to pull off. Each OS's native GUI engine is too different. Emulating a common target behavior is usually better (until a good general GUI standard comes along). Maybe your particular need is not cross-platform, but Lazarus's goal is.

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/Linux with the Qt (i think both 4 and 5 are supported nowadays) and Gtk2 being generally fine as they mostly behave like Windows (especially Qt) and the worst being Mac support since it is so different from Windows (that and the Mac backend was originally written using Carbon as that was easier to interface with FreePascal and still to this day is the most robust backend for Mac, although in reality both the Carbon and Cocoa backends aren't that great). And of course the programs despite using native widgets, still look like Windows programs on a Mac dress ([0] is an old screenshot from my 3D world editor compiled under Mac, the Windows-isms are clear). You can obviously try to make things look more Mac-y (and i did try a bit) but you need to do so much (and in a different branch since some changes can be very invasive) that IMO isn't worth the effort unless you really want to get that "Mac look" (but be prepared for a lot of custom code and changes to bypass LCL).

[0] https://i.imgur.com/CMaKlZg.png

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

#33
post #10
post #4

Earlier quoted context omitted.

I miss WYSIWYG IDE's like Delphi, VB-classic, and Lazarus. Dealing with HTML "autoflow" and Bootstrap is a royal pain. You sketch a draft GUI that seems a good fit for the application and users, and then realize you have to jump through hoops backward on a unicycle while chewing gum blindfolded to get it right on web browsers. Jetsons WYSIWYG technology yanked from my happy fingers by an LSD "standard". (I'm assuming…

Heeeey, but actually, unicycle is real fun! Sorry for being OT, but I couldn't resist :D it's just that this exercise you mention seems as a seriously fun idea for one of the many unicycle trials competitions :) just I'm not sure if the chewing gum would up the challenge in any way? That said, I wouldn't really compare JS fighting as similar to really fun unicycle tricks ;D Again, sorry for OT :D https://youtu.be/ePW…

Sorry, didn't mean to offend unicycle riders and jugglers. It was just an analogy about having to "juggle" (coordinate) many tricky activities at the same time.

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

#34
post #4

Earlier quoted context omitted.

I miss WYSIWYG IDE's like Delphi, VB-classic, and Lazarus. Dealing with HTML "autoflow" and Bootstrap is a royal pain. You sketch a draft GUI that seems a good fit for the application and users, and then realize you have to jump through hoops backward on a unicycle while chewing gum blindfolded to get it right on web browsers. Jetsons WYSIWYG technology yanked from my happy fingers by an LSD "standard". (I'm assuming…

Yeah, me too. They were one of the steps on the pathway of enabling users and blurring the line between user and programmer. Sadly, the industry lost interest in personal computing in favor of turning users into a resource to farm and feed to advertisers.

Since it's more income to bill for rocket science than bicycle science, there's no incentive for many to simplify UI standards. Right now we are stuck with "rocket science" web-based UI's and JavaScript brain surgery.

Don't get me wrong, HTML browsers are fine for most documents and document navigation, but don't scale to real GUI's easily.

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

#35
post #11

Free Pascal has come a long way. When I first messed with it, it lacked generics even though Delphi supported them. Nowadays I can compile Delphi code with generics just fine. I don't think I personally would want to use Delphi in this day and age, but there's still a lot of useful Delphi/Pascal code out there and it's great to be able to use it on Linux.

> When I first messed with it, it lacked generics even though Delphi supported them.

Unless you mean in the "delphi mode" specifically (which i'm not sure how it handled generics support), this isn't true since Free Pascal introduced generics support before Delphi did and sadly when Delphi introduced generics they decided to make them incompatible with Free Pascal's syntax (which i personally prefer since it is more explicit).

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

#36
post #11

Free Pascal has come a long way. When I first messed with it, it lacked generics even though Delphi supported them. Nowadays I can compile Delphi code with generics just fine. I don't think I personally would want to use Delphi in this day and age, but there's still a lot of useful Delphi/Pascal code out there and it's great to be able to use it on Linux.

> When I first messed with it, it lacked generics even though Delphi supported them. Unless you mean in the "delphi mode" specifically (which i'm not sure how it handled generics support), this isn't true since Free Pascal introduced generics support before Delphi did and sadly when Delphi introduced generics they decided to make them incompatible with Free Pascal's syntax (which i personally prefer since it is more…

Ah yes, to be clear I'm referring to Delphi-compatible generics. FPC generics I found out about later.

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

#37
post #27

Earlier quoted context omitted.

> There really isn't a reason I can think of that I shouldn't be able to throw together a GUI in a WYSIWYG editor and maybe define some basic behavior, then give it one or more programs it should run in the background and pass messages back and forth. Or even let me just tie events to a command pipeline and dump the result into another widget, basically just letting a GUI be part of the composable toolset following t…

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,…

So, instead of language bindings for the UI builder, you need an in-language implementation of or binding to a client for the GUI markup language output by the UI builder? While I like the idea of a generic UI markup languages, it sounds like you've replaced the problem you want to avoid with a bigger one.

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

#38
post #8

Adding C++ support will really make this project much more popular and viable option.

It is viable just fine as it is, i'm not sure what you have in mind.

In any case C++ support for Lazarus is almost impossible due to the work needed and the projects that will need to cooperate - i go into details here: https://news.ycombinator.com/item?id=15893362

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

#39
post #34

Earlier quoted context omitted.

Yeah, me too. They were one of the steps on the pathway of enabling users and blurring the line between user and programmer. Sadly, the industry lost interest in personal computing in favor of turning users into a resource to farm and feed to advertisers.

Since it's more income to bill for rocket science than bicycle science, there's no incentive for many to simplify UI standards. Right now we are stuck with "rocket science" web-based UI's and JavaScript brain surgery. Don't get me wrong, HTML browsers are fine for most documents and document navigation, but don't scale to real GUI's easily.

Since we're talking web and not native, your metaphor works only if your "rocket science" is performed with used swimming pool materials and your "brain surgery" with gardening tools.

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

#40
post #29
post #11

Free Pascal has come a long way. When I first messed with it, it lacked generics even though Delphi supported them. Nowadays I can compile Delphi code with generics just fine. I don't think I personally would want to use Delphi in this day and age, but there's still a lot of useful Delphi/Pascal code out there and it's great to be able to use it on Linux.

>I don't think I personally would want to use Delphi in this day and age I totally understand where you are coming from, however I must say having everything compiled into a static-binary is a powerful thing that we often overlook today. Case-in-point: Around 2007 I was consulting for a manufacturing facility, basically doing accounting system programming. Their warehouse department needed a small app that basic did…

Oh yeah, single static binaries are awesome. I think it's one of those things that helped make Go super successful as well.

If Go had a RAD, well, it'd be very enticing to me. Sadly they have only touched on UI a little. If you want to write something with Win32 API it's not too hard and there's plenty of good libraries, but sadly there's no VCL equivalent. I'd like that.

I guess in that sense Lazarus is still useful. But, I don't find myself needing a RAD too much. What I would've used a RAD for I find Python + Qt to be usable enough for.

Post reply on HN