[Lazarus] THelpEvent declaration discussion
Hans-Peter Diettrich
DrDiettrich1 at aol.com
Fri Nov 6 18:19:51 CET 2009
Graeme Geldenhuys schrieb:
>> FPC imports more oddities from Delphi, like the new change of Inc()
>
> That broke my code too, but if it fixes some odd cases or ambiguous
> code, I'm all for it. It was quick to fix my code anyway.
Breaking changes are not desireable at all, without an option to disable
them. Delphi has already forked into incompatible Ansi and Unicode
versions, which require to retain an Ansi compiler, IDE and RTL/VCL for
the maintenance of legacy projects. FPC and Lazarus should not follow
that bad example, since it would restrict the use of newer target
platforms to the use of the new semantics - an idiocy par excellance :-(
In the IDE (both Delphi and Lazarus) it would bind the use of new
features (refactoring, widgetsets...) to the new *semantics of the
programming language*! But while the Delphi IDE is bound to an specific
compiler version, in Lazarus it's at least possible to specify an older
FPC version for legacy projects. This feature would be broken when the
LCL has to be modified for any idiocy of newer compiler versions :-(
>> the Delphi VCL and RTL interfaces, I'd wait for Delphi "X" before
>> changing anything, or for the death of Delphi, whatever happens
>
> That's like saying FPC cannot evolve without Delphi.
I really wonder what's the reason for the breaking modification of
property handling - if not Delphi compatibility.
> That should never
> be the case! FPC is a product on it's own - delphi compatibility should
> be a "nice to have".
And that's why a *compiler* should not define new standards! A language
can evolve, and new front-ends can be added to an compiler, but the
other parts of an compiler should not depend on changes to the
front-ends (languages).
> Look what happened to Borland when they trying to
> wait and see what .NET or Visual Studio does before they support those
> features. Always playing "catch-up" is a recipe for disaster and you
> will ALWAYS be second best.
The dominance of Borland, in the development system area, has been
broken many years ago. Since that time it's a stupid idea to invent new
wheels, because they will be broken by the market leader very soon. The
Delphi language could have been made more popular by providing a VS
plugin - as has been done by RemObjects. This product has survived as
Prism, while Delphi.NET had to be trashed very soon.
As mentioned some time ago, CodeGear and FPC/Lazarus could cooperate
very well, and together they could place alternative multi-platform
development systems, that could stand against VS and .NET. Delphi could
adopt the widgetsets and LCL from Lazarus, and the cross-platform and 64
bit compiler from FPC, while FPC and Lazarus could use the Delphi help
contents, and could continue to set new standards and offer native
development systems (IDE) for all supported platforms at the same time.
Otherwise CodeGear will have to spend some more money on the development
of their own compilers, what IMO will result in the next - and possibly
final - financial desaster.
Another interesting product with little competition were the support of
Modula and Oberon (like) languages by the FPC. Based on the same (FPC)
compiler it would be possible to write multi-language projects, like
it's possible with .NET. IMO this is the way how breaking language
features could be added, and the well known problems with the stone-age
Pascal language could be cured, instead of resulting in endless debates
over source code formatting and other fruitless "innovations".
DoDi
More information about the Lazarus
mailing list