Frequently Rediscovered Technologies
Have you ever had to write a program that ended up containing what turned out to be a pre-existing technology? Read on to see what author John Cook has to say about these situations.
Join the DZone community and get the full member experience.Join For Free
Greenspun’s Tenth Rule of Programming says:
Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp.
Here I’m going to take seriously a rule that was only not entirely serious. It’s saying three things about Lisp.
- It’s a frequently rediscovered technology. There’s something inevitable about it.
- It’s not completely widely known. Not everyone knows about it, so they don’t know that they’re reinventing it.
- It’s not easy to implement, hence all the poor implementations.
The same could be said of state machines. A number of projects have grown until they contained an ad hoc, informally-specified, bug-ridden, slow implementation of state machines.
What are other ideas like Lisp and state machines that are frequently and poorly reinvented?
Published at DZone with permission of John Cook, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.