Overthrowing Syntactic Rituals

August 9, 2011

I have recently noticed a refreshing trend within the open source community. Some very talented people are writing libraries to clarify the syntax of existing languages and applications, much like the Elements of Style cleans up English writing.

Computer science is full of repeated ideas, endless variations of trees, caches, hashes, queues, events, codes, exceptions etc. Day by day new developers learn these concepts, but often through the lense of a particular language or library. After repeated association, the concepts can fuse in developers’ minds with a certain syntax. Before long, it feels comfortable, even “correct” to write things a certain way.

I like to think of these syntactic habits as rituals. It’s as if writing gnarly half-understood incantations somehow purifies our software and proves us to be in the programming priesthood. Think of all the details in old-style HTML DOCTYPES, or of the obsessive-compulsive repetition in XML documents.

Luckily, I think the industry is waking from its syntactic trance, and designing languages to write ideas more concisely.

Asleep Awake
HTML Markdown
JavaScript CoffeeScript