What *wasn't* in Danny's Diamondback session #Delphi #borcon2004
Stuff that came up after Danny's talk (which I briefly summarized here). Even those of you who were at the talk didn't hear this stuff yet. (Well, except for Allen, but I suspect he already knew all of this anyway.)
Delphi for Mac?Now, don't get your hopes up. There is no official word on this yet. (It may be worth noting that this is not an official "no".)
Yes, you can get partway there with Mono, but there's not much there for GUI. However, when someone was asking Danny about this after the session, he pointed out that Diamondback will be a multi-personality IDE (with the three personalities out of the box — Delphi/Win32, Delphi/.NET, and C#/.NET). And personalities will be part of the Open Tools API. (Not sure if that'll be totally cleaned up for Diamondback, but it's there.) Open Personality API?
So, whether Borland writes a Mac personality or not (and mum's the word on that so far, so you can still hold out hope), somebody else might be able to. This is a pretty darned intriguing concept, I think.
The features are coming! The features are coming!I spent a while grilling Danny about what will be in Diamondback for Win32, and what will sneak in later. Here are the results. (Tabular format makes the holes a little more glaring, doesn't it? Still, this is good stuff to hear word on...)
Feature | Diamondback+1 (Whidbeyish) | |
---|---|---|
'strict private' and 'strict protected' in Win32 | Yes | |
'static' keyword in Win32 | No | Forgot to ask |
Class constructors in Win32 | No | Forgot to ask |
Nested classes in Win32 | Yes [Note 1] | |
Records with methods in Win32 | No | Yes [Note 2] |
Operator overloading in Win32 | No | Yes [Note 3] |
Custom attributes in Win32 | No | Forgot to ask |
Generics in Win32 | No | Researching |
Multicast delegates in Win32 | No | Researching |
Note 1: Yes, they'll be there, but you won't be able to use them in published sections because RTTI won't be able to cope with them.
Note 2: Records with methods will be there primarily because they're a prerequisite for operator overloading.
Note 3: Will only be supported for record types.
Usual disclaimers about forward-looking statements, but if Danny thinks it's going to be in a release, I'd say the odds are pretty darned good...