Visit site Entropy Overload
October 2011
10
votes
Delphi XE2 compiler performance
Entropy Overload
– Delphi XE2 introduced namespaces across the runtime library. This stressed unit name lookup inside the compiler, and led to some severe performance regressions in certain cases. So during the runup to the XE2 release, I fired up a profiler and started investigating. It turns out there were numerous ...
March 2011
5
votes
An ugly alternative to interface to object casting
Entropy Overload
– I was answering a question on Stack Overflow, but the user didn't have the latest version of Delphi. My answer included converting an interface to an object instance, which is made possible with the as cast on interfaces in recent Delphi versions. But there is another way of doing it, exploiting the ...
December 2010
1
vote
Scrolling: Chrome vs Firefox
Entropy Overload
– I was using the Chrome browser on my laptop the other day (some browser compat problem). I don't normally use it; Firefox is my preferred browser. I couldn't help but notice how peculiarly laggy it felt to use. It came down to vertical scrolling: this highly common task - for any long article you'll ...
November 2010
0
votes
CrashPlan manual installation approach on Nexenta
Entropy Overload
– I wrote an earlier post about installing CrashPlan on Nexenta. However, it seems that CrashPlan have changed their Linux installer's modus operandi, and it tries to install a (Linux) JRE of its own. Of course, that won't work; it needs the Nexenta JRE (but I get the whole JDK, as you never know when ...
September 2010
1
vote
Non-Delphi: Postmodernism, Transformers: ROTF and Baudriallard
Entropy Overload
– The simulacrum is never that which conceals the truth--it is the truth which conceals that there is none. The simulacrum is true. (Baudrillard, Simulacra and Simulation) I've just watched Transformers: Revenge of the Fallen, and it got me thinking. It's perhaps the most post-modern movie I've ...
17
votes
Virtual method interception
Entropy Overload
– Delphi XE has a new type in Rtti.pas called TVirtualMethodInterceptor. It was originally designed for use in DataSnap authentication scenarios (though I don't think it's currently being used there), but of course, making it only work for that would have been quite a limitation. What does it do? ...
August 2010
6
votes
Memory leaks, log analysis and Unix command-line tools
Entropy Overload
– I had cause recently to tackle a fairly tricky memory leak bug in the Delphi compiler as hosted by the IDE. The test case for the bug was complicated: compiling and running a large portion of the IDE itself. After a compile, subsequent debug runs of the IDE kept on increasing the debugging IDE's ...
May 2010
9
votes
Android: Momentum and Apps
Entropy Overload
– I'm liking the current momentum behind Android. I'm sure Apple will come out with their new phone soon, and the pendulum will swing a bit, but it's definitely a two horse race, and Apple isn't out of sight, not by a long shot. I got my Nexus One from http://www.google.com/phone a few months ago, to ...
9
votes
Locations vs Values: using RTTI to work with value types
Entropy Overload
– Delphi's Rtti unit is designed in substantial part around TValue, a kind of hold-all record that should be capable of containing almost any Delphi value, along with type information for that value. However, this means that when you're working with value types, such as static arrays and records, ...
April 2010
2
votes
Programming font for VS2010
Entropy Overload
– So, Visual Studio 2010 shipped. Now I have a problem: what font to use? My old standby, Dina, is a bitmap font so it doesn't work with the WPF text editor in VS2010. Some things I look for in a programming font: High information density - vertical height in particular. For example, I use Dina at ...
March 2010
0
votes
JEDI newsgroup change
Entropy Overload
– I got word that the JEDI newsgroup changed after the old forums.talkto.net server died. The new server is at: news.delphi-jedi.org That's nntp on standard port 119. Please update your favorite news reader to this new server.
0
votes
CrashPlan for Backup on Nexenta
Entropy Overload
– For some time, I've been using cron jobs with rdiff-backup on Cygwin for backups. The cron job runs on a Windows server I have on my home network and iteratively mounts remote Windows shares (if they're present) and runs rdiff-backup over them, with the destination also being local. Then the job ...
February 2010
2
votes
Multidimensional Separation of Concerns, or Matrix Inheritance
Entropy Overload
– I just spotted a paper that I didn't know existed before. Abstract: Done well, separation of concerns can provide many software engineering benefits, including reduced complexity, improved reusability, and simpler evolution. The choice of boundaries for separate concerns depends on both ...
January 2010
7
votes
One-liner RAII in Delphi
Entropy Overload
– Some C++ aficionados point at the ability, in C++, to create an object such that the creation allocates some kind of resource, and the destruction frees the resource, with much glee. The idiom is RAII: Resource Acquisition Is Initialization. The technique can be a useful, albeit somewhat opaque, way ...
9
votes
Using anonymous methods in method pointers
Entropy Overload
– Anonymous methods may have associated state. In particular, all variables that an anonymous method captures need to be kept alive so long as the anonymous method is callable. For this reason, anonymous methods are implemented with a lifetime management approach: anonymous methods are actually ...




