I've been experimenting with having `ts-blank-space` use the (unstable) TypeScript-go JS API. At first it was ~60% slower than using the TS 6 API, but with a bit of investigation, a bug fix, and a small refactor to use different API calls it is now ~24% faster! Draft PR: github.com/bloomberg/ts...
Ashley Claymore
@ashley-c.bsky.social
JavaScript Infrastructure & Tooling at Bloomberg. TC39 Delegate. London.
@ryansolid.bsky.social would it make sense for memos created without an owner scope to default to lazy? Closer to how preact-signals only link if there is an active effect. Maybe only useful when solid signals are used on their own, which is maybe not an important use case for the package?
Sudden panic at seeing an email saying my order for the Font Family was being processed. I didn't buy any fonts 😦 the sans-serif family is good enough for me. Then remembered the climbing wall I went to earlier was called The Font 😮💨
One use case for the new `JSON.parse` source API: adding custom handling for floating point rounding (e.g. error or switch to BigInt): proposal: github.com/tc39/proposa... mdn: developer.mozilla.org/en-US/docs/W...
If anyone needs a silly, not portable, zero dependency, one liner TypeScript build script that can only handle a single file. Look no further!
@ryansolid.bsky.social was there a stream where you covered the solid 2.0 createStore ideas? You talked about it briefly in the more recent stream and it sounded very interesting - only diffing store changes when there is a known listener (I think thats what I heard). Thanks!
Witnessed all 5 stages within one context window: - denial "but I've already built the code" - anger "nothing here suggests an error" - bargaining "I could delete the test" - depression "thank you for your patience while we work through this" - acceptance "you're absolutely right"
3 years in a row I posted about Temporal on Jan 1st. Now the year has come* I of course forgot. * Not stage 4 yet, but all signs point to this year and Temporal has shipped in Firefox and coming in Chrome 144.
This year is the year I'm sure
Slides done for one of my two upcoming tc39 agenda items. Composites comparator choice: docs.google.com/presentation... (Yet to be finalised) agenda here: github.com/tc39/agendas...
Composite November 2025
Composites' Comparator Choice For discussion
docs.google.com
Great to get that hour back that we loaned out back in March but can't shake the feeling that should have charged interest
. @viteconf.org was the first in-person conference I've been to and it set the bar high! Excellent talks and really welcoming atmosphere. Amsterdam is a fantastic city. Thanks to everyone for the geeky JS chats.
If I add `npm run build` to the auto-approve list and it has edit access to package.json - have I auto approved everything?
I've found chatting with LLMs very useful. But have had to turn off inline suggestions. Too much time spent reading the suggestion, only to reject it because it's not what I'm trying to do. If I've only typed two characters, that is not enough to read my mind.
Expandable hovers 😍 Know these have been in the works for a while and I'm so excited to try them out. devblogs.microsoft.com/typescript/a...
Announcing TypeScript 5.9 Beta - TypeScript
Today we are excited to announce the availability of TypeScript 5.9 Beta. To get started using the beta, you can get it through npm with the following command: npm install -D typescript@beta Let’s tak...
devblogs.microsoft.com
TypeScript 5.9 Beta just went out! Try it in your project and let us know what you think: devblogs.microsoft.com/typescript/a...
Capturing for posterity: I asked ChatGPT "When do you think there will be a best selling novel written entirely by AI?" A: "You might see a fully AI-authored book in the Amazon Top 100 by the late 2020s, and a New York Times best-seller by early 2030s."
First trip to NY! 80/20% nervous/excited. Watch films or try and code without a copilot on the flight?
I'm sure I read somewhere that there was a plan to add a new React hook for getting a representation of the current component stack to help with debugging/error reporting. But I can't find it anywhere. Did I dream this? cc: @en-js.bsky.social @no.lol
Back from a week hiding in Wales 🏴. Mostly enjoying the countryside, steam trains, and castles. Did do a little bit of c++ for the first time in years, having a go at implementing something in v8. I had not missed preprocessor header includes and macros. JS has made me soft.
TIL assert.partialDeepStrictEqual( [1, 2, 3, 4, 5, 6, 7, 8, 9], [4, 5, 8], ); My gut guess would have been that only common prefix would pass. I can see how this is also useful, just surprised me. nodejs.org/api/assert.h...
What if the JSX transform was: (x) => <elm prop1={1} prop2={x} />; to const _staticProps = { prop1: 1 }; (x) => jsx("elm", { __proto__: _staticProps, prop2: x }); i.e the contract is that the props on the prototype never change so don't need to be diffed.
Myself and @ashley-c.bsky.social wrote a post on the TypeScript Go port (originally published on LogRocket). If you'd like to read it, it's here: johnnyreilly.com/typescript-g...
TypeScript is going Go: Why it’s the pragmatic choice | johnnyreilly
TypeScript is being ported to Go. This is a reflection on the port, and what it means for the TypeScript ecosystem.
johnnyreilly.com
Great explanation of the journey from Records and Tuples to Composites and why they are useful by @mattpocock.com and TC39er @ashley-c.bsky.social youtu.be/hFenspfGLTk?...
Arrays, objects... now ‘composites’?
YouTube video by Matt Pocock
youtu.be
ECMAScript explanations 😉 @mattpocock.com and proposal champion @ashley-c.bsky.social explain why TC39 Stage 2 Record & Tuple has been withdraw and replaced with the new Stage 1 Composites proposal 👍 Contains discussion of performance expectations and constraints. youtu.be/hFenspfGLTk
Arrays, objects... now ‘composites’?
YouTube video by Matt Pocock
youtu.be
YIRL* that in V8 even empty functions hold the context they were created in. Had misremembered that part of mrale.ph/blog/2012/09... * yesterday I relearned
Grokking V8 closures for fun (and profit?)
mrale.ph
@ashley-c.bsky.social and I have written a @logrocket.bsky.social post on our take on the TypeScript Go port. Many thanks to @joshuakgoldberg.com and @jakebailey.dev for their very useful input ❤️ blog.logrocket.com/typescript-g...
TypeScript is going Go: Why it's the pragmatic choice - LogRocket Blog
Explore why the TypeScript team is porting the compiler to Go in TypeScript 7. Learn how this shift impacts performance, tooling, and the future of the TypeScript ecosystem.
blog.logrocket.com