Why would a Delphi programmer use Lazarus as the IDE instead of using Delphi's IDE? [closed]
Asked Answered
B

12

48

I've been very happy with the Delphi IDE for programming in Delphi.

But I've heard about the Lazarus programming environment, and I've also heard that some Delphi programmers use it instead of the Delphi IDE.

What are the advantages that Lazarus has over the Delphi IDE, and why would, or should a Delphi programmer switch to it?


The answers are leaving me with more questions than I had before. There seems to be some disagreement as to whether Lazarus can or cannot be used as an editor in developing Delphi code. I guess I thought you could leave everything in Delphi and just change IDEs. The Lazarus for Delphi Users section of the Lazarus Wiki says:

The first thing to do when converting a Delphi project
Having opened Lazarus, you should go to to Tools and then Convert Delphi Project to Lazarus Project. This won't do everything for you, but nonetheless will take you a good deal of the way. Note that the Lazarus IDE's conversion tools are generally one-way conversions. If you need to retain Delphi compatibility so you can compile your project with both Delphi and Lazarus, consider converting your files with the XDev Toolkit instead.

Because Lazarus is free is not a reason to switch, but does not penalize you in physical $'s for switching. (You will still have to invest your time to convert and learn. Time = $).

My as-much-as-I-understand conclusions from your answers as to why someone might switch from Delphi to Lazarus: obviously it must be providing something that Delphi currently can't. Currently that is multiplatform support and possibly 64-bit support. Delphi did have Kylix at one time, but not Mac support.

But with both of those and 64-bit promised soon by Embarcadero, you've answered my question by telling me there's no reason (at least for me) to switch.

Ballista answered 4/5, 2010 at 3:21 Comment(15)
The obvious reason is some people like it. But as to real feature comparisons, i couldn't tell you.Toddy
@RCIX: Yes, I'm sure some do. I'm interested in why they do.Ballista
In #630337, we see other IDEs for writing Delphi code, including Emacs, Multi Edit, and EditPad Pro. If anyone uses those for Delphi, then there must be reasons. I think this question asks why a Delphi user might choose Lazarus rather than of those other alternatives and rather than just continuing to use Delphi's own IDE. (Sure would be nice if Ikessler could back me up on that interpretation since so many others seem to think this is about ditching Delphi altogether in favor of Free Pascal.)Nineveh
Rob: Lazarus is different from ordinary editors, since form editors and codetools like stuff works, and with some skill can migrate forth and back (specially with more recent versions) But I agree that subtitution is a bad way of thinking. Near all fulltime Lazarus/FPC users also use Delphi. Even several devels (including me) do.Altarpiece
Note that if I understood it correctly, Delphi 64-bit support is still some time away (september 2011), and then add some time for components to catch up.Altarpiece
64 bit has been promised for at least 5 years now. I wouldn't hold my breath. I think it will be some time in 2012 when we can consider it mature enough to build product on.Prowess
I think this question is based on confusion between Delphi the language and Delphi the toolset; you wouldn't use Lazarus to develop if you're compiling with Embarcadero's compiler, but you might well use Lazarus to code in the Delphi language and use the FreePascal compiler.Softhearted
@JasonFruit: No. I think this question is based on hearing that some people used Lazarus as their IDE to write Delphi code, and I was wondering why that is.Ballista
I wonder if the confusion I mention is at the root of what you heard. I could also be wrong --- it's happened.Softhearted
"Why would [anyone] use Lazarus [...] IDE instead of [...] Delphi's IDE?" - Because he/she is masochistic and the Delphi IDE does not offer enough pain to him/her?Idiopathy
For those who use Delphi to write 'dull/serious' client software as part of many skills needed to deliver client solutions, Lazarus is now a good solution for building 64-bit binaries of those, in Delphi mode. Some programmers are hired as Object Pascal programmers 4 life, and they will likely have followed the development of Delphi and Object Pascal as closely as the FPC/Lazarus ones and have no issues. Whereas using Delphi is a luxury option for the lucky few, FPC is for everyone and Lazarus is a good IDE.Assuming
Update from 2021: the only big difference/issue I see is that Lazarus debugger is slow and painful, in comparison to Delphi's. Tip: with fpdebug package it starts to become usable. But Lazarus as editor is very stable nowadays. Much more stable and much faster than Delphi for code edition. Its completion works. It is really cross-platform. I recommend using github.com/LongDirtyAnimAlf/fpcupdeluxe to build both FPC and Lazarus from the sources, then easily install the cross compilers. Problem is still 3rd party components, which are likely (sadly) Delphi only.Dandruff
@ArnaudBouchez Really? Delphi's debugger has been getting progressively worse for years. I skipped 10.1-10.3, but remote debug was broken badly in 10.4 and 11.0. We used to use remote debug but it's been entirely useless in these past two revisions and has cost us an enormous amount of time. I've been considering moving our build to Lazarus after two decades of Delphi because it's getting so bad. Spending thousands of dollars every few years for regressions and bugs is really getting irritating... a shame if Lazarus is as bad as you say.Snaggy
Last year, wiki.freepascal.org/FpDebug has been enabled by default in Lazarus. It makes debugging much more smoothly, especially on Windows. Variable and functions lookup is still behind Delphi, but at least now regular debugging (breakpoints, step by step) is very usable in Lazarus. Especially on multi-thread apps, I find it very stable, and use Delphi debugger much less often. @Snaggy I didn't test remote debugging, but since we can have Lazarus run natively, I didn't need it yet. Seems not very efficent yet wiki.lazarus.freepascal.org/Remote_DebuggingDandruff
because it is open source?Plumbum
T
21

Well a Delphi programmer cannot use Lazarus to write Delphi code because Lazarus is not Delphi. Lazarus is actually an IDE and a bunch of Delphi-ish class libraries for Free Pascal. But note, things like Delphi's VCL is not there, and to be perfectly blunt the IDE and debugging experiences in Lazarus are pretty spotty, however it is free, so that counts for a lot.

Bottom line, Delphi <> Lazarus. Use Delphi if you want a great IDE and debugger huge 3rd party support and tech suport you are targeting MS Windows, plus you are willing to pay for it. Use Lazarus (free pascal) if you want a Free IDE that supports multiple platforms and has a Delphi-ish syntax.

Thrush answered 4/5, 2010 at 4:2 Comment(6)
A Delphi programmer certain could use Lazarus to write Delphi code. Heck, a Delphi programmer could even use Notepad to write Delphi code. The premise of this question is that there are Delphi programmers who use Lazarus to write Delphi code (not Free Pascal code). Ikessler asks why they would do that. If your answer is to deny the premise, then could you please be more explicit about it? Otherwise, I don't see how you've answered the question at all.Nineveh
Hey Rob, Perhaps I should have said to write and compile Delphi code. sure you can write Delphi code in anything. My point was the dialect of pascal and the class libraries used in the 2 products whilst similar are not interchangeable. (except in the very simplest of cases)Thrush
I've Lazarus on my private laptop. With recent versions, I've setup projects (visual ones even) on that laptop and then loaded them into delphi at work. With some DFM cleaner tool it is not much different then moving between Delphi versionsAltarpiece
"Delphi != Lazarus" ... shouldn't that be "Delphi <> Lazarus"? grinEbro
@Ebro +1 for making me smile - all that time I was staring at the screen ;)Preamplifier
This answer makes little sense. What Borland (Codegear/Inprise) calles "Delphi" code is what they used to call "Object Pascal" code, which is what everyone else calls it anyway. Delphi is just an IDE just as Lazarus is. Either one can be used to write Object Pascal code. More to the point, FreePascal even has a "Delphi Compatibility Mode" that makes the language syntax and defaults more like Delphi. If you want to say "Delphi is better supported because it's commercial", just say it. Both have features that the other does not, however.Leman
M
63

