Popular
9
votes
A case against FreeAndNil
The Oracle at Delphi
– I really like the whole idea behind Stackoverflow. I regularly read and contribute where I can. However, I’ve seen a somewhat disturbing trend among a lot of the answers for Delphi related questions. Many questions ask (to the effect) “why does this destructor crash when I call it?” Invariably, ...
6
votes
Don’t abuse FreeAndNil anymore
DelphiTools
– A recurring subject when it comes to freeing objects and preventing is whether you should just .Free them, thus leaving a invalid reference that should however never be used anymore when the code design is correct, or if you should defensively FreeAndNil() them, thus leaving a nil value that will ...
5
votes
Three steps to the blocking collection: [2] Dynamically allocated queue
The Delphi Geek
– [Step one: Inverse semaphore.] When I started thinking about the blocking collection internals (see step one) two facts become fairly obvious: The underlying data storage should be some kind of a queue. Blocking collection only needs the data storage to support enqueue (Add) and dequeue (Take). ...
4
votes
Random Thoughts on the Passing Scene #143
Nick Hodges
– The Haitian Relief Auctions are going like gangbusters. We even made the Santa Cruz Sentinel! (Way to go, Anders! And hey, I even got my name in the papers!) Many of the items end on Sunday evening here on the US west coast, so you only have ...
4
votes
DeHL, Delphi 2010 and Serialization
Yet Another Programming Blog
– A few months have passed and I did not release a new version of DeHL yet. No, it’s not dead. I’ve just been busy with a delicate new feature — Serialization. This post will demonstrate the new capabilities of DeHL it’s advantages and and shortcomings. But first — since ...
3
votes
Compiling a Hunspell DLL, step by step
Delphi Haven
– As I got asked, I thought I might as well make a separate post out of it, so here goes. To compile a new Hunspell DLL, you could do the following: Make sure you have a suitable C++ compiler at the ready. I’ve no idea about C++Builder, but Visual C++ Express does the job fine, and it’s ...
3
votes
A Walk Down Delphi’s Memory Lane: "Pascal Market Trends" circa 1993
Chris' Borland Debugger Blog
– As Nick mentioned in this post, we will soon be moving to a new building here in Scotts Valley. We have been in our current building since 1993. As Nick states: "So when you move, you generally use that as an opportunity for cleaning up, clearing out and generally clearing ...
2
votes
What is new in SimpleStorage
From Zero To One
– As you probably know by now (or not) SimpleStorage is a set of interfaces to ease the manipulation of XML documents. It is based on OmniXML, a wonderful Delphi XML parser. Simple Storage aims to treat XML as a practical data storage and means of data serialization and transportation. I have written ...
2
votes
Releasing queue memory without the MREW lock
The Delphi Geek
– I know how to implement a no-wait release in my dynamic queue if somehow the ABA problem gets solved. (I also had some ideas on how to solve the ABA problem if the head pointer never catches the tail one. But that’s still very much in the design phase.) Each block gets a header element (with a ...
2
votes
Santa Cruz Sentinel article
The Hacker's Corner
– "SCOTTS VALLEY -- If you are secretly pining over old Borland memorabilia -- the classic Pascal 3.0 software still in its original shrink wrap, a Borland varsity letter jacket once reserved for executives or a shiny yellow bumper sticker proclaiming that "Delphi Developers Do It Faster" -- this is ...




