(2011) Andreas Hausladen
“With AsyncCalls you can execute multiple functions at the same time and synchronize them at every point in the function or method that started them. This allows you to execute time consuming code whose result is needed at a later time in a different thread. While the asynchronous function is executed the caller function can do other tasks.”
(2011) Primož Gabrijelčič
"All operating systems support one thread per process (obviously) but some go further and support multiple threads in one process. Actually, most modern operating systems support multithreading (as this approach is called), the difference is just in details.
With multithreading, operating system manages multiple execution paths through the same code and those paths may execute at the same time (and then again, they may not - but more on that later).
An important fact is that processes are heavy. It takes a long time (at least at the operating system level where everything is measured in microseconds) to create and load a new process. In contrast to that, threads are light. New thread can be created almost immediately - all the operating system has to do is to allocate some memory for the stack and set up some control structures used by the kernel."
Constrained Genericity for Borland Delphi
2011 - DORM … “Delphi ORM”
This fifteen-part series, written from 1988 to 1995, is a non-technical introduction to compiler construction.
You can read the parts on-line or download them in a ZIP file.
This is an awesome read. Highly recommended.
Anders Hejlsberg’s introduction of Delphi in 1995.
I had forgotten about “Delphi Haters Blog”
2011 - “Are there 21 developers working on Delphi ?”
2006 - by Rob Kennedy … [ This is waaaay before the alteration of the FreeandNil function signature] [ Magic behind FreeAndNil ]