[fpc-pascal] Delphi for Linux is out

Zoë Peterson zoe at scootersoftware.com
Fri Mar 24 20:38:24 CET 2017

First off, I’m sorry for implying that the current units are insufficient.  I just looked through our code and we’re using far fewer “external ‘c’” definitions than I thought we were.  The documentation generally looks good too, so I assume most of trouble was from not being as familiar with Free Pascal’s RTL layout and using search techniques that worked better for Delphi/Kylix than for it.  We had to maintain both FPC and Kylix code in parallel for several years too, and that undoubtedly made things more complicated than they would have been otherwise. I’ll keep that bias in mind in the future.

On 3/23/2017 2:40 PM, Michael Van Canneyt wrote:
> No-one has ever offered to maintain a Libc import unit. It was provided
> only as a courtesy to Kylix devs.

That's probably because the Wiki says:

"The libc unit is deprecated, and frozen in time for Kylix compatibility, and won't be ported to other architectures or operating systems."

It also has a long list of other reasons why the entire idea is flawed.  We had a rough port to both Linux64 and Darwin32 but never tried to submit those changes back for that very reason.

> That said, if someone steps up and offers to update Libc for all
> supported architectures, she/he is welcome.

This is another instance where you’re (possibly unconsciously) discouraging people from submitting patches.  By saying “update ... for all supported architectures”, you’re implying that adding Linux64 or Darwin isn’t worth it unless they also spend time on ARM, Haiku, and uclibc.  I certainly understand that from a idealogical point of view, but if someone doesn’t have the time or knowledge to cover everything, it does make it seem like a partial patch wouldn’t be welcome.  OTOH, maybe that is intentional, and I can’t say it’s wrong, since it does provide a high barrier to expanding the scope of that unit.

In any case, it’s not relevant for us now.  As I said, we recently removed all of our Libc.pas usage.

On 3/23/2017 4:29 PM, Marco van de Voort wrote:
> Could you name the mantis items with improvements/problems ?

No, though I’ll try to submit some for the cases where there could be improvement.  

The only thing I can think of that would have been retroactively useful is if Libc.pas had included deprecated declarations with messages saying where the replacement units/methods are.

Zoë Peterson
Scooter Software

More information about the fpc-pascal mailing list