Ok. This is an old thread, but could do with some updating. I stopped using Delphi, maybe a decade ago*, largely because I had no choice. Having spent 5+ years working as a Delphi coder, I was now a student again and the prices for Delphi were simply outrageous. The problem with Delphi was never Delphi. Delphi was a genius system, but Borland (and later its successors) completely misunderstood the changing computer world. Microsoft was able to deliver a programming environment, that you could download for free, and its .NET environment was comparable with the VCL in all the important ways, meanwhile even a basic version of Delphi would break your bank or be plain out unavailable to student budgets. The end result is that with no new Delphi programmers coming on-line, it became a risky proposition for businesses to continue to use. Finally with the rise of linux, Kylix turned out to be a total trainwreck of an environment, not utilizing available UI toolchains and with a suspicious stench of Wine pervading it, topped off with an insulting attitude to GPL software that treated it as if it was shareware. Finally when Turbo Delphi came out many years later, it was unable to utilize the amazing resources available via sites like tories component sites. It was clear Borland had no respect at all for its coder ecosystem.

So Lazarus seemed to emerge out of all this, taking a very long time to gestate and seemingly aiming at some sort of analogue to Delphi 4, held by many to be one of the cleanest and neatest in the Delphi line. It complied to just about everything, its implementation of Object Pascal was spot-on, and most importantly it was free in all the senses that matter to open source.

However, it has had a long history of bugginess, and incomplete implementations of its controls. And this was bit of a deal breaker for me and many others.

With that said, I recently decided to download it, out of curiosity, and found that it's actually come a hell of a long way. The database components just work, although you might need to follow a few tutorials and chase some leads around to get them all up and running, and serious progress has been made towards iPhone and Android build targets.

I'm not sure I'm ready to deploy this to any of my commercial clients yet, but I'm going to give it another run with a personal project to put it through its paces, and if it does work, I think I'm finally going to be re-united with my first programming love, Pascal, and in a matter that lets me use my Mac to do the heavy lifting, whilst providing Windows and Linux builds.

