No description
- Rust 94.3%
- JavaScript 1.8%
- Astro 1.7%
- CSS 1.5%
- Lua 0.2%
- Other 0.5%
| +devops | ||
| docs | ||
| editors/nvim | ||
| frontend | ||
| src | ||
| tests | ||
| tree-sitter-bts | ||
| types/web | ||
| .dockerignore | ||
| .gitignore | ||
| AGENTS.md | ||
| Cargo.lock | ||
| Cargo.toml | ||
| README.md | ||
bts
bts stands for better ts: a Rust compiler for a strongly typed, C-like language that transpiles to JavaScript.
The language targets the JavaScript runtime directly, but it must be able to ingest TypeScript .d.ts files so programs can type-check against existing JavaScript and TypeScript ecosystems.
Core direction:
- C-like syntax without semicolons
- Strong static typing
- JavaScript output, not TypeScript output
- TypeScript declaration ingestion for interop
- Conventional compiler pipeline: lexing, parsing, lowering, type checking, analysis, and code generation
This repository is currently the compiler seed project.
Useful docs:
docs/syntax.md: source language syntax and examplesdocs/records.md: official record/object-equivalent syntax and structural typing rulesdocs/comptime.md: user-facing comptime function guidedocs/comptime-internals.md: compiler internals for comptime evaluationdocs/architecture.md: compiler architecture and current implementation statusdocs/roadmap.md: completed work and planned compiler and tooling milestones