[Lazarus] Please define "delphi compatibility"

Mark Morgan Lloyd markMLl.lazarus at telemetry.co.uk
Thu Oct 4 11:36:47 CEST 2012

Malcolm Buckingham wrote:
>> I don't see a great point in using Lazarus for Windows-only 
>> projects, at least for those that already did projects with 
>> Delphi. At least for former Delphi users, portability is the 
>> main reason for using Lazarus so this should be the primary 
>> goal, even when thinking about Delphi compatibility.
>> -Michael
> In my case this is *NOT* true; and I suspect it's not true for many Windows
> users of Lazarus. In my previous company I used Delphi versions 3, 5 and 7.
> Beyond version 7 there were too many compatibility issues with existing
> code, and the price became too high.
> Now that I'm self employed I have moved over to Lazarus/Free Pascal. This is
> partly because of the cost but mainly because I'm comfortable with the IDE,
> form designer and compiler. In many ways it is similar to the older versions
> of Delphi; this is NOT meant as a criticism.

Points seconded.

> Looking at the download statistics at SourceForge it seems that over 70% of
> this year's downloads have been for Windows. Now, it may be that people are
> using Windows to cross compile for Linux; but I doubt that it is very
> common.
> The customers I write software for are exclusively Windows based. For me it
> might seem that having Lazarus cross-platform is a hindrance since the
> developers are continuously having to deal with OS
> differences/incompatibilities. In practice it probably makes Lazarus a
> better product since more care has to take place during design.

Which applies to both Lazarus/FPC and to projects built using them: even 
if targeting Windows, it's probably worth running a project through the 
compilers for different platforms so that potential problems are at 
least identified.

> It would be interesting to know what percentage of programmers using Lazarus
> are developing cross platform software. Unfortunately I suspect that answers
> obtained via this list would be skewed towards multi-platform.

However, I think that you're confusing "cross platform" with "not using 
Delphi's supported platform(s)". My own suspicion is that far more 
people are targeting a single platform (Linux, BSD, potentially Android 
etc.) than are seriously trying to make sure that their code runs on a 
collection of different OSes and CPUs (with different word size, 
endianness and alignment requirements).

Perhaps a straw poll either here or in lazarus-other is in order: "Of 
what you consider your live projects, what percentage do you actively 
maintain for more than one combination of OS and CPU?".

In my case I'd say about 75%, but I'm not shipping to customers these days.

Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

More information about the Lazarus mailing list