So basically here are the facts on the comparison;- Lazarus and Delphi are totally separate entities. Lazarus is NOT a cross compiler for Delphi, but has a certain degree of compatibility. Its more like GCC vs MS C++. Delphi is more polished and likely more stable. Lazarus provides a Delphi 4 like environment that old-hand Delphi coders will find very comfortable. but Lazarus can be temperamental at times, and Delphi programmers need to understand that not everything in the latest and greatest Delphis will be there for them. Delphi does Windows, and it does it very well (yes I know the new one has some cross compilation targets, but word on the street is, that it's a bit hacky and needs some time in the embacardo cooker before it's really there), whilst Lazarus complies to almost everything. The current target list is;- Darwin, NetBSD, OpenBSD, FreeBSD, Linux, Solaris, Win32, Win64, WinCE go32v2 (I think that's MS-DOS with 32bit extensions!), OS2, Netware(!), BEOS, Haiku(?!), QNX, wdosx(?), emx, netwlibc, Atari, Amiga, Palm-os, Gameboy advance, nds, MacOS, Morphos, Plus, there's experimental support for IOS and Android. On top of this, the thing can use widget sets from QT, GTK, GTK2, Win32/WIn64, Carbon, fpGUI(no idea), Cocoa or no GUI at all, with various degrees of implementation transparency.

Its an exhaustive list!

So Caveat Emptor. I strongly recommend Delphi coders download this and do some personal projects to get a feel for it, not on the boss' dime, but there's a lot of depth and substance to Lazarus, and it's potentially a vital tool in the belt for dealing with life outside the Windows crib.

Plus since Delphi's new masters still haven't learned a !@#$%^&* thing about why Delphi fell from grace (Hint, make it affordable or free to hobbyists and students to learn and create custom components) , it's really the only budget option available. If Embarcadero ever wake up, maybe that will change. Until then, viva Lazarus.

*20+ years ago in 2023, this answer is 11 years old at this point.

Metameric answered 10/4, 2012 at 0:10 Comment(15)
Thank you, @Shayne, for that excellent history and discussion. +1Ballista
Thank you for that thorough answer. As a Delphi user since v1 (and Turbo Pascal 3 before that), I'm definitely going to have a better look at Lazarus.Zakarias
"but Lazarus can be tempramental at times" - In the last years Lazarus turned solid and stable. Unfortunately, I cannot say the same. AS the years passes Delphi is getting unstable. I SPENT money recently to get a Delphi XE7 license which is very unstable. I have another friend that purchased XE3 some years ago and never used it (it stick with XE1). If one release of Lazarus turns unstable at least you HAVEN'T PAID 1000euros+ for it!Stretto
I agree, @Frostyfrog , I had another look at it recently, and it really is quite a useable IDE.Metameric
I should note I havent been able to get lazarus to work on OSX for a while now. Apparently something to do with gdb and code signing, but all the fixes I've tried havent worked. So I'm stuck on the PC with this one for now :(Metameric
And FPC supports AVX2 in the internal assembler. Several of my Delphi apps currently load a FPC generated dll for amongst others MD5 (partially library, but that is easier since FPC has a ROR/ROL intrinsic that speeds up MD5) and AVX(2) usage).Altarpiece
I did a project recently with Delphi for a govt client as the library I needed just wasn't going to play nice with Lazarus. Delphi has fallen waaaay behind on its IDE. The core old school experience was still there, but the debugger and lack of insight in the IDE towards code faults made it an extremely unpleasant experience. Frankly I think Lazarus has exceeded Delphi now.Metameric
Further update: The GDB issues seem to be a lot less painful now and theres significant work (its useable mostly) towards lldb compatibilityMetameric
2020: Update: The release of OSX Catalina has left us mac users without a functional Lazarus. downloads and homebrew builds are still 32 bit, and MacOS doesn't support 32 bit apps anymoreMetameric
Aaaand its all (mostly) good again. What a rollercoaster this is folks! Hopefully there wont be TOO many showstopping architectural changes to security or permitted CPU architectures in OSX going forward. Hah , who am I kidding, the ARM macbook is probably just around the corner. WheeeeMetameric
Boy that was apt of. me. Any news on Larazus for the Arm macs?Metameric
2022 update: I'll answer my own question: It works fine on the ARM macs.Metameric
I've used Delphi 7 through XE7 Ultimate. I want to upgrade for some Linux compatibility, so I checked out Lazarus this morning for the first time, and I'm blown away. I absolutely love itRebuttal
Delphi now years has nothing to do with delphi by borland. Someone must thell those guys that programmers need a Fast ide and not a funcy ide with thems and images.They took Delphi 7 and they start add libraries nad so one that was okey but why they change the IDE thats was their mistake.I switch to Lazarus because have the feel and look of old delphi;s and i still keep my Delphi5 for all isapi and console apps.Decision
Yeah I'm a fan of the old ide too icinema gr. Although truth be told the current state of the art (intellij, visual studio, MAYBE eclipse though I havent used that in a decade) is far beyond where the various obj-pascal ides are.Metameric
L
30

The two main reasons for me are

1) Multiplatforms support (Linux, Mac OS X, Windows)

2) The price $0

