Hacker News new | ask | show | jobs
by lispm 1043 days ago
> Monkey patching comes from Ruby

My Lisp Machine's operating system (MIT, end 70s onwards) is written in an object-oriented Lisp (using Flavors and later CLOS). Everything is open and everything can be changed at runtime. Mixins and similar stuff comes from there.

https://en.wikipedia.org/wiki/Flavors_(programming_language)

1 comments

I'm happy to give lisp credit for everything cool.

but Common Lisp has all the good stuff you need to manage different generations of objects under changing classes, not the least of which is jumping into the running system and examining the running state. warnings and errors about redefinition, maybe jump under a different package to manage generations. state and functions are separate, thanks to dynamic dispatch.

Ruby, on the other hand, rewrites the class. hope all the data and functions are forwards and backwards compatible! good luck.