Friday, February 19, 2016

Not Too Late to Change

John Siracusa:

As you watch the churn in the Swift language and the many source-incompatible changes, remember stories like this.

Dennis Ritchie, on C:

In retrospect it would have been better to go ahead and change the precedence of & to higher than == but it seemed safer just to split & and && without moving & past an existing operator. (After all, we had several hundred kilobytes of source code, and maybe 3 installations....)

Stuart Feldman, on Make (via Kieran Healy):

Why the tab in column 1? Yacc was new, Lex was brand new. I hadn’t tried either, so I figured this would be a good excuse to learn. After getting myself snarled up with my first stab at Lex, I just did something simple with the pattern newline-tab. It worked, it stayed. And then a few weeks later I had a user population of about a dozen, most of them friends, and I didn’t want to screw up my embedded base. The rest, sadly, is history.

John Siracusa:

Languages last a long time. Even multiple years into their existence is not “too late” to change things for the better.

Update (2016-02-19): Landon Fuller:

Not much consideration given to path dependence; “the … equilibrium achieved depends partly on the process of getting there”

Simple example; unstable languages mean unstable libraries. Ecosystems and culture build up around and optimize for that problem.

Comments RSS · Twitter

Leave a Comment