Daily Archives: June 16, 2009

On SPITBOL: Stop The Presses. Time to Rewrite Mod_Rewrite.

I just saw, via Intertwingly, that there is a complete book about Apache mod_rewrite. The book runs 160 pages.

The intertwingly post made mention of regular expressions, and so I went over to ASF to learn more about this irregular feat: Apache Module mod_rewrite.

The project description begins with:

This module uses a rule-based rewriting engine (based on a regular-expression parser) to rewrite requested URLs on the fly. It supports an unlimited number of rules and an unlimited number of attached rule conditions for each rule, to provide a really flexible and powerful URL manipulation mechanism. The URL manipulations can depend on various tests, of server variables, environment variables, HTTP headers, or time stamps. Even external database lookups in various formats can be used to achieve highly granular URL matching.

This module operates on the full URLs (including the path-info part) both in per-server context (httpd.conf) and per-directory context (.htaccess) and can generate query-string parts on result. The rewritten result can lead to internal sub-processing, external request redirection or even to an internal proxy throughput.

Here is a heads-up to the Apache team.

As soon as SPITBOL is ported to Linux then someone is going to take an afternoon or so and produce an updated mod_rewrite that runs about 100x faster. They may even write a book about their experience, though it will probably run to about ten pages or so.

You will then spend about ten years fielding complaints from the gazillions of users worldwide who will ask why you didn’t help port SPITBOL to Linux about, say, a decade or so ago.

On Programming For Adults: The NASM Macro Processor

One of the advantages of being an assembly language programmer is that you get to use an assembler.

Only assembly language programers know what an assembler is, so the best assemblers are written by the most dedicated assembly language programmers, the masters of our trade. [1]

I recently put the NASM folks to a test. I predicted they would pass the test, and they did.

Just try

nasm -E in.asm

This expands the text in the named file with the full power of the most comprehensive macro assembler I have yet seen. It also does nothing else.

NASM just gets it done.

So do assembly language programmers.


1. An “assembler” is not the machine used to construct assembly halls where young students watch principals in operation. Assembly language programmers read the principles of operation. [2]

2. This pun will be a recurring theme for the next 10000000000B or so posts about assembly language: [3]

  %define ALPs assembly language programmers
  %define PiP principals in operation
 % define PoP principles of operation
 young students watch PiP. ALPs read the PoP.

3. 1024. We assembly language programmers not only count in binary, we think in binary. For example, I am 01 For Chappaqua

On Programming in Assembly Language: The 49ers

This continues my series of posts about programming in assembly language.

Evidence, suggests that only 1 in 10,000 or so programmers active today has even a clue about how a computer operates.

For example a colleague — who does know assembly language — recently had dinner with a former senior IBM Research executive — who also knows assembly language — who now has 4500 programmers working under him.

His best guess is that not *one* of them knows assembly language.

By the way, assembly language is not the language spoken by principals at school assemblies.

Real assembly language programmers know principles of operation, not principals in operation.

The programming population can thus be divided into the 99.99 per cent of those who claim to be programmers who do not know how a computer operates, and the .01 per cent who do.

In my view the 9999’s should just call themselves the 49ers and go find something else to do, for they sure as hell are not programmers.

They are, however, similar to many recent 49ers teams in that they are also losers.

I am a programmer. I know assembly language

I am one of the .01 percent.

I am One for Chappaqua!

On Computing: Alpha 400 MIPS 400MHz 128MB 1GB 7″ Ultralite Netbook Linux

I just received my first, and I expect it won’t be the last, Alpha 400 MIPS 400MHz 128MB 1GB 7″ Ultralite Netbook Linux from Geeks.com. [1]

I can attest that it works, as I used mine to write this post.

The display, while quite small, is very crisp. The text is as easy to read as any I have yet seen on a display. It’s better than on my t43p thinkpad, for example.

Photos come out well, too. Or at least that of my winning smile, which is all that counts.

It’s even more fun than the XO laptop, and that is saying a lot.

Key features include:

  • Netbook form factor
  • Linux 2.4 Operating System
  • MIPS XBurst 400 MHz 32-bit CPU
  • 128 MB RAM
  • 1 GB NAND Flash Storage
  • 10/100 MB Ethernet interface
  • 802.11b wireless
  • Supports External Hard Drive up to 160 GB
  • Supports SD Card up to 32 GB
  • Xiptech application software packages (Xip office, Flash player)
  • 7-inch digital panel 800 x 480 true-color
  • Keyboard with TouchPad
  • Supports File Sizes up to 8 MB
  • Built-in SD Card slot
  • Battery Charging Time: 4.5 – 5 hours


  • Pages

  • June 2009
    M T W T F S S
  • RSS The Wayward Word Press

  • Recent Comments

    daveshields on SPITBOL for OSX is now av…
    Russ Urquhart on SPITBOL for OSX is now av…
    Sahana’s Respo… on A brief history of Sahana by S…
    Sahana’s Respo… on A brief history of Sahana by S…
    James Murray on On being the maintainer, sole…
  • Archives

  • Blog Stats

    • 452,683 hits
  • Top Posts

  • Top Rated

  • Recent Posts

  • Archives

  • Top Rated