Live data from Hacker News

Lazarus – A Delphi-compatible cross-platform IDE

lazarus-ide.org

81–90 of 187 posts

Re: Lazarus – A Delphi-compatible cross-platform IDE

#81

Do not forget also the tremendous effort in the Free Pascal other big IDE https://sourceforge.net/projects/mseide-msegui/ It is a pitty dev pascal didn't catch up or ported to FPC.

Looks interesting. What are its advantages when compared to Lazarus?

Re: Lazarus – A Delphi-compatible cross-platform IDE

#82
post #50
post #4

Lazarus/FPC checks so many nice boxes: [x] Statically compiled [x] Native UI on Linux/Mac/Win [x] Typically compiled without code changes on Linux/Mac/Win [x] Small binaries [x] No GC [x] Readable, somewhat python-like syntax [x] Still, doesn't rely on indentation for nested blocks [ ] (Fill in)

> [x] Readable, somewhat python-like syntax I have a rather different opinion on OP that it has a needlessly verbose syntax. Pythonic it is definitely not. Even C# (which is another creation of Anders Hejlsberg, after MS poached him from Borland) has a better, readable and concise syntax. I used to be a Delphi evangelist in it's glory days. Now I bristle when I read Pascal source code, there's so much unnecessary vis…

> Pascal syntax belongs to C family of language.

It can't possibly, seeing how it predates C.

There are specific differences that set them apart, too. For example, the fact that Pascal has statement separators rather than statement terminators (and using a separator in a terminal position is usually an error, e.g. before "else").

Pascal rather belongs to the Algol family of languages, together with C. Algol-60 is where "begin" and "end" come from.

Re: Lazarus – A Delphi-compatible cross-platform IDE

#83
post #53

Earlier quoted context omitted.

My feeling as well. In my heart I am really happy that Lazarus (and Harbour, the Clipper-compatible compiler) exist, but being rational the days of desktop applications are over. Python is being run on microcontrollers these days; I actually wrestle with the non-adoption of Python (or Ruby, or Javascript, or Tcl) as 1st-class citizen language for desktop and mobile; it does not make sense for me. Certainly writing de…

> My feeling as well. In my heart I am really happy that Lazarus (and Harbour, the Clipper-compatible compiler) exist, but being rational the days of desktop applications are over. Oh boy, I hadn't heard about Harbour until now; earlier today I was looking at the Wikipedia page for id Tech 5, and it says it uses Clipper so I was really scratching my head wondering how they pulled that off and why. Now I know, thanks…

Wait. Why would a 3D game use Clipper? What for?

Re: Lazarus – A Delphi-compatible cross-platform IDE

#84
post #28
post #26

Earlier quoted context omitted.

> main frustration was multi-windows interface. Multiple windows are very comfortable if you have multiple displays connected to your computer.

Lazarus is basically a Delphi 2 clone. Delphi ditched the multiple floating windows design starting in version 3 and every subsequent version has been the more traditional "MDI" design similar to Visual Studio. I really like that Lazarus kept the floating window design because it's nice to be able to see your desktop, the wallpaper is more pleasant than whatever solid color background is on the MDI client, and you ca…

Ah, but you only see the desktop if you have no windows other than Delphi. The moment you do, those windows start getting in the way and distracting with their content.

Re: Lazarus – A Delphi-compatible cross-platform IDE

#85
I've made the mistake to write a complex project in Free Pascal. As far as I can tell pretty much every release of Lazarus is breaking something. And surprisingly often those breaks are major (like e.g. broken multi-threading, broken-strings, ...).

For me the whole thing looks more like a playground for hobbyists and is not really useful for anything productive. There's not much continuity in the language. And for the devs something like 95% compatibility seems to be good enough.

For small projects it might be ok to use, but you better keep your snapshot of the compiler locked in a safe place.

On the other hand: If you're young and want to make history as the guy who replaced all those begin/end in pascal with smileys: This project might be your chance...

