« January 2007 | Index | March 2007 »
February 22, 2007
Goodbye parity, hello superiority
With memoizing: 235 specifications, 0 failures real 0m7.580s user 0m7.035s sys 0m0.347s Without memoizing: 235 specifications, 0 failures real 0m7.895s user 0m7.612s sys 0m0.253s Goodbye parity, hello superiority. The thing which finally pushed us over the hump wasn't increasing the...More Development articles
Posted by wincent at 2:14 PM
February 19, 2007
Here documents
I just added "here document" support to Walrus. This is an extension to the normal syntax for the raw directive: #raw Characters which would normally have special meaning are treated as normal characters inside the #raw block. #end Notice how...More Development articles
Posted by wincent at 8:48 PM
Coming up with a company name
If you are an independent Mac software vendor it seems that the way to come up with a company name is to combine a modifier (adjective or adjectival noun) with a noun. Your algorithm for selecting a random modifier should...More Miscellaneous articles
Posted by wincent at 11:25 AM
February 18, 2007
Another performance update: parity
Following on from yesterday's post, I've now achieved performance parity (within about 3 percent) for the memoizing (5.674 seconds) and non-memoizing (5.484) parser modes. Given that this is for pretty much worst-case scenario input, and I haven't done any profiling...More Development articles
Posted by wincent at 12:49 PM
February 17, 2007
Parser generator update
One of the things that's been so good about writing the parser generator for Walrus is that it has made the code much more flexible, much easier to develop iteratively. In my original design I had a hand-coded parser and...More Development articles
Posted by wincent at 7:36 PM
February 16, 2007
Updated packrat performance numbers
The packrat performance numbers I published yesterday were deficient in a couple of ways. Firstly, performance was a little slow; I've been able to improve this somewhat with some minor changes. Secondly, the "parse event" numbers with memoizing turned off...More Development articles
Posted by wincent at 6:12 PM
February 15, 2007
Putting the "packrat" into PEG: adding memoizing to my Ruby parser generator
I've previously written about writing a basic parser generator in Ruby and then adding support for Abstract Syntax Trees. In my first article I noted: Although I didn't know it when I started, I was writing a parser generator that...More Development articles
Posted by wincent at 5:03 PM
February 14, 2007
TextMate wins
I finally gave in and purchased a license for TextMate. I say "gave in" because I couldn't really justify purchasing yet another text editor when I already had a costly license for BBEdit (still my preferred tool for HTML editing);...More Miscellaneous articles
Posted by wincent at 3:05 PM
February 8, 2007
10 years online
Wow. I just updated the copyright year in the footer at the bottom of these pages. It now reads 1997-2007. This website has now been online for 10 years! Life goes by all too quickly....More Miscellaneous articles
Posted by wincent at 6:18 PM
Abstract Syntax Trees
In a previous article about writing a parser generator in Ruby I promised to talk about Abstract Syntax Trees. The problem with the parsers previously described is that the literal results (strings arranged in a hierarchical, ordered tree with the...More Development articles
Posted by wincent at 6:04 PM
February 7, 2007
Gates deposition videos
A few days ago a Groklaw article drew my attention to the availability of video footage from Bill Gate's 1998 anti-trust case deposition. I promptly used MPlayer to capture the MMS streams to disk and over the last few days...More Miscellaneous articles
Posted by wincent at 10:58 PM
Is spam "solved"?
Just over a year ago I wrote about Bill Gates' failed prediction that spam would be "solved" by the beginning of 2006. Microsoft tried to deny the demonstrable failure of this prediction by redefining the meaning of the word "solved"...More Net articles
Posted by wincent at 4:23 PM
Jobs would like to get rid of DRM, should software developers get rid of copy protection?
Steve Jobs would love to abolish DRM on Apple's music downloads. Am I surprised that he feels this way? Not really. Am I surprised that he went on the record and said it to the public? Very much so. This...More Apple articles
Posted by wincent at 12:52 PM
February 6, 2007
The Rails-doesn't-scale "myth"
Rails doesn't scale, or so the saying goes. Ah, that's just a myth, they say. Don't worry about it, argue others. Now this, 4,000 requests per second. Of course if you throw enough money at the problem Rails will "scale"....More Opinion articles
Posted by wincent at 2:21 PM
February 3, 2007
The "Prime Directive" of Agile Development
Keeping the system executing at all times is the prime directive. You never do anything to the system that will break it for more than a few seconds. If you have a huge architectural change to make, you find a...More Development articles
Posted by wincent at 2:42 PM