tsctends to be the bottleneck in modern TS toolchains. Native compilers like
swcare amazing, but they don’t perform type-checking, so you still need
tscas part of your build process. Would it be possible to speed up
- The author of swc, kdy1dev is working on porting tsc to Go in order to remove the need for tsc in many cases.
- This may not be worth the effort, but seeing as how quickly native compilers gained adoption within the TS ecosystem, a similar solution for replacing the type-checking and generation portions of
tscwould have huge implications.
TLDR; I'm making a Typescript type-checker in Rust. Right now it supports a smaller subset of the type-system and exists as a fun side-project, but the end goal is a compilation tool we can use to make Typescript compilation go brrrr...
- TypeScript-like language for WebAssembly
- javyShopify • Updated Sep 24, 2022
- wasmerwasmerio • Updated Sep 30, 2022
- The leading WebAssembly Runtime supporting WASI and Emscripten
- Run any code on any client — with WebAssembly and Wasmer
- binaryenWebAssembly • Updated Sep 30, 2022
- Compiler infrastructure and toolchain library for WebAssembly
- wasmtimebytecodealliance • Updated Sep 30, 2022
- Standalone JIT-style runtime for WebAssembly, using Cranelift
- nccvercel • Updated Sep 30, 2022
- Compile a Node.js project into a single file. Supports TypeScript, binary addons, dynamic requires.
- bytenodebytenode • Updated Sep 28, 2022
- Minimalist bytecode compiler for Node.js
- thinscriptevanw • Updated Sep 23, 2022
- A low-level programming language inspired by TypeScript
- nectarjsNectarJS • Updated Sep 29, 2022
- waltballercat • Updated Sep 22, 2022
- v8-compile-cachezertosh • Updated Sep 30, 2022
- Require hook for automatic V8 compile cache persistence
WebAssembly (abbreviated Wasm) is a binary instruction format for a stack-based virtual machine. Wasm is designed as a portable compilation target for programming languages, enabling deployment on the web for client and server applications.
WebAssembly | MDN
WebAssembly is a new type of code that can be run in modern web browsers - it is a low-level assembly-like language with a compact binary format that runs with near-native performance and provides languages such as C/C++, C# and Rust with a compilation target so that they can run on the web.
Building to WebAssembly - Emscripten 3.1.9-git (dev) documentation
WebAssembly is a binary format for executing code on the web, allowing fast start times (smaller download and much faster parsing in browsers when compared to JS or asm.js). Emscripten compiles to WebAssembly by default, but you can also compile to JS for older browsers. For some historical background, see these slides and this blogpost.
Dynamic languages are useful tools. Scripting allows users to rapidly and succinctly tie together complex systems and express ideas without worrying about details like memory management or build systems. In recent years programming languages like Rust and Go have made it much easier to produce sophisticated native machine code; these projects are incredibly important developments in computer infrastructure.
How TypeScript Can Speed Up Your Adoption of WebAssembly
WebAssembly, also known as WASM, is being touted as one of the top cloud native trends to watch out for in 2022. WASM - a fast, secure and powerful way to run code across a variety of platforms - bears an uncanny resemblance to container runtimes.
What Is WebAssembly - and Why Are You Hearing So Much About It?
WebAssembly is an open, industry-wide collaborative effort to combine the performance and security of an assembly-like language with the convenience of high-level languages. It could spark a revolution in cloud development.
AssemblyScript: Introduction to WebAssembly for TypeScript Developers
Understand the performance benefits and complexity of using WebAssembly in your application
WebAssembly Interface Types: Interoperate with All the Things! - Mozilla Hacks - the Web developer blog
People are excited about running WebAssembly outside the browser. That excitement isn't just about WebAssembly running in its own standalone runtime. People are also excited about running WebAssembly from languages like Python, Ruby, and Rust. Why would you want to do that?
Announcing the Bytecode Alliance: Building a secure by default, composable future for WebAssembly - Mozilla Hacks - the Web developer blog
Today we announce the formation of the Bytecode Alliance, a new industry partnership coming together to forge WebAssembly's outside-the-browser future by collaborating on implementing standards and proposing new ones. Our founding members are Mozilla, Fastly, Intel, and Red Hat, and we're looking forward to welcoming many more.
Typescript as fast as Rust: Typescript++
JP Posma, April 2022 - Discuss on Hacker News TL;DR: This is a proposal to create a language that sits somewhere between Typescript and Rust, and which you can incrementally adopt if you already use Typescript.