Because of
that, Delphi language features are very behind compared to the
developer demand.
In my personal view, there are very few points that are shared by Delphi
and FP and that are "very behind compared to the developer demand".
The main of these is multi-threading support.
While both Delphi and FP do have the very workable TThread, same was
planned with an application in mind that runs on a single processor
engine and is mainly intended to free up the GUI thread when long winded
calculations are to be done, so that the GUI does not freeze.
.NET introduced some very interesting new concepts on parallel
programming that are easy to use and are planned with the application
running on SMP machines in mind.
RemObject's "Oxygen" implemented these concepts in Object Pascal "Delphi
Language".
As theses concepts, while being "invented" by .NET, can decently be
implemented in the RTL without using (or even thinking of) a .NET
runtime, IMHO it would take FP a great step ahead (of Delphi :) ) if it
would provide these concepts.
The language constructs "*future *variables" and "*async* expressions"
allow to easily "spinning off" an instruction sequence from the running
code into the background (and thus allow it to be calculated by another
processor). See: http://wiki.remobjects.com/wiki/Future_%28keyword%29 I
feel that this can be (quite easily :) ) be converted to using (a
special kind of) TThreads by the RTL.
Maybe there are some more .NET goodies that can be implemented without
actually using .NET. http://wiki.remobjects.com/wiki/Oxygene_Glossary
might provide some hints on how these can be translated into Object
Pascal enhancements.
-Michael
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel