Ich sage jetzt nicht, dass es unmöglich ist hier Abstraktionen einzuführen, nur hat es bei FPC bisher noch niemand gemacht...
Genau das meine ich. Es geht ja nicht nur um die relativ Simplen Dinge wie Filezugriff und Netzwerk I/O. Spätestens beim Zugriff auf die UI-Schiene (also im Prinzip an der einzigen Stelle, an der Delphi noch vorne mitschwimmt) fehlt Dir alles. Die
VCL ist Win only und Firemonkey fehlt der Zugriff für Linux.
Da ist man ja sogar mit Windows Forms in C# besser bedient, das läuft sogar auf dem X Window System und auf
OS X.
Ansonsten sind andere
API's die schnell problematisch werden (insbesondere auf mobilen Geräten): GPS, Beschleunigungssensoren, Webcam(s), Touchinput.
Letzten Endes nimmt man eine Managed Schicht, die dazwischen liegt und einem die
API's alle transparent durchreicht (Mono / Unity), oder man muss alles selber wrappen, damit man einigermassen portabel drauf zugreifen kann. Das Argument vom TE war ja schliesslich hier die Portabilität auf andere Plattformen. Klar kann man hier FreePascal nehmen - aber dann verbringt man mehr Zeit damit die unterschiedlichen
API's der Plattformen auf einen eigenen gemeinsamen Nenner zu bringen als seinen eigentlichen Businesscode zu schreiben. Und das das nicht wirtschaftlich sein kann, wenn man das ganze Zeug schon für kleines Geld und mit Support fertig haben kann, darüber sind wir uns vermutlich einig?