Skip to content

Comment on JavaScript language proposal: function implementation hiding

Comments

I know there's valid uses but everytime JS ships something that isn't a first-class object, everytime it adds security & privacy, it makes me sad for the language.

To have been such a promising exciting open place, where we could ask the runtime anything & see everything... To go from such a blissful state to such a sad industrial world where we just lock down & restrict & control... I hate it. Industrial demands having their claws in computing is shit, & the industry doesn't deserve it's bad things.

But we certainly do see a lot of scary industrial systems spying on & surveilling others. Gross, & defense feels semi justifiable. (Albeit if this starts running in TPM/security enclaves & isn't ddvtools-ad then we can burn it all down & pitchfork some fucking villians).

Also WebAssembly is coming & isnt hidden code (you load the code itself into an address space before launching it I believe?) , but it's going to be vastly less understandable anyways. Making js also dead closed & worthless is parity!

I wish it wasn't like this. I still think "private" is a poison that is un-JS, & whatever merit it has is outweighed by far by it's badness. Almost no one needs it, we did great without it & with informat this. _foo. There are a couple real sensitive uses but mostly we'd be better with loose walls not higher ones. But the fear-based ideology features prominently in the computer-science psyche, and the looking down our noses at a language without hard protection won.

And now people don't reach for convention & lax awesome caveat emptor, we just write tons of stuff with private just because it's in the language and that is absolutely a worse state, is woefully sadder & narrower & more pathetic than where JS was. Awful sadness of letting fear win, of being desperate for control, it defeats us.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.