Lecythus answered 4/5, 2010 at 3:38 Comment(9)
@RRUZ: But don't you have to purchase Delphi anyway to use it within Lazarus? Then you've already got the Delphi IDE, sort of at no extra cost.Ballista
@lkessler, Lazarus don't have any commercial relation with Delphi, they are two different products.Lecythus
Yes, we know that, Rruz. But since you already have Delphi, why would you use Lazarus to write your Delphi code instead of just using Delphi? (You must have Delphi, or else you wouldn't be a Delphi programmer, and recall that this question specifically asks why a Delphi programmer would use Lazarus.)Nineveh
@Rob, in my personal experience , I use lazarus, instead of Delphi, when I needed to develop a Linux desktop application for my customers. because unfortunately, Delphi still does not support Linux.Lecythus
@Rob: Well, I would probably use it if I had to (natively) target a platform that Delphi does not yet support (such as 64bit!!!) and didn't want to learn a new language - all the while hoping that the project could later be ported back to Delphi once Embarcadero add support for the target in question.Chlortetracycline
@Rob - some years ago CodeGear decided to "clarify" what "Delphi" was... they decided to create a Delphi "brand", giving us "Delphi Prism" (the Delphi language in the Visual Studio IDE), "Delphi" (Delphi language in the RAD Studio IDE) and "Delphi for PHP" (neither Delphi language NOR RAD Studio IDE - basically nothing what-so-ever to do with "Delphi" other than by decree). (continued...)Apogee
@Rob (...continued) So it is possible to use Lazarus to "do Delphi" by the original and most sensible definition of Delphi as a specific variant of the Object Pascal language, with which FPC is compatible, rather than the later definition as an IDE or framework product or "brand".Apogee
The way I see it, @Deltics, people who don't write code intended to eventually be compiled by dcc32.exe are not Delphi programmers. (Let's ignore Prism for now.) They might intend for their code to also be compiled by fpc or fpc.exe, and that's fine, but if they aren't using the Delphi compiler at some point, then I don't think they fit the demographic mentioned in the question, "Delphi programmers [who] use [Lazarus] instead of the Delphi IDE." All I see are answers about people who don't use Delphi at all, or who use Delphi for their Delphi projects and Lazarus for their other stuff.Nineveh
I'm a FPC developer nowadays, but thirtheen years ago I started with FPC because Delphi couldn't generate CGI's for my (FreeBSD) web-account.Altarpiece
T
21

Well a Delphi programmer cannot use Lazarus to write Delphi code because Lazarus is not Delphi. Lazarus is actually an IDE and a bunch of Delphi-ish class libraries for Free Pascal. But note, things like Delphi's VCL is not there, and to be perfectly blunt the IDE and debugging experiences in Lazarus are pretty spotty, however it is free, so that counts for a lot.

Bottom line, Delphi <> Lazarus. Use Delphi if you want a great IDE and debugger huge 3rd party support and tech suport you are targeting MS Windows, plus you are willing to pay for it. Use Lazarus (free pascal) if you want a Free IDE that supports multiple platforms and has a Delphi-ish syntax.

Thrush answered 4/5, 2010 at 4:2 Comment(6)
A Delphi programmer certain could use Lazarus to write Delphi code. Heck, a Delphi programmer could even use Notepad to write Delphi code. The premise of this question is that there are Delphi programmers who use Lazarus to write Delphi code (not Free Pascal code). Ikessler asks why they would do that. If your answer is to deny the premise, then could you please be more explicit about it? Otherwise, I don't see how you've answered the question at all.Nineveh
Hey Rob, Perhaps I should have said to write and compile Delphi code. sure you can write Delphi code in anything. My point was the dialect of pascal and the class libraries used in the 2 products whilst similar are not interchangeable. (except in the very simplest of cases)Thrush
I've Lazarus on my private laptop. With recent versions, I've setup projects (visual ones even) on that laptop and then loaded them into delphi at work. With some DFM cleaner tool it is not much different then moving between Delphi versionsAltarpiece
"Delphi != Lazarus" ... shouldn't that be "Delphi <> Lazarus"? grinEbro
@Ebro +1 for making me smile - all that time I was staring at the screen ;)Preamplifier
This answer makes little sense. What Borland (Codegear/Inprise) calles "Delphi" code is what they used to call "Object Pascal" code, which is what everyone else calls it anyway. Delphi is just an IDE just as Lazarus is. Either one can be used to write Object Pascal code. More to the point, FreePascal even has a "Delphi Compatibility Mode" that makes the language syntax and defaults more like Delphi. If you want to say "Delphi is better supported because it's commercial", just say it. Both have features that the other does not, however.Leman
C
15