Re: Lazarus – A Delphi-compatible cross-platform IDE

#86

Earlier quoted context omitted.

Still, things didn't get any more Rapid than they were in 1998 and that's a bit sad. In terms of productivity, C# with WPF/XAML is at best equally good IMO.

WPF/XAML can give you amazing results but I'm nowhere near as productive with it as I was with VB6.

I would venture that WinForms is actually more RAD'ish than WPF.

A lot of that productivity came from the drag-and-drop form editing. And what made it possible (and easy) was complete disregard for any kind of advanced dynamic layouts. Delphi's VCL, .NET's WinForms and the nameless VB6 UI toolkit are all designed around the notion of widgets manually placed on a 2D grid, and the most that you can get in terms of dynamic resizing is "anchoring" their corners to containers.

Re: Lazarus – A Delphi-compatible cross-platform IDE

#87
While we're at it, for those times when you're hacking on console apps, FreePascal also has a very nice text-mode (TUI) IDE that is basically a Turbo/Borland Pascal 7.0 IDE clone - but cross-platform.

To do that, they had to port Turbo Vision (or rather its open source fork Free Vision). It's still a great TUI library... it's a shame it's Pascal-specific. Would be interesting to have an implementation of it for, say, Python, for system tools and the like.

Re: Lazarus – A Delphi-compatible cross-platform IDE

#88
post #54

Earlier quoted context omitted.

Lazarus is Object Orientated. Delphi definitely offers garbage collection in newer versions, not sure about Lazarus.

No. Delphi offers reference counting , but only on interface variables. It's a huge difference really, because if your last interface variable that points to an object goes out of scope, the object is freed from memory. Even if you have raw class pointers to it. Example: IMyInterface = interface procedure Foo; end; TMyClass = class(TInterfacedObject, IMyInterface) procedure Foo; end; procedure TMyClass.Foo; begin Wri…

I highly doubt it's production code. Nobody uses both objects(pointers) and interfaces simultaneously. It's a quick way to disaster. In practice Delphi/FPC interfaces serve their purpose.

Re: Lazarus – A Delphi-compatible cross-platform IDE

#89
post #73

I mentioned Lazarus in other threads a few days ago (since my kids are playing around with it) and it's great to see it as a top-level post. Some random thoughts: - It's somewhat amusing to realize that in 2017 this is pretty much the easiest way to do a desktop app (besides RealBasic/Xojo which I've yet to try - was put off by their mandatory registration) - I wish we had RAD environments like this for more language…

I've not used Lazarus or Delphi, so I can't really compare properly. Perhaps I'm missing something. But: > if anyone knows of any similar environments (besides QtCreator, etc.) Why "besides QtCreator, etc"? It sounds to me almost like "do you know any X besides all of the popular X". Is there any particular reason you discount QtCreator? Does it not work for your purposes? Or is it just a case of you already know abo…

Because QtCreator isn't up to the job compared even with Delphi 1 for Windows 3.x, but sadly the younger generations never got to use it professionally.

Delphi and Visual Basic, were like the Smalltalk/Lisp Machine (I am exaggerating a bit) of the RAD programming generation.

Try to create a database frontend or image manipulation program in QtCreator just with the GUI designer.

Re: Lazarus – A Delphi-compatible cross-platform IDE

#90
post #87

While we're at it, for those times when you're hacking on console apps, FreePascal also has a very nice text-mode (TUI) IDE that is basically a Turbo/Borland Pascal 7.0 IDE clone - but cross-platform. To do that, they had to port Turbo Vision (or rather its open source fork Free Vision). It's still a great TUI library... it's a shame it's Pascal-specific. Would be interesting to have an implementation of it for, say,…

The Turbo Vision IDE was actually introduced with version 6.0 as an example what the framework was capable of.

It was later available in C++ as well, and there is a port available.

http://tvision.sourceforge.net/

Post reply on HN