Bacon
My Microwave oven really wants me to eat a lot of bacon. I'm vegan and live in California, I'm already quite aware that my culinary habits are not exactly in sync with those of the average American....
View Articlepointer-less?
One thing I remember about Java back when I was working on enterprisey sorts of things is that for a language that supposedly has no pointers it sure seemed like we got a lot of NullPointerExceptions....
View ArticleMissing the point
OK, I'll admit. I've jumped on the SICP bandwagon. I've worked through about half the book1 and am really liking it. Of course I've come to it a bit late to the book not being a computer science...
View ArticlePoor-man's Closure
So C++ is lacking in some areas of modern programming language design, that's not a big secret. But given the flexibility of C++ the question becomes: how hard is it to add missing features? Here I'm...
View ArticleDunce Cap Removal
OK, I have something to admit. I realized the other day that I totally misunderstood how variable bindings in Haskell do blocks propagated to later statements in the block. Once I realized this and saw...
View ArticleHaskell Shuffling
After reading Jeff Atwood's post about shuffling I decided it would be interesting to implement both his naive shuffling algorithm and the Fisher-Yates algorithm in Haskell. It seemed like a good...
View ArticleGetting the rug pulled out from under you
At some point when you start writing multi-threaded programs in C++ you come to the realization that the this pointer is no longer the trustworthy soul that it once was. Instead it has become a...
View ArticleIt's not rocket science
So i was listening to the stack overflow podcast and Jeff Atwood declared that he thought it was ridiculous that kids are graduating with a CS degree without being taught about source code control. Now...
View ArticleBlame the Management
So I've come up with a new reason that C++'s lack of garbage collection is problematic. The strange thing is that the reason is in one of C++'s usual sweet spots: performance. Really I should qualify...
View ArticleWhy Emacs?
In the process of hacking some C# compatibility into my Emacs config I came across this page. The page itself is moderately interesting and another entry in the guys blog held the solution to a problem...
View Articledisable_shared_from_this
About once a year I end up thinking that using boost::enable_shared_from_this is a good idea. And every time it ends up wasting almost an hour of my time. You see there's a restriction on...
View ArticleHoops to Jump Through
Whose idea was it for C++ classes that have virtual functions to not automatically have a virtual destructor? There is just no reason for this not to be the case. Not having a virtual destructor is...
View ArticleThis Message Has Not Been Sent
This message has not been sent. WTF Outlook? I know that the message has not been sent -- I'm still writing it! Your endless little interruptions are growing tiresome. Like a four-year-old who's not...
View ArticleSometimes My Const is None of Your Business
There seems to be a relative dearth of C++ related blogs out there, at least compared to the webby world of Java and Ruby and the like. One that I have found to be consistently good is The C++...
View ArticleMoving Day
This blog has moved to here and I finally came up with a snappy new name as my tag-line above has been promising for years. Who knows, I might even start posting more too.
View Article