Lazarus is cross-platform and free both as in speech and beer, while Delphi is neither. Lazarus does use a different compiler that compiles a language 99% compatible with Delphi, and provides a different visual component library, similar to but not compatible with Delphi's VCL.

Cycad answered 4/5, 2010 at 3:40 Comment(14)
@glebm: But Delphi isn't cross-platform (yet).Ballista
So, are you saying that you write your Delphi programs on something other than Windows? Why else would it matter that Lazarus is cross-platform?Nineveh
Cross-platform meaning you can write on Windows and then compile it for Mac or Linux as wellCycad
@Ikessler Delphi isn't, Lazarus is. Lazarus doesn't use Delphi at all, it uses FreePascal compiler.Cycad
Then, Glebm, are you saying that you don't compile your code with the Delphi compiler?Nineveh
That is, indeed, what I am saying. Lazarus uses a different Pascal compiler (FPC).Cycad
So, if you don't use Delphi at all, then how are you a Delphi programmer? And if you're not a Delphi programmer, then could you please clarify why you think this answer would be appropriate for people who are Delphi programmers?Nineveh
Delphi the language <> Delphi the IDE. Delphi is a name of a language (that was called Object Pascal before Borland Delphi 7 came out). The language that the FreePascal compiler compiles from is Delphi the language (99%). Delphi compiler, which also compiles from Delphi the language, is, however, a completely different product. I hope that clears things up a bit for you. I am not a "Delphi programmer", I am a Software Developer. :)Cycad
For further reading on Object Pascal (another name for Delphi): en.wikipedia.org/wiki/Object_PascalCycad
FPC still names it Object Pascal, since Delphi is trademarked. While it isn't perfect (there are multiple Object Pascals, like Apple's, though most of them are dead or near dead) it reflects its pedigree, and is wellknown, so it is IMHO better than some synthetic new name.Altarpiece
I think its worth noting Marco that whilst for trademark reasons FPC does indeed call it Obj Pacal, the switches still differentiate between a Turbo-pascal Objective pascal mode and a Delphi Objective pascal mode. There are subtle differences between the implementations that fortunately FPC does a stelling job of accounting for.Metameric
lack of Linux support in Delphi is a major problem for a Delphi developer. This is the reason why i installed lazarus (but still not used yet seriously).Lati
A friend once joked that Kylix (the old Delphi bludgeon attempt at linux) was "Free as in Dom perignon, but not nearly as pretty"Metameric
Shayne: please call it object pascal. Objective Pascal is again a different dialect, a more Objective C derived dialect for OS X interfacing that FPC also supports as a 4th object model. (besides TP, Delphi and Apple Pascal variants of object pascal)Altarpiece
K
15

Maybe I'm just reading this wrong, but you seem to be under the impression that the IDEs are somehow interchangeable. That's not correct. Lazarus is built on top of the FPC compiler and is tied to it in much the same way that Delphi is tied to the DCC compiler. Also, they use different form description file formats. Delphi can't read LFMs, and Lazarus can try to read DFMs but it doesn't do a particularly good job of it.

FPC/Lazarus is very similar to Delphi, but it's a different dialect of Object Pascal and it would be a mistake to think they're equivalent.

