Feeds

Born Again Delphi

A word in CodeGear's shell-like

Maximizing your infrastructure through virtualization

Stob Mr Nick Hodges of CodeGear and Embarcadero and not Borland blogs amusingly about the obscure corners of Delphi syntax. Delphi Pascal apparently still implements a Jensen and Wirth era feature whereby [square brackets] can simulated by the sequences (. and .). In the olden days,

MyArray[5] := 0;

could look like this (assuming my exotic characters aren't eaten by El Reg's CMS)

MyArrayÄ5Å := 0;

when displayed on a 1982, methylated spirits-burner powered, Ericsson video terminal. So Prof. Wirth decreed it that

MyArray(.5.) := 0;

should mean the same thing. (In my ancient and limited experience, the cure is worse than the disease - even more so with C's ghastly trigraphs. But I digress.)

Mr Hodges uses this as a leaping off point to discuss the future of Delphi. In essence, the plan is this: CodeGear is embarking upon a mega rewrite of the compiler. Henceforth it will be, he says, easier to target new platforms - CodeGear is thinking about a 64-bit version next, and who knows what after that. More interestingly, CodeGear is planning to split and duplicate the front end of the compiler so that it can handle both existing Object Pascal, and an incompatible variation of the language with 'a new, non-legacy syntax'.

In other words, future Delphis will support two dialects of Object Pascal, linkable at module level, but syntactically incompatible.

CodeGear is surely not doing all this to be rid of the obligation to support (.Wirthian simulated square brackets.). They are going for the Big One. But Mr H is silent on what extra features the newborn language will contain.

Therefore, now is a good time for an esteemed and respected tech columnist (or, failing that, me) to nail to CodeGear's door a list of all the changes, features and must-keeps that that esteemed and respected person (or I) would like to see in the new language.

Maybe this is not quite what Mr Hodges and friends would prefer at this juncture. Sorry, Mr H. The second best-known observation of Sir Michael Jagger is applicable in this context. Besides, you get to throw that gag back at me in a moment.

Enough chit-chat already. Here is my list of completely reasonable demands:

Compilation, compilation, compilation. One feature of Delphi and Turbo Pascal that has consistently distinguished it from inferior languages is that, in my experience, one can generally complete a Delphi build in less time than it takes Netbeans to coax the Java compiler's flabby backside off the magnetic media.

As I understand it, this speed advantage is in part achieved by the .DCU object file format, which is actually a raw-ish dump of the Delphi compiler's output buffer. On the one hand, it's really easy to write out and load quickly: it's already in the right format. On the other hand, change one teeny thing in the compiler and you wave goodbye to being able to read the previous version's files.

Mr H talks of 'fixing' the compiler-specific DCU format, which makes me anxious. I dare say the whole program is a great ball of elderly C++, pock-marked with globals and 1990s attempts at collection classes and God knows what. But I implore CodeGear to be careful to produce a new compiler that is actually as fast as the old, rather than just theoretically faster.

The Power of One Infographic

More from The Register

next story
NO MORE ALL CAPS and other pleasures of Visual Studio 14
Unpicking a packed preview that breaks down ASP.NET
Cheer up, Nokia fans. It can start making mobes again in 18 months
The real winner of the Nokia sale is *drumroll* ... Nokia
Mozilla fixes CRITICAL security holes in Firefox, urges v31 upgrade
Misc memory hazards 'could be exploited' - and guess what, one's a Javascript vuln
Put down that Oracle database patch: It could cost $23,000 per CPU
On-by-default INMEMORY tech a boon for developers ... as long as they can afford it
Google shows off new Chrome OS look
Athena springs full-grown from Chromium project's head
Apple: We'll unleash OS X Yosemite beta on the MASSES on 24 July
Starting today, regular fanbois will be guinea pigs, it tells Reg
HIDDEN packet sniffer spy tech in MILLIONS of iPhones, iPads – expert
Don't panic though – Apple's backdoor is not wide open to all, guru tells us
prev story

Whitepapers

Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Top 8 considerations to enable and simplify mobility
In this whitepaper learn how to successfully add mobile capabilities simply and cost effectively.
Seven Steps to Software Security
Seven practical steps you can begin to take today to secure your applications and prevent the damages a successful cyber-attack can cause.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.