Larry O'Brien writes about DevCo and Delphi

In April 15th issue of SD Times, Larry O'Brien (former editor in chief of Computer Languages, Software Development Magazine, and renowed tech journalist... and also a friend, even if we haven't been in touch for some time) covers the recent "disinvestiture" of the IDEs by Borland. The articles covers many issues. About Delphi he starts by saying that:

"The Delphi line is rooted in the understanding that programmers and programming languages matter."

That's certainly an interesting point. Delphi has often been and is still the programmers' choice, more than the manager's one. However, Larry continues by saying that:

"The Delphi language itself is well past its peak, and with its Pascal roots is on the wrong side of trends in syntax. Short of a grand rewrite creating a Delphi-in-name-only, the language has little potential for future growth."

"Past its peak" when it was updated so heavily over the last couple of versions? It might not be as cool as other languages (Ruby, Python, Java, C#?) but it is far from being dead. And regarding the syntax, the C-language one is popular in Java and C#, but many scripting languages are based on a different style. It is certainly true that the Delphi IDE has been losing ground to Visual Studio, as Borland didn't invest enough (if you don't consider the ALM story) over the last few years, but it is certainly not losing out to Eclipse... and it's still quite a good IDE.

Larry Writes about the David I Phone Call

On his blog, Larry writes about a phone call he got from David I. Here, Larry expands his view, reiterating his points on Delphi:

"I was speaking primarily about the trend away from structural explicitness and secondarily about the prevalence of C-language syntax... I highly doubt that the addition of features such as generics, closures, or even LINQ to Delphi will be sufficient to cause a resurgence in popularity... I just don’t see this decade’s market embracing the explicitness of Pascal-like language design..."

As some of the comments (and Nick in his blog) noted, I also find a little confusion here. On one side, I don't buy the prevalence of the C-language syntax only because of C# and Java. There are many scripting languages based on a different syntax /Python, Ruby...), there is VB, and there are many others. The discussion about structural explicitness is interesting, but I don't see anything in Delphi preventing it more than C# or Java or other languages. I second the idea of a Delphi scripting language, with the same syntax but a different programming style, but that's a different story. Moreover, Delphi popularity seems quite underestimated, like the popularity of Win32 development. And few languages (if DevCo brings us back Kylix) could have the same broadness: native compiler and virutal execution system with the same code!

Larry's Trends in Language Syntax

Larry further enforces his point in another blog post, in which he explains that "trends in Anders Hejlsberg's work [include] the obvious switch to a C-style syntax and a trend away from Niklaus Wirth's philosophy of an explicit nested structuring of programmatic components". Beside this C-style obsession, in his explanation the post is very interesting, and includes many examples. One of them struck me:

"In C# 3.0, there are extension methods, which allow an instance method to be specified independently of the file(s) in which the class was originally declared."

This sounds a lot like Delphi's class helpers to me. Actually it looks like they borrowed it! A class helper allows you to add an istance method to an existing class from a different Delphi unit, and even compile this unit in a different assembly. This was introduced in Delphi 8, almost 3 years ago. C# 3.0 was introduced... oh, wait, it's not released yet! So maybe Delphi has beaten C# exactly in this specific trend! I'm certainly ironic here, but there is some truth!

(Before I forget, let me state more clearly that I often appreciate Larry's writings, even if he is Microsoft biased from time to time, and the fact he's not an expert in Delphi is fully understandable. Also, I find his blog very interesting as he touches on many topics, from Ruby to .NET, from Mono to industry trends. And my best wishes to his wife!).

David I's Reply

One more post to go. David I actually replied to Larry, in his May 2nd post from Europe. He counters, among other things:

He also notes that "Is it hard to compete with free? We were the first vendor to create and ship free fully functional foundation editions, well before Eclipse and well before VS Express editions." I read this as an announcement that we'll get entry level free versions again. Let's cross our fingers. And long live Delphi!