New platform, new RTL and new compiler
Since airing my ideas about pascal and where it should go has led to, ahem, a rather substantial loss of intellectual property in the past – I wont divulge the inner workings of my latest platform beyond the general concepts.
Smart mobile studio is a really kick ass system and it has been greatly expanded and perfected by Jørn, Eric and Primoz – which continue to polish the product and (to be honest) making it what Embarcadero should have done with HTML5 Builder (or Delphi for php, they keep changing the name of the product – but the product is essentially crap).
The missing bits
What I had in mind was, to some extent, what FPC and Lazarus started on but over time lost track of. Freepascal runs on just about everything – and the low-level units such as System and Sysutils provides a universal foundation on which the entire FCL rests upon (with some exceptions like embedded systems and mobile platforms). On top of that you have the windowing toolkit, the part which provides you with forms, buttons, listboxes and custom controls – which under lazarus is so flexible that you can actually initialize from DOS and have a fully “windows-like” system up and running without X or WinAPI taking care of the dirty bits. To sum up: Abstraction, abstraction, abstraction. The less your code depends on the OS the better.
We need a pascal that can go everywhere! A system which can quickly adapt to marked changes and new gadgets. Waiting 5 years for Embarcadero to truly support iOS is a disaster (!) The marked is saturated, every game and productivity application now already exists – and you are left with scraps. At this point you can only compete on the level of features. Thats not my idea of a living, vibrant language.
We should have been there instantly! The moment the vendor CPU specs and SDK was available – Object Pascal should have been there. Spartans forever, first in to capture the flag. Semper fidelis.
In terms of technology Android is a curiosity, the oddball and sore thumb. It is based on java rather than C++ (although the bootstrap which is executed when your phone boots is pure C and assembler). Every other device happily runs C/++. To be more precise: GNU C++ which is the most widely used, free, C++ compiler in the world (and also the most esoteric, unix centric beast ever invented). Intel have developed their own C++ compiler which ships with their products, but most vendors simply adapt the GNU C++ toolkit to their product processor and build on that. Second through the door after C++ and Java (which in my view is not a language but an abomination) are languages like C# (via the mono project) and weird stuff like python.
Why is this? Why are these first when, to be honest, the freepascal codebase is just as easy to adapt (if not more) to a new architecture as C++?
This is where the power of the original vision comes into play. We dont compile for the CPU. We compile for whatever language is already present on the platform from the hardware vendor. So if Intel is behind the CPU, then we compile for their C++ compiler. If its a normal system then Gnu C++ or whatever fork is used. Same with iOS — we compile for Objective C and become, as the saying goes: If i have seen further, i have done so standing on the shoulders of giants.
But thats just the beginning.
And with that, I’ll leave you hanging … until my next invention is ready to make you go “holy crap thats impossible” 🙂
I am looking for investors. Proof of concept has already been given in terms of a living product.