3 ms·
It's not as exciting as it sounds. He wanted to play around with learning Paxos, which is a big state machine, and he used yacc to do it. I shared an office wit
by rsc 3y ago
It's not as exciting as it sounds. He wanted to play around with learning Paxos, which is a big state machine, and he used yacc to do it. I shared an office with him for a couple years in the early days of Go, and he was working on it while I was working on other things. I helped him track down at least one bug in the Go port of yacc that way. I think the grammar he was writing was completely regular, but yacc is nicer to use than lex.
Ken discussed yacc briefly in Coders at Work, which I quoted at https://research.swtch.com/yyerror https://research.swtch.com/yyerror:
Seibel: And are there development tools that just make you happy to program?
Thompson: I love yacc. I just love yacc. It just does exactly what you want done. Its complement, lex, is horrible. It does nothing you want done.
Seibel: Do you use it anyway or do you write your lexers by hand?
Thompson: I write my lexers by hand. Much easier.
- rhelz 3y ago> It's not as exciting as it sounds. De Gustibus. Some of us are into that sort of thing. Thanks for the link. > Thompson: I write my lexers by hand. Much easier. LMAO. If you've been doing it since the 60's, I suppose you get the hang of it: Ken Thompson, “Regular expression search algorithm,” Communications of the ACM 11(6) (June 1968), pp. 419–422