Last week we introduced what import maps are and how they work. This week Yoshi explores the feature in depth, in the second part of his two part series on Import maps.
Read the blog post here: spidermonkey.dev/blog/2023/0…
Late last year, we implemented the Import Maps specification in Firefox. Yoshi (the engineer working on it) wrote an in-depth introduction to it, along with a deep dive that you can expect next week!
Read the blog post here: spidermonkey.dev/blog/2023/0…
Ecma International recently approved the 2022 standard of ECMAScript. But there is something new in this edition that hasn't been part of prior editions, and this isn't a new programming feature. 🧵 hacks.mozilla.org/2022/06/th…
My team at Mozilla is hiring. Come write compilers with us! The Layout, DOM, and Media Playback teams are also looking for C programmers: careers.mozilla.org/position…
Happy to answer questions if you're interested!
Firefox 90 is here and this update has some nice JavaScript additions!🔥🦊
✔️ Private fields and methods are now enabled by default
🏳️🌈 The 2D Canvas API has a new createConicGradient
🔒 A new version of SmartBlock
hacks.mozilla.org/2021/07/ge…
Our friends @SpiderMonkeyJS implemented the Error cause proposal in Firefox 91* (github.com/tc39/proposal-err…)
The WebConsole displays this new cause property in error messages (and yes, you can have a chain of Error causes 🙂)
* 91 will be Beta/DevEdition later this week
ALT screenshot of Firefox WebConsole, with a snippet throwing a new Error with a cause property. The resulting error message in the console shows the Error and another line below starting with "Caused by:" and then the error that was passed as the cause
Just-In-Time (JIT) compilers are used in all major JavaScript engines to improve the speed, but how do they work? At Global Scope @nbpname will help us understand the principles of JIT compilation, and so how to optimize our code.
buff.ly/3dkGzhL
Language specification can be a bit of a mystery. At Global Scope, @codehag introduces the stages of the TC39 process for introducing a new language feature to JavaScript, and some high level concerns around our design process.
buff.ly/3djR3OE