News for hackers. Stuff that matters.
Re:Electron considered harmful by Roboprog on Saturday November 26, 2016 @01:45PM (#13045229)
One of the main benefits of OOP is of course "polymorphism" (abstract base classes, interfaces), so naming any concrete class a "strategy" does seem a bit redundant.

From what I have read by/about Kay, it sounds like his vision of OOP was very much about the actor (message queue) model, rather than (just?) a Simula 67 interface/protocol method table structure.

As for the goofy "nonsense evaluation" in JS, it is a bit unfortunate, but I guess I must just write less nonsense than some others, as this doesn't seem to be a real problem for me :-)

In fairness, the JS I write is client side, and it usually doesn't take very long to get to a state to test new code, as opposed to a long batch process.

Re:Electron considered harmful by qwertyuiop924 on Saturday November 26, 2016 @08:00PM (#13047064)
>One of the main benefits of OOP is of course "polymorphism" (abstract base classes, interfaces), so naming any concrete class a "strategy" does seem a bit redundant.

There are no abstract classes in JS: there doesn't need to be.

Anyways, that's not what I mean: I was talking about the Strategy design pattern, which is actually a way of implementing higher order functions in languages that don't have them: thus, implementing classes for it in JS would be very silly indeed.

As for Kay's vision of OO, it involves not only everything being an object, but extreme late binding. Java has neither.

Re:Electron considered harmful by Roboprog on Sunday November 27, 2016 @02:34PM (#13050948)
OK, gotcha. Somehow, I thought "strategy" was more general than just a single method/function to plug in. (confession: I have the GoF book, but don't remember every section)

I think one of the best points PG (of YC) ever made was about programmers thinking in a particular language. "If Blub doesn't do it, you don't need it" (paraphrasing). Convincing the C++/Java/C# fans they need other features sometimes is quite hard.