Maybe I am too old when I still love the syntaxs that are used in TurboPascal : no record's constructor nor record operator .
Maybe. But maybe you very long ago not look into source of Delphi RTL for a examples of using modern features (little yet). Do it now. I have 20 year Pascal background (I am not too old?) and i love his new features.
I have 15 years alive with pascal. Still using Delphi 5,6,7 (because my company projects depends on huge of proprietary packages). I did hard eliminate them with handmade components/package.
Hi kazalex, you cut my paragraph and pin up the separate sentence of it which is come to different meaning.
I can say that you are too busy to read to get the correct purpose of what actually I want to say?
Generally, I have no problem with Modern syntax introduced and supported by both FCL + Delphi...
so, of course I am fine with Delphi RTL + FCL RTL !
However, personally I always avoid to use "record that act as class", I mean when we need properties/methods/constructor why not using "object" or "class" rather than
ambiguous "record" (though FCL/Delphi recognize it as well).
IMHO,
record is not a class nor an object. In my brain: record can be used just like string :
no constructor required for instantiate a string.
While a record has properties etc., what is the result of : SizeOf( TMyRecordRect ) ?
The answer of this question is very important for me,
I love the classic approach of record that is only member allowed.
This idea exactly come to me from
TVirtualTreeView that allocate array of record to gain lightning speed, instead of using TCollection+TCollectionItem, nor using TList which are slower when are allocated in huge amount.
----------------------------
Back to original topic, is Delphi adopted FPC?- The non-secret fact is : Lazarus adopting Delphi. It is done by FPC supported inside. Whatever I can do with Delphi, I can do with Lazarus, and in some cases was in better way.
- The secret fact is : Delphi adopted C# OOP approach such by allowing "record" to has such constructor and properties (which is not original pascal OOP aproach).
- Eventually seem as fact : FPC seem to adopting whatever Delphi could do, including that new record's behavior.
FPC/Lazarus tries to be Delphi compat, Delphi tries to adopt/clobber/be compat with FPC...is this a perverted never ending "snake biting its tail" loop?Okay, ac(h)cording a violin with a guitar won't push the music out of the Art!But my opinion is = Delphi and FPC/Laz should stop running each after the other and begin a separate life
@sam707: no way! don't let it stop. The winner is their customer. Competition is good for quality.
There was a day that Turbo Pascal was single player, leaving Quick Pascal, Intel Pascal and other competitor away. What then happened ?
Delphi was single player in "Visual Pascal", then company turn into .NET in Delphi 8, dropping away their very best support of Win32API.
The fact: Delphi require competitor in the same base. If they don't meet any, they turn to make somebody else to be their competitor in another competition (compete with Visual Studio / C#)
The love hate relationship of freepascal and delphi is required at this stage of development. Hopefully in a few more years lazarus and lcl will have enough customers to stand to its own feet.
Fully agree.
Lazarus probably just need to spread more, make more advertising, fund-rise, whatever to bold the state that FPC+Lazarus is not worse than Delphi.