Live data from Hacker News

Lazarus – A Delphi-compatible cross-platform IDE

lazarus-ide.org

101–110 of 187 posts

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

#101
post #42

How do you avoid spaghetti code, in an environment like lazarus?

That's an interesting question. Lazarus is an IDE like Visual Studio or the JetBrains ones, and it has nothing to do if you write spaghetti code or not, try google "SOLID" instead on that subject.

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

#102
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…

"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"

If you're interested in Basic programming then Gambas might interest you. Although not a clone of VB, it can be roughly considered being to VB what Lazarus is to Delphi: a 100% Open Source implementation. I would prefer Lazarus anyway, but it's indeed nice to see different alternatives to proprietary dev systems.

http://gambas.sourceforge.net/en/main.html

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

#103
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…

One of the main points that makes me happy about Pascal syntax compared to some C-family langs like Java is that types are placed AFTER the variable names, making it much easier to scan the left border of the editor for meaningful info.

Happy that recent languages like Go and Kotlin have learned the lesson and are going the Pascal way again.

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

#104
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)

I've created small projects in Lazarus and you are right in all points except in the small binary part, also I would add that it comes with db drivers for Postgrees, MySQL and Firebird SQL out of the box.

If you compare to the "modern" way of building cross-platform apps: Electron ... with its 100s of MBs, I'm definitely regarding Lazarus binaries as small :)

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

#105
One of the things I'm excited about, is using FPC/Lazarus as GUI for computationally heavy Go code (Now with the recent efforts to use Go for datascience ... see http://gopherdata.io), now since Go supports shared object (.so/.dll) files.

I collected my (very early) research on it in this thread:

https://forum.lazarus.freepascal.org/index.php?topic=24948.0

... where some users report they tried it already. Seems to work, if not super smooth. Hope it can be improved in the future.

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

#106

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

I have had best success by using the (very stable) version provided in (X)ubuntu LTS, which I'm always staying with, so I'd say it is about finding a good strategy for version selection.

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

#107
post #13

I see Lazarus pop up on HN occasionally. It's an IDE for FreePascal right? I guess I'll have to open the article again. How are the database drivers? I've been told they're ageing. Is there 64 bit support for Windows or only 32?

There is a Win64 compiler and it's working great! I don't know anything about the database drivers.

Just tested it out and confirmed.

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

#108
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…

As awesome as Lazarus appears to be here, Rebol is even more amazing in my opinion. There is no designer, but the GUI DSL is mind bending. Red is a Rebol inspired language that is also tiny with a compiler as well so you can build a nice cross-platform-native GUI and distribute it as a tiny executable (~1.5 MB). You can see the GUI stuff for both Rebol and Red. There's a YouTube video by Nick Antonnacio (spelling) that shows him building something like 40 GUI apps in an hour ranging from email apps to games like tic-tac-toe and snake...it was pretty crazy to see the first time.

I'm checking out Lazarus currently.

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

#109
post #89

Earlier quoted context omitted.

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.

The UI part of a database frontend is trivial and the code is very minimal in Qt (but there still code involved, for sure).

An image manipulation program, what does Delphi provide out of the box for this? I would assume that if you have anything non-trivial, you'd have some custom code to write? I mean, they can hardly have built-in components for every possible use case so I don't have to write any code. What am I missing here?

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

#110
post #93

Earlier quoted context omitted.

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…

For those lacking CS background, reference counting is an GC algorithm. The 5th chapter from "The Garbage Collection Handbook", http://gchandbook.org/ , one of the most renowned books in the field, there are of course other equally renowned sources I can refer to.

Formality aside, it's about deterministic GC vs nondeterministic GC.
Post reply on HN