Thursday, October 8, 2009

Delphi check-in log entries of the day:

25232 trunk/com/ scanner.c Thu Oct 8 20:41:10 2009 UTC ytagawa


(scanner.c) Don't define ASSEMBLER for x64 for awhile.

25224 trunk/com/ codegen.c Thu Oct 8 12:35:00 2009 UTC eboling


Refactoring in PassParams to support changes to stack alignment code.
Changed the logic for aligning the stack for parameter lists for the Mac.

I’ll just leave that little tidbit for you all to chew on for a now. I’ve seen a lot of rampant speculation and and angst surrounding the release of the current roadmap. Maybe this will at least demonstrate that, yes, things are moving forward and people are actually working on interesting things.

DISCLAIMER: If you read into this more that what is actually in this post and begin ranting an raving about how this or that thing should be done one way or another, I may simply delete your comment. Remember there are no promises or anything of any value in this post. If you make a business decision based any information contained herein, then I’d really like to play you in a round of Texas Hold’em… you’d be easy prey and I’ll be happy to take all your money, and I’m not even that good.


  1. Cue Jolyon Smith and/or C. Johnson in 3... 2... 1...

  2. Mark --

    That may be the best blog comment in the history of


  3. I laughed :)

    Allen - thanks for posting. No, we aren't making any business decisions, but we are interested in hearing interesting things like this!

  4. Delphi OS X should be in shops by the time you read this blog comment...

    [Grinning, Running, & Ducking.]


  5. So the Delphi64 will have a scanner support? Finally! :))))

  6. Francisco J Ruiz Nu?ezOctober 8, 2009 at 4:44 PM


  7. scanner to collect tokens from our source file and output will go to the parser. most likely the current test version still cannot process a source file embedded with inline 64bit assembly.

  8. @Mark - Hey now, be nice. My opinions have long since stopped being completely negative. In fact, I have never had serious problems with mac as a new target ( in fact, I tried like heck to get my hands on the turbo pascal for mac back in the days - all I ever got were rumours it existed in Germany).

    My objections were more in the "trying to make money on linux developers is provenly foolish" and "cross platform vcl is patently stupid". This post does not apply to Linux - but I am betting that based on the close under pinnings between unix and linux that the it helps the move to mac. And the dev team has since clearly given up on cross platform vcl (thankfully).

    And yes, I still have a bone to pick with the devteam over HOW unicode was implemented as an all or nothing hurdle (any ported TSyntaxMemo from dbRock software to unicode? I could use a copy - it keeps a number of my projects in D2007)

    None of that makes me irrational or bitchy. And certainly none of it is on target here.

    Now Jolyon on the other hand.... He is still where I was several years ago. I feel that Delphi is generally moving in the right direction and that the IDE is definitely moving back towards the higher standards it once strove for. Jolyon is still in the angry place.

    I can't entirely blame him for getting to the angry place, and unfortunately mocking us both for being discenting voices IS one of the things that pushed me (and I'll be him) into that angry place.

    Worse, by belittling differnt points of view, you end up with products like Delphi 8 and Delphi 2006. Granted, Jolyon may never be happy about delphi again (he has held on to that anger for quite a while longer than I could) - there is a real chance he has something valuable to contribute.

    In fact, one of Jolyon's recent posts about Unicode was less about venting angry and more dead on about the problems and pitfalls with Unicode as it now exists in Delphi.

    You do a dis-service to us, to yourself, and indeed to the wider Delphi community by so blithly dismissing different points of view.

    Still, it WAS funny.

    - Clinton R. Johnson aka C Johnson aka Xepol
    Now with 50% less ranting and raving!

  9. Delphi for Mac Leopard, not net, when it's available?

  10. Thank you everyone for speculating as to what "place" I'm in.

    Perhaps you might like to hear it from me, myself and I?

    My "anger" with Unicode comes from the fact that everything I thought might prove to be wrong about the decision to go they way they did has so far proven accurate.

    The resulting confusion and inconsistency in the RTL and VCL does a disservice to existing users and I'm sure is wholly unattractive to potential new users alike.

    This is made worse for me by the continued refusal to acknowledge that a simple solution exists, following the template previously followed in the transition from shortstring to longstring.

    That is, the VCL (and components etc) could go Unicode without insisting that application code necessarily be forced to go with it, BUT that application code *COULD* be taken along at the flick of a compilation switch.

    Unicode to one side, what I find more upsetting and indeed offensive is the way I am being treated by Embarcadero and their nominated representatives.

    This morning I was publicly characterised as "unfriendly and unhelpful" by the NZ Reseller of Embarcadero products, specifically in respect of my participation in the Delphi User Group mailing list here.

    As someone who goes out of their way to be polite and helpful (an approach to which I have to say the reseller in question *cannot* honestly claim to subscribe to), I find this particularly offensive.

    Further insult was caused to this injury by Malcolm Groves standing in front of the room explaining how he was discussing with Chris Bensen the possibility that the gesture and multi-touch engine in Delphi might support the Synaptics hardware that is so widespread (in comparison to other relevant touch technologies).

    An idea that *I* gave him in a comment on his blog, and which I had *already* raised with Chris, and had been dismissed quite out of handedly.

    My contribution to these discussions and, dare I say, potential planting of a seed of an idea that might add a differentiator and unique selling point to the Delphi product was of course gratefully acknowledged.


    Instead, Malcolm studiously ignored my attempts to ask relevant questions about the subjects being presented, choosing instead to answer people direct interjections.

    Only when it became embarrasing for him to continue to ignore my upraised hand did he deign to acknowledge me.

    ME? "Unhelpful" and "unfriendly"?

    Embarcadero should look to their own when seeking targets for such accusations.

    And they should bear in mind that it is the likes of me that offer criticism in the hope of improving the product that influence the likes of my former employer - a user of 15+ Enterprise licenses of Delphi.

    When I recently departed that company to pursue another opportunity, I was told that I would be greatly missed not least for my advocacy for Delphi in that company. They have been considering a switch to C# for some time and it is largely through my own efforts that they have persevered and relatively recently upgraded to almost 20 copies of Delphi 2007 Enterprise.

    Incidentally, in 10 short minutes Embarcadero, in the agency of Malcolm Groves, I suspect undid a great deal of my work in maintaining interest in Delphi in that organisation when he announced that 64-bit is still at least 2 releases and therefore 2 years away.

    But if my contribution isn't welcome..? Fine. It will give me a lot more time for pursuing things where my efforts WILL be appreciated.

  11. It would seem that a lot of people around here view Xepol and Joylon as agitators. They ought to get up and take a look at their washing machines.

    No, really. I'll wait.

    Back now? OK. You see that post sticking up the middle? The one with a big spiral of plastic around it, that spins around when you turn it on? That's the agitator. It's the part that actually gets things clean.

    These guys aren't always right, but they're sincerely willing to try and help out and make suggestions about how Delphi can be improved. Things were badly on the wrong track for several years. We're starting to recover with CG under new ownership, but there are still a lot of improvements to be made.

    I once heard someone say that a friend is someone who will accept you as you are. I remember thinking, "what a load of crap!", and I still believe that. That's a fan, not a friend. A friend is someone who will love you as you are, but still understand that there's always room for improvement and try to encourage you to be better.

    The guys like Joylon and Xepol, who sometimes say things that the fans don't want to hear, are some of the best friends Delphi has. We'd do well to do a little less mocking and a little more listening to what they have to say.

  12. I just want to add to my previous comment that both Malcolm Groves and Richard Vowles have apologised for a misunderstanding and assured me that no slight or offense was intended.

    However, it remains clear from Nick Hodges and others comments that my concern as a "critical friend" of Delphi is still not appreciated.

  13. Jolyon,

    Yet again, I think you're not presenting the conversation on the NZ list very well. I didn't apologise for anything. I corrected your misunderstanding of what was said, and the apology was from you, no?

    As I explained, I did not pass the idea of as my own, I specifically said it came from someone else, I just didn't name you (as I generally try not to go around publicly revealing the names of people I have conversations with).

    Man, this is really hard work sometimes.


  14. Further, I wasn't ignoring you, but with a room full of people it's not always possible to notice everyone's raised hand.

    You made a comment on the list yesterday: "for some reason people seem to prefer to come up with their own ideas about what I think"

    Seems to be a lot of that going around. There's a fairly good example of it going on in your post.

  15. Last comment: Jolyon often has really interesting ideas. I've said as much to him and publicly elsewhere. In my mind there's no doubting the passion he has for the product, and his desire for it to succeed. I think Mason's comment is pretty much spot-on. I'm always interested in listening to someone who cares enough to criticise what we're doing.

    The only problems I've ever had with Jolyon are when he misrepresents what I've said or done, or assumes to know my motivations.

  16. Malcolm: You seem to be missing a slash in your URL. :(

  17. So when do we get a preview of the 64-bit compiler?

  18. Allen,
    well, I think I would have to make a business decision. And it will not be favorable to Delphi...
    Let me be blunt: I could care less about Mac. I do care a lot about 64 bit.
    I am sure you have heard all this before, but let me state my case: if you add Mac support, you can only hope that *some* people will attempt to port their apps to Mac. I very much doubt that you will hear people say "That did it! I just gotta have that version of Delphi".
    As for 64 bit, guess how many people *already* have existing code that *must* be ported to 64 bit? All is fine if you have a standalone EXE. But what do you do if you have a DLL? No 64 bit compiler, and you cannot have your existing Office COM add-in working in the 64 bit version of Office 2010. And how about sheel extensions?
    What do I do? Tell my customers to wait for a couple more years? Rewriting my code in a mixture of unmanaged C++ and C# sure looks like a better alternative.
    Good bye Delphi!

  19. It may sounds a bit off-topic but bellow I'll point out to some really great concurrency presentations made by Rich Hickey (The Clojure's "Father") that can enlighten the Delphi programmers on how to realize real parallelism ... and also might provide some very good hints/ideas for the Delphi compiler geeks (ex: you/Allen & Barry) to spice up the Delphi language/RTL.

    Hopefully in the next Delphi RTLs (since the last survey and in past also you give us some hints on the "parallel" support) we can encounter something similarly simple and powerful like the persistent and reference structures presented by Rich.

    So, here comes the links:

    Clojure Concurrency: Brief overview of Clojure, discussion of concurrency issues, locking, and immutabiity. In-depth look at Clojure's refs, transactions and agents. Demonstration and review of code for a multithreaded ant colony simulation

    Persistent Data Structures and Managed References

    Absolutely "have to watch" !

  20. @Dmitry Streblechenko (MVP- Outlook)
    For me 64 bit are also much more important then Mac support.
    However, I think they know exactly what they do.
    It's all about attracting new users, about new applications for Mac and whatever else. We have to wait for 64 exactly the same way as we've been waiting for years for Unicode. Are you considering to leave Delphi and rewrite everything in C++ or C#? Are you aware of costs and risks of such movement? Well, if your customers cannot live without 64, it might be a good alternative (or better said the only one).

  21. Krzysztof,
    Unicode was different - nobody prevented us from using native Unicode API and dozens of Unicode-enabled VCL controls. Of course it was a hassle, but it was still very much doable. With the 64 bit compiler (or rather lack of it), there is absolutely nothing we can do...

    As for attracting new users, why would I consider Delphi for a new project if I knew there is no 64 bit Windows compiler?

    Unless I am mistaken, the end purpose is making money, and the way i see it, Embarcadero can make some serious money by finally offering something to those who are still happily using Delphi 7 - a 64 bit compiler.

  22. Oh, and it is actually worse than I thought: there is no 32 64 marshaling for COM, so even if you have a standalone 32 bit executable that runs just fine on a 64 bit OS, you would not be able to talk to any Office 2010 applications via COM.
    That would affect quite a few apps...

  23. What's the problem if they are agitators? Sometimes people needs some shakes to focus the real problems.
    They provide that "shake". And I never seem an "free" criticism from them. Althoug I disagree with them in some little things, they provide well based arguments. They and LDS (Luidgi D. Sandom) about DataSnap security.
    Unfriendly? Definitly not. Sometimes a little too "hot" for someone's taste maybe.

  24. When a traditional constructor is called the framework allocates memory for a new instance, zeros it, and then lets the constructor code initialise that instance. Likewise a destructor finalises an instance. Class constructors/destructors act on classes rather than instances just as class procedures do. What’s difference is that they are called at most once and called automatically by the framework.


Please keep your comments related to the post on which you are commenting. No spam, personal attacks, or general nastiness. I will be watching and will delete comments I find irrelevant, offensive and unnecessary.