Unreliable Intuitions
Qt is a really wonderful and nice toolbox, and I thoroughly enjoy working with it, so it’s unfortunate that I’m using it for my example of one of the many things wrong with C++. In my opinion C++ is a…
Functional Programming with Erlang
Last week I was reading Joe’s new book Programming Erlang and just couldn’t seem to get my mind around Functional Programming. You see when Joe says Concurrency is easy. We don’t have shared memory. I have my memory, you have…
Linguistic Comparisons
Much of what is done is the way of linguistic comparison seems to be a bit subjective. The most favorite is to gather a bunch of idioms and then set them against each other drawing obvious conclusions, like language X…
The Jet-powered Car
I had a really long discussion about car engines with my co-worker today. He has tons of information locked in his head about internal combustion design. We touched on valve and cylinder design, compression ratios, cam design. Discussed all the…
Relational Programming
Back in the dark-ages of computing we all had a hierarchical database with which to store our precious information. It was known as the file system. Then efficiency became vogue and organizational demands moved everyone to explicit database applications (client-server…
The Language of the Future
Most of the popular languages today (Perl/Python/Php/Ruby, C++, Java) are all locked into the serial, von-Neumann model of computation. Concurrency is expressed as Threads and Processes, which rely on the underlying OS’s handling of memory and other resources. Joe Armstrong…