The Podcast about the Delphi programming language, tools, news and community.

3 – Barry Kelly

In this episode we interview Barry Kelly who is one of the talented software engineers working on the Delphi compiler at Embarcadero’s CodeGear. We will discusses native code garbage collectors, generics, Anonymous methods and more.

I really really liked this podcast. And I hope he gets the chance to really clean up some of those delphi “features” that he talked about at the end. A deprecation model would probably help here. Maybe a compiler warning like “This feature will be removed in one of the next versions. Please consider replacing by X”.

I really enjoyed what Barry had to say and it was really interesting to hear from someone that deep into the product … the compiler. [No offense intended to the generally “more exposed” managers.] I learned a lot of interesting bits on not only the compiler but GC in Win32 [tremendous explanation] and all the additional items in the “if you had free rein” segment. I found it significant that, the way he responded, made it very easy to understand what it was he was talking about – even for me.

Adding links to his blog was an excellent idea. I had to stop scanning through the articles more often than not, scroll back the replay and listen to it again because I’d found something I really wanted to read. There’s a bunch of articles there on building a compiler that I’ll have to get back to – I did download the tutorial he referenced in his first on the series.

A very interesting episode, I particularly enjoyed hearing from one of the engineers who wades through the compiler source every day and getting his views on GC and the future of the language! Even the highly technical bits were clearly explained too, which is unusual!

Excellent podcast. I think it is really great that Barry is blogging and making himself available for this type of thing. I hope this trend continues for Codegear staff and be more open about the product and its future.

Thinking (way) back to when Objects were first introduced, they could be created on the stack in the VAR section. iirc, the pointer was on the stack, the remainder was really on the heap. This had the advantage of not needing to call the destructor and ensured a hierarchy lifetime enforced by the procedure calls, relieving the programmer of the responsibility of checking object lifetimes in 90% of situations.

At some point this option was removed, forcing explicit constructor/destructor calls. Caused an outcry similar to the Unicode-triggered one we are experiencing now.

Do I understand correctly: the RECORD wrapping trick you mention an attempt to regain the (pseudo)stack allocation situation? Might be worth investigating.

Agree with all the others; excellent episode. Packed with info. And at the speed Barry talks, we’re getting real value per downloaded byte

Interesting: “Delphi was written with Delphi” is a myth? (sort of). The compiler is C. Only the IDE was written in Delphi; and I assume only up to D7, because from D2007, even the Win32-only IDE seems to be .NET?