Lazy or Efficient ?

[Estimated Reading Time: 3 minutes] In his most recent post, Chris Rolliston points out a gotcha resulting from a change in the VCL with XE3. The post itself is quite interesting and makes some valid and significant observations. However, in the follow up comments Chris makes the observation that the old code was lazy, relied on a compiler detail and should have been “properly” re-written, rather than replacing reliance on one compiler detail with another. I think it is worth highlighting that Chris’ observations here are – I believe – directed at the use of untyped pointers and dynamic arrays, not the use of the pointer exposed by the TList class itself, as the two things could easily be conflated when reading Chris’ post and the QC issue it refers to.

What’s in a Word … ?

[Estimated Reading Time: < 1 minutes] In an exchange with David Heffernan both on SO and in the comments here on Te Waka, I had cause to climb in my own personal “Wayback Machine” and further investigate an apparent change in compiler behaviour between Delphi 2007 and 2009. This change was first identified as the result of some code of mine that stopped working in Delphi 2009. The instinctive reaction is “It must be some Unicode issue”, but it turned out that the “problem” was actually a fix to a compiler bug!

Sugary Goodness in “Nougat”

[Estimated Reading Time: 2 minutes] Continuing the theme of recent – and upcoming – posts about new (and not so new) syntax in modern (and not so modern) variations on the Pascal language, I just have to comment on what I regard as yet another stunningly good job that the guys at RemObjects have done in their “Nougat” flavoured Oxygene.  Specifically in relation to how they have implemented the named method parts syntax in Objective-C.

Lazarus 1.0 : First[-ish] Impressions

[Estimated Reading Time: 6 minutes] It has been a looong time since I last looked at Lazarus. So long in fact that I don’t remember exactly when it was. Whenever it was I don’t think I ever actually managed to even get it up and running at that point. Certainly I don’t remember much about it if I ever did. But with the timely Lazarus 1.0 announcement last week, I have gone back to have another look. And this is what I found.