E-Scribe : a programmer’s blog

About Me

PBX I'm Paul Bissex. I build web applications using open source software, especially Django. Started my career doing graphic design for newspapers and magazines in the '90s. Then wrote tech commentary and reviews for Wired, Salon, Chicago Tribune, and others you never heard of. Then I built operations software at a photography school. Then I helped big media serve 40 million pages a day. Then I worked on a translation services API doing millions of dollars of business. Now I'm building the core platform of a global startup accelerator. Feel free to email me.


I co-wrote "Python Web Development with Django". It was the first book to cover the long-awaited Django 1.0. Published by Addison-Wesley and still in print!


Built using Django, served with gunicorn and nginx. The database is SQLite. Hosted on a FreeBSD VPS at Johncompanies.com. Comment-spam protection by Akismet.


Pile o'Tags

Stuff I Use

Bitbucket, Debian Linux, Django, Emacs, FreeBSD, Git, jQuery, LaunchBar, macOS, Markdown, Mercurial, Python, S3, SQLite, Sublime Text, xmonad

Spam Report

At least 237138 pieces of comment spam killed since 2008, mostly via Akismet.

The whitespace brigade

Syntactically significant whitespace is one of those debating points frequently raised in unproductive language thrashes involving Python. One persistent implication made by SSW-haters is that it's a freakish mutation unique to Python. Or, if they're feeling particularly vicious, they'll bring up Fortran. Cold comfort.

In fact, there are quite a few other languages that have gone down this path. Flipping through a big fat book that I bought because Steve Yegge recommended it, I came across mention of a couple that were new to me. Then I went digging for more. Here's an incomplete list:

In my searches I came across the term "off-side-rule languages", which I hadn't heard before, though apparently some people use it. I think it's a clunker. And "syntactically significant whitespace" is too much of a mouthful, and imprecise to boot (after all, whitespace between tokens is fairly significant!).

I think the field is open for a zippy marketing term. How about Spacejax? Space 2.0? Hmm, this is harder than I thought...

Monday, January 8th, 2007
+ +

0 comments pending approval
Comment from Andrew , later that day

new buzz words are hard to come up with, but one of the rules is that you can't reuse parts of other terms. (i.e. spacejax => space + 'ajax'[1:]). It's often common to create an acronym (i.e. ajax). That said, i nominate LUSS => 'Languages Using Significant Spacing'

Comment from Jeremy , 1 day later

I don't know how you gathered your data, but neither SML nor OCaml have any more significant whitespace than a language like C. So listing "ML" as a whitespace-signficant language is wrong.

Comment from Paul , 1 day later

Not sure how ML ended up in there; I've removed it. Thanks for the heads-up.

As for "the whitespace thing for OCaml", try following the link!

Comments are closed for this post. But I welcome questions/comments via email or Twitter.