Kwang answered 4/5, 2010 at 4:45 Comment(7)
Why cant Lazarus read text based DFMs, that seems crazy? Its a really simple format.Unicycle
@Toby: I don't really know. It sort of can, but what you get ends up looking all wrong. Controls in the wrong positions, etc.Kwang
Mason: did you tried with a new project, or opening old lazarus code? Basic form editing was fairly compatible to me. If you used older Lazarus projects, some of the older workarounds for unsupported Delphi functionality might cause problems.Altarpiece
@Marco: I tried with converted Delphi projects. It's been a while since I last tried, but every time in the past that I've attempted it, it gets the form layouts completely wrong.Kwang
Also happens with different delphi versions.Altarpiece
delphi form file compatibility across different delphi versions is great, at least if you are moving up. I recently did D6 to 2010 and it was handled perfectly.Prowess
Its probably a smart idea to reimplement the forms anyway, and in a matter allowing you to have different layouts for mac , pc and linux as all 3 have different useability standards (Ie flat for windows, and cocoa-ish for mac). Most of the business logic should translate fine assuming its not too dependent on third party libraries that dont have FPC versions (And many do these days) but its probably a good thing to have another pass at the UI. Of course if your using modern MVC style design patterns, that shouldnt be too hard ;)Metameric
C
13

I have a sound recognizing algorithm running on Delphi. When my superior asked to run it on WinCE I tried Lazarus. Pascal is Pascal. Lazarus is super. I have done it.

Algorithm is written in Pascal. I tried to convert. C# was prone to decompile and used different logic. Luckily I've found Free Pascal.

I have it running on WinCE on ARM. Thanks to all FPC collaborators.

edit: I have it running on Linux too.

Christan answered 7/5, 2010 at 7:31 Comment(0)
C
9

Yes, Linux is installed on 70% of servers. It is powering the Facebook which has 400,000,000+ users. And you tell me to use Windows? You tell me not to use 64 bit?

I will use Lazarus. Until Delphi catches on.

Christan answered 7/5, 2010 at 9:41 Comment(0)
C
8

Main reason for me - Delphi cannot currently compile 64bit apps and as such cannot see, read or write certain registry keys.

Cultch answered 5/5, 2010 at 5:57 Comment(5)
in fact you can read 64 bit parts of the registry from 32 bit processesProwess
In order to see how this is possible, I refer you to msdn.microsoft.com/en-us/library/aa384129(v=VS.85).aspxProwess
"in fact you can read 64 bit parts" unfortunately only parts - there are 64 bit reg keys that do not show up. At the time I posted this I found a number of 64bit keys missing from SOFTWARE\Wow6432Node\Classes\Filter\. The 64bit app I wrote in Lazarus sees all the keys.Cultch
Possibly I may have had different results with Dephi if I had used RegOpenKeyEx() instead of the TRegistry functions. On the other hand I was able to take my original code (to handle registry info) and use it (as I recall) unmodified in Lazarus.Cultch
Update: Delphi XE2 has support for 64 bit Windows now.Dandruff
M
8

Well, I am one of those who uses Lazarus IDE to write Delphi source code.

I Like Delphi a lot. But use Delphi's editor is really a painful. I've tried VIM, and always dreamed to have an IDE like visual studio: simple, clean, and can split window horizontaly or vertically...

Finally I found Lazarus editor, way much better than Delphi's. So I use Lazarus write Delphi source, and RAD IDE is just for compile and debug.

