From TypeScript
You like modules, curly braces, and fast iteration. Rasmalai keeps the shape of the code and swaps the runtime: a stripped native binary instead of V8, milliseconds instead of node_modules.
Modules you already recognize
Imports name what they take and where they live. The standard library resolves from the compiler itself — nothing to install:
Numbers with hardware sizes
Every number in TypeScript is a double. Rasmalai sizes numbers like the machine does: Int is 64 bits, Float is IEEE-754 double, and mixing the relaxed FastFloat without an explicit conversion is a compile error instead of a silent precision change:
Null-safety without undefined
There is no undefined, and absence is explicit: a missing value is null with a nullable type (T?), and the operators you know transfer directly:
import { Env } from "@std/env";
Env.set("PORT", "8080");
let port = Env.get("PORT");
print("listening on {port}"); Ship one file
No bundler split-chunks, no runtime flags, no container layer for the interpreter:
rnx build --releaseOne stripped native binary, zero dependencies. Keep the modules and the iteration speed. Lose the runtime. Next: the Guide from the top, or Modules and Packages for the manifest and registry.