5 ms·
In other words, instead of doing it the standard, commonly-accepted way, the author did it his own way, and it ended up being worse.
by shallowthought 6y ago
In other words, instead of doing it the standard, commonly-accepted way, the author did it his own way, and it ended up being worse.
- npsimons 6y agoThe Lisp Curse. (for the lucky 10,000: http://www.winestockwebdesign.com/Essays/Lisp_Curse.html http://www.winestockwebdesign.com/Essays/Lisp_Curse.html)
- kazinator 6y agoThat was written by someone with (at the time) some experience in web development and zero in Lisp. The request "Update on October 6, 2017. N.B.: Please stop submitting this to Hacker News!" should be interpreted in its strongest form: i.e. including comments.
- npsimons 6y agoThe commentary on adding OO to Lisp, I feel, is still very illuminating. As for "not reposting to HN", I take that as "don't clutter up the front page with something that's been posted multiple times already and has been discussed to death." Posting it in a comment for those that haven't seen it is nowhere near comparable.
- kazinator 6y agoThe commentary on adding OO to Lisp is garbage. > "Making Scheme object-oriented is a sophomore homework assignment." Demonstrating basic OOP in C is likewise a suitable homework assignment. http://rosettacode.org/wiki/Inheritance/Single/C http://rosettacode.org/wiki/Inheritance/Single/C Making a viable object-oriented programming system for others to use is not a trivial task in any language. No object system for Scheme that people actually use had been written by a sophomore as homework and gone into production in that state. (Linux started by a school kid tinkering with kernel programming too; but it would be a strawman to say that a bright undergrad can make a serious Unix clone in a few weeks that Amazon can put into the cloud and sell services on.) The Common Lisp object system took many people years of work, and integrates deeply into the language, such that every object type has a class and can participate meaningfully in the object system without being wrapped in a class. > Due to the difficulty of making C object oriented, only two serious attempts at the problem have made any traction: C++ and Objective-C. Those are examples of having enough traction to actually get people to switch from C to a new language. Ad hoc object systems have been implemented in C programs umpteen times, and a number of such things are available, or have been historically available, as formal libraries for use in C programs. These all have "traction" in their "respective" projects and ecosystems; there is a lot of OOP action within C.
- lispm 6y ago> Ad hoc object systems have been implemented in C programs umpteen times, and a number of such things are available, or have been historically available, as formal libraries for use in C programs. Including CLOS-like OO extensions for C. Like Dynace: https://github.com/blakemcbride/Dynace https://github.com/blakemcbride/Dynace