What we do at Igalia's Compiler Team
Compilers for the web #
At Igalia, our development teams have included a team specializing in compilers since around 2012. Since most tech companies don't work on compilers or even more generally on programming language implementation, you might be wondering "What does a compilers team even do?". This blog post will try to explain, as well as highlight some of our recent work.
While many companies who work on compilers own or maintain their own programming language (e.g., like Google and Go, Apple and Swift, Mozilla and Rust, etc.), domain-specific compiler or language, Igalia is a little bit different.
To actually do the work, Igalia has grown a compilers team of developers from a variety of backgrounds. Some of our developers came into the job from a career in industry, and others from a research or academic setting. Our developers are contributors to a variety of non-web languages as well, including functional programming languages and scripting languages.
Our recent work #
Given our team's diverse backgrounds, we are able to work on not only compiler implementations (which includes compilation, testing, maintenance, and so on) but also in the standardization process for language features. To be more specific, here are some examples of projects we're working on, split into several areas:
- JS feature development & standardization: We also work on implementing features proposed by the web platform community in all of the major JS engines, and we work on standardizing features as participants in TC39.
- Recently we have been doing a lot of work around class fields and private methods in multiple browsers.
- We're also involved in the work on the Temporal proposal for better date/time management in JS.
- Another example of our recent work in standardization is the BigInt feature, which is now part of the language specification for JS. Igalians led work on both the specification and also its implementation in browsers. ,  We are currently working on integrating BigInts with WebAssembly as well.
- WebAssembly: In the last year, we have gotten more involved in helping to improve Wasm, the new low-level compiler target language for the web (so that you can write C/C++/etc. code that will run on the web).
In the future, we'll continue to periodically put pointers to our recent compilers work on this blog, so please follow along!
If you think you might be interested in helping to expand the web platform as a customer, don't hesitate to get in touch!