Prof A Olowofoyeku (The African Chief) wrote:
As I said already on other occasions, syntax has nothing to do with the backend (code generation) -- unless they have a very confused architecture.
I think I used the wrong word. What I meant was the actual compiler, ("engine"?) not the code generator. Delphi (from version 2.0 onwards) and Borland C++/C++ Builder share the same compiler engine - at least, from what I have read (both from Borland and elsewhere).
I don't know what "engine" means in this context -- I can still only imagine the code generator and similar things.
[...]
You mean what Borland likes to call Pascal ...
Yes. But there is still a decent and "proper" Pascal compiler lurking in there.
Sorry, but Borland never had a proper Pascal compiler.
[...]
I wouldn't exactly call the union of ISO 7185, 10206 and BP a "lowest common denominator". ISO and BP are far enough apart, so this covers quite a range of features, and maybe with one or another occasional extension it should be suitable for quite a wide range of applications.
Yes. But for a standards-compliant Pascal compiler, they should constitute a lowest common denominator (i.e., ideally, they should all be supported).
For a standards-compilant compiler, the BP dialect is irrelevant.
If all popular Pascal compilers supported all 3, then we would be in source code portability nirvana.
Indeed. However, I don't know of too many other compilers that do ...
Though I can imagine that the `class' model might be a little easier to use than `object's, I don't see the really big advantage in it yet, and much less so for most other Delphi features I've seen so far (well, exceptions perhaps ...).
I don't yet see the really big advantage in speaking Mandarin (but that is simply because I have never been to China - if I went there (rather than simply listen to what the Chinese tell me about Mandarin) I would suddenly see the big advantage ;-)).
So where's the land where the `()' feature is useful? ;-)
But seriously, human language have developed over a long time and "just exist", and they're there for all kinds of communcations. Computer languages are designed and for specific purposes, so the analogy doesn't really hold.
Besides, it's not about a languages, but rather a language element. If a make up a new "English" word, I wouldn't see any advantage in using it ...
[...]
Their architecture looks rather mixed-up and confused to me, so much that even MS's one might be cleaner, and I wouldn't be surprised if they get overtaken and kicked out by them soon ...
Perhaps. But I see the point from Borland's point of view. Have a single compiler engine, have a single class library, call then from two programming languages.
That would be ok -- that's roughly what GNU does as well: Have a single backend (if I may equate this with engine), have many libraries (sure, not a single one, since there's not this MS-ish uniformity) which can be called from many languages.
But why on earth do they mix the languages together? That's not necessary for this model to work.
Those who like Pascal should use Delphi, and those who swear by C/C++ should use C++ Builder.
Exactly, so C/C++ features are not required in Delphi.
[...]
BTW, does there exist a substantial amount of free Delphi code (which is not Windows only)?
Yes. A lot of code now supports Kylix and therefore has to be written "portably".
OK, so it's not all Windows only, but portable? I thought Kylix also only supported the x86 processors, doesn't it?
Fortunately now Waldek has started to contribute code (especially for the gcc-3 port, and those changes affected large parts of the compiler). I don't know how hard it was and how long it took you to get enough overview of the internals, and if you feel ready yet to maintain any part or add features (or if you want to do that at all), but I admit it's a little difficult getting started. (Though I'm trying to simplify the internals wherever possible, so some things are now a little less difficult than they used to be, but it's a long way ...)
I assume that you are referring to Waldek here ...
Yes -- it's difficult to use the right pronoun here (oh, maybe I should invent a new word ;-) since he's probably also reading it ...
Frank