Recent submissions

Comment · 10 years ago
You can't diff between 2.47 and 2.48 and see what changed? Or is that a binary part you don't have source access to?
Comment · 10 years ago
Rust has plans for a `become` operator for tail call optimization.
Comment · 10 years ago
Because there's no version control that way. If I depended upon babel/babel (or whatever it's called on Github), when it changed from v5.x to v6.x, it would have broken my build.
Comment · 10 years ago
On Linux, it's 30ish lines, with half of those there to make false.c able to reuse some code. (I know, it's stupid.)

In OpenBSD, it's 3 LoC IIRC.

Comment · 10 years ago
JavaScript doesn't have XSS. The DOM allows for XSS vulnerabilities, but that's an API, not the language.
Comment · 10 years ago
The author really likes lesbians - see her twitter feed for example. You can safely ignore the 'and gay' part as just a bit of her personality coming out in her artwork as far as the technical argument goes.
Comment · 10 years ago
Lowest common denominator says to default to ES5, tell people that's the default, and then show them how to change it later if they want or need to.
Comment · 11 years ago
That's because the core of OO (message passing to opaque things) is really all you can do if you have a PID. In other more-traditional object-oriented languages, they usually have defaults that let you do more than just send messages - such as mutate the internal state directly in ways that the object cannot detect.
Comment · 11 years ago
If you're talking about a good type system, sure. The type system in Go is frankly terrible at describing the kinds of invariants and reuse we care about.

I'd dare say that diaylizer (Elixir's optional but easy to use type system) would lead to more maintainable code than Go's forced type system in the long run.

Comment · 11 years ago
A compiler takes a text from one language and translate it into text of another executable language.
Comment · 11 years ago
It's called a merger.
Comment · 11 years ago
instanceof cannot be determined statically because I can do...

    const a = {};
    Object.setPrototypeOf(a, SomethingElse);
Comment · 11 years ago
Anything ES6y implemented in modern versions of V8 that aren't in the version that Node.js is using cannot be used. E.g., if you use `"strict mode";`, `const` works in an ES6 way in io.js but throws a syntax error in Node, though if you don't use `"strict mode";` you continue to get the pre-ES6 non-standard `const` that V8 has provided for a long time.

A minor one is that in io.js, `require('events') === require('events').EventEmitter` while that's not true in Node (where require('events') just gives an object with `EventEmitter` and possibly other properties on i.

Comment · 11 years ago
I don't think Grooveshark counts as a startup.
Comment · 11 years ago
Bloodletting isn't witchcraft. It removes iron from the body such that virii and bacteria trying to reproduce would have problems. It makes the host environment more hostile to the invading species. It has a lot of negative side effects and wasn't very effective, but it did have an effect.

Of course, some people did bloodlet for reasons that didn't help, but without knowledge of bacteria, many were just trying their best with what limited knowledge they did have.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton