Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think, though, that there was nothing preventing him from developing TeX in Fortran or something, and leaving it at that. He is just somewhat easily distracted. He nerd-snipes himself possibly.

Yak Shaving is the frustrating work we do because of impedance mismatch in the system. Libtool is a huge yak shave, for example. But so is writing a custom CSV parser because an input file is just not quite accessible by the standard, and you could just use python to make the translation, but your environment won't let you use python in that spot, etc. Days later nothing is really accomplished, you hate programming, and you can finally start work on the real problem after losing the motivation you had when you started.

But I like the idea of a patron saint for this, and Knuth is as good as any. Perhaps Dijkstra could be the patron saint of Unused Better Solutions. I'm sure there's a litany of things that could use saints in this field.



Actually, Knuth first wrote TeX in SAIL (1977–1978), then discovered everyone was interested and rewriting it for their own systems in divergent ways, so he rewrote a "portable" version in WEB (Pascal) (1980–1982), and he did indeed leave it at that, a few years later (https://tug.org/TUGboat/tb11-4/tb30knut.pdf). It's not that he's easily distracted; it's just that he really cares about quality, and underestimated how long this detour would take. :-) (He told his publishers in March 1977 that he'd have proofs for them in July; he was expecting it to be a month or two of work; not 10+ years.)


Hm what unused better software did Djikstra write?

Maybe Knuth could have used Fortran and not Pascal, but that doesn’t solve the literate programming problem ... he would still want something like WEB.

Seems like Fortran is more maintained today than Pascal, but Knuth couldn’t have known that. The community yak shave to translate the code arose out of other forces in the industry.


Pascal was a huge force in the computing world for quite awhile - Turbo Pascal on the IBM PC was by far and away perhaps the most performant programming environment available.


Right, I'm saying he didn't really need to solve the literate programming problem if he was really focusing on writing a book on algorithms that was to precede his book on compilers. That's alright, the journey is often more important than the destination. He wanted to tell the story of writing TeX in a book in which TeX is written, and it made sense to intercalate the text and the program. There just wasn't a tool that could do anything with it yet.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: