News for hackers. Stuff that matters.
Re:Node.js 14 is over 20x faster than Python3.8 for fib(n) by Sohcahtoa82 on Tuesday February 09, 2021 @05:39PM (#26083410)
> Python lets you do _far_ more shenanigans that Javascript does

Does JavaScript let you do this monstrosity of terrible code?

    Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)] on win32
    Type "help", "copyright", "credits" or "license" for more information.
    >>> class Dog(object):
    ...     def speak(self):
    ...             print("bark!")
    ... 
    >>> class Cat(object):
    ...     def speak(self):
    ...             print("meow!")
    ...
    >>> animal = Dog()
    >>> animal.speak()
    bark!
    >>> animal.__class__ = Cat
    >>> animal.speak()
    meow!
    >>>
Re:Node.js 14 is over 20x faster than Python3.8 for fib(n) by Zarel on Wednesday February 10, 2021 @05:07AM (#26087387)
A lot of people have responded "yes", but no one's taught you how yet, so here's some example code that you can paste into your browser's Devtools or Node's REPL:

    class Dog {
      speak() {
        console.log("bark!");
      }
    }
    class Cat {
      speak() {
        console.log("meow!");
      }
    }
    animal = new Dog();
    animal.speak();
    Object.setPrototypeOf(animal, Cat.prototype);
    animal.speak();
This will produce:

    bark!
    meow!
Re:Node.js 14 is over 20x faster than Python3.8 for fib(n) by tracker1 on Tuesday February 09, 2021 @05:49PM (#26083542)
Yes, you absolutely can. In fact, this was part of my ES5 Date constructor polyfill.
Re:Node.js 14 is over 20x faster than Python3.8 for fib(n) by detaro on Tuesday February 09, 2021 @05:43PM (#26083471)
You can replace an object's prototype in JS, wouldn't that do the same?