Dreaming the future of software; Project Editor ECMAScript 2015; Reformed Smalltalker JavaScript historian dl.acm.org/doi/abs/10.114@allenwb@mastodon.social

Sherwood Oregon USA
Doing some more history of Web standards research: It’s pretty clear that when people say “We’re looking for a standards group that can move quickly on XXX” what they usually mean is “We’re looking for a group that will rubber stamp what we have done."
3
23
TIL: “ECMA” also standards for European Carton Makers Association. ecma.org/
3
7
Give the man a prize. It looks like a specification bug! The a[0]=4 eventually leads to an assertion within the specification that fails. That means spec. bug. tc39.github.io/ecma262/#sec-… Should fall through to OrdinarySet if p!==receiver
Enjoy figuring out the correct semantics of this little goody: 😀 ``` Object.setPrototypeOf(Array.prototype, new Int8Array(0)); const a = []; a[0] = 4; console.log(+a[0]); ``` Spoiler: browsers disagree on what's correct here. 🙈
2
3
34
Long before there was ECMAScript there was ECMAlgol ecma-international.org/publi…
1
9
33
Life is going to be hell the next couple years for the maintainers of the IANA time zone database...
5
11
Allen Wirfs-Brock retweeted
This is a working particle accelerator built using LEGO bricks. It's called it the LBC (Large Brick Collider) and it can accelerate a LEGO soccer ball to just over 12.5 kilometers per hour ow.ly/xzv130oDzio
25
696
2,166
I'd would have gone with: C is for C
2
23
JavaScript wasn’t the first prototype based language where developers synthesize class abstractions: "Class-based NewtonScript Programming" chrome-extension://oemmndcbldboiebfnladdacbdfmadadm/waltersmith.us/newton/Class-…
2
1
10
If you want to know more about NewtonScript and the Apple Newton architecture check out: waltersmith.us/newton/
1
1
4
The links to the papers seem to have an extra /newton node in their URLs eg …/newton/newton/… delete one of the /newtons to access each paper
1
“...And it’s a more-or-less compliant Hallelujah…" 🙏
1
1
4
Allen Wirfs-Brock retweeted
Replying to @RSargent5x5
the lack of easy good alternatives is why finalization ends up getting implemented. But consider: cancelable resource subscriptions backed up by, keep-alive, deadline triggered, or app lifecycle triggered reclamation policies.
1
4
Pretty much every experienced garbage collector developer I’ve met hate GC finalization mechanisms and consider them unreliable user-level bug farms ... but they end up implementing them anyway. @andywingo github.com/tc39/proposal-wea…
2
8
17
Why is GC finalization so problematic? See: github.com/tc39/proposal-wea…
1
2
6
Blush 🤭
This doesn’t get said enough: the ES spec is really great. The best language spec I’ve had the pleasure of implementing to. So unambiguous, even when that wasn’t the easiest thing to do.
1
10
I have to look up things in the ECMAScript spec. all the time...and I wrote the damn thing.
Replying to @getifyX
I've said that quote many times, on podcasts, in classes, in writing, etc. And it's always meant with this intent: It is impossible to *know* all of a thing as complex as a language like JS. No one can retain all that. I don't, Brendan doesn't, nobody does.
2
15
63
Julia led to me being involved with EcmaScript standards. She was manager of Visual Basic product unit and I was in my 1st week working for her as a "dynamic language" architect. Chatting in her office she says "Do you know anything about JavaScript"? I said: No, but...
Five years to the top: Microsoft's software boss Julia Liuson techvibes.com/2019/04/09/fiv…
2
15
I think node/cjs made exactly the right decisions for what they wanted to accomplish in 2009. They took a pragmatic approach that built upon then currently used approaches to JS modularity that didn’t require language changes or deep engine modifications. 1/
I was involved in these conversations back in 2009. I still think we made the right choice with sync require and callbacks, given what we had at the time, and the current situation is, if not the best outcome now imaginable, far from the worst, and maybe the best possible. …
2
5
15
If you need to ship in the foreseeable future, never take a dependency upon a standards group or a big company. Typical time horizons: Most dev projects < 1 year Big Co projects 1-3 years Standards projects 3-∞ 2/
1
3
11
Because of these different time horizons, different approaches are possible: normal devs work with what they have. Big cos, can choosing complex time consuming approaches. Standards orgs can considers approaches that require fundamental language extensions/changes. 3/3
3