Anyone knowing Pascal will have no problem jumping to C# because it will swim in familiar waters, only difference is that being a Microsoft product has C style syntax.
Anyone knowing Pascal will have no problem jumping to C# because it will swim in familiar waters, only difference is that being a Microsoft product has C style syntax.
Free Pascal has gone further to add management operators, vector math intrinsics, and improved array features.
...and .NET in tow.
In any case, i think Free Pascal does have variable lifetime analysis so its optimizations shouldn't need that either.
His work on C# is widely thought to be a continuation of his work on Delphi.
Still, I can understand the issues. Let's not forget that despite his work in the field, Hejlsberg isn't Mr. Pascal, that would be Niklaus Wirth. Who always had a way more minimalistic design perspective than others, starting with Algol-W and ending with Oberon-7. Comparing that to the kitchen sink approach of C# (and arguably even Object Pascal) shows two philosophies that can hardly be more different.
Specifically the infamous yet influential essay "Why Pascal is Not My Favorite Programming Language" has a laundry list of reasons why academic Pascal is hard to use "for serious programming", and many of them have been corrected in Delphi.
When Free Pascal is concerned there is no argument here... consider that the compiler has a special language "submode" that enables syntax just for interfacing with Cocoa/Objective-C objects (...or even the whole idea behind having different language modes and submodes in the first place - that is totally antithetical to Wirth's ideas, but in practice it is very useful).
Then don't look at c# version 9. There's an expressive and modern (immutable and null safe by default) language somewhere in there struggling under the weight of previous syntax and semantics.