Miserable answered 16/2, 2012 at 6:18 Comment(7)
Would you mind expanding on that? All you really said is that you like split windows. I'm very curious what else you find in Delphi's editor that is "painful" that Lazarus is much better for.Ballista
I should note here that Lazarus' IDE is very similar to Delphi 4's. Thats not a bad thing by the way, many of us feel Delphi 4 was where the IDE was at its optimal. All subjective , of course.Metameric
Yes, the Lazarus IDE is much freakin' smarter than the Delphi IDE. When you paste a bunch of code, it correctly indents it. It can code-compete method overrides, when changing a function prototype and ctrl-shift-up/down jumping to the implementation, the cursor is AT the place where you need to fix it, and it even code-completes the change for you as well! It's an enormous time-saver, provided you know your keyboard shortcuts. Seeing how it should be done makes me wonder why Delphi isn't like that by now. Unfortunately for Embarcadero, Lazarus/FPC will crush them. They can't catch up anymore.Livy
I'd like to add that the question is specifically about the IDE, and that this wasn't substantially addressed. That said, I want to reiterate: Delphi is a dying breed not just because of the expense, but because FPC is available everywhere. Also, the open nature provides opportunities for anyone to fix nagging issues, like the code-completion enhancements found in the Laz IDE. Note that this is extremely important. A great part of the code is humdrum stuff, like repeating function signatures in interface and implementation. This should be a total breeze and in Lazarus it very much is.Livy
@Ballista sorry it is been a while. here are something I noticed:Miserable
I know it's an old post to comment on, but I've had a big realisation that Lazarus code editor is amazing and beats Delphi's in so many areas. It's more intuitive, has very useful features, and is more solid. Delphi editor (Delphi 11 Alexandria) undo/redo messes up so easily, it's a joke! The stupidity of simply changing cursor position/clicking somewhere clears the redo! Bookmarks work like they did in 1991. Joke. I have an old version of Lazarus on some laptop and had to use it recently and I must sincerely admit it's better, WTH! GRR.Eddaeddana
I'd argue delphi dying is almost entirely the cost. I just dont understand why with 30ish years of data to go by how Embarcadero still hasn't worked out that the absurd pricing loses them money.Metameric
L
7

For me :

  • 64bit is alive (Delphi... yes may be, not and yes again, and finally no...)
  • Cross platform (Delphi not) By the way a lot of works still have to be done but it works !
  • FPC is a very good compiler
  • Community is cool and active
Lantz answered 28/12, 2010 at 9:30 Comment(0)
M
4

I don't have that much new to add, but I thought I'd relate my crossplatform experience. As far as putting together a cross platform application sketch fairly quickly, I find Lazarus to work very nicely. I've recently been using MonoDevelop of which there is much to commend, but the gui designer stetic doesn't seem as complete as the Lazarus GUI designer. Or is it the toolkit (GTK#) that seems to lack some bits? Before that, I've used Qt / C++ which also seemed to work out fairly well for crossplatform development, but I'm not real keen on C++, and Qt's signal/slot framework is a bit curious, but works well once you get your head wrapped around it. In sum, I find RAD work, and coding using Lazarus to be mostly joyful, besides, what a cool name for an IDE!

Cheers

Micrometer answered 25/11, 2012 at 15:56 Comment(0)
B
3

Only CodeTyphon/Lazarus/FreePascal supports 4 CPU/OS hosts (Win32, Win64, Linux32, Linux64), and 16 CPU/OS targets (arm-WinCE, arm-Linux, arm-Embedded, arm-gba, arm-nds, i386-Win32, i386-Linux, i386-FreeBSD, i386-Haiku, x86_64-Win64, x86_64-Linux, x86_64-FreeBSD, powerpc-Linux, powerpc64-Linux, sparc-Linux, sparc-Solaris). More platforms are supported in Lazarus/FreePascal, but others are not yet integrated in CodeTyphon. One code to rule them all ;-). CodeTyphon is a powerful one click installation package for cross platform native Delphi like RAD/IDE based on Lazarus/FreePascal that eliminates painful cross platform setup. You can start coding just few minutes after the download, so if cross platform, 64 bits or price are key benefits for you then choose Lazarus over Delphi. Lazarus is highly compatible to Delphi, and I have converted few applications without much problems. It is possible to maintain code that compiles on both.

Blouin answered 29/12, 2010 at 9:18 Comment(1)
Last time I checked, CodeTyphon has serious licensing issues with some of its internal libraries. There is a preliminary FMX code - the DXScene product - supplied as their own "Orca library". I suspect other copyright infringements apply. I would not recommend using it, but rather github.com/LongDirtyAnimAlf/fpcupdeluxeDandruff

© 2022 - 2024 — McMap. All rights reserved.