Xbasic: 1980s era BASIC, compiler to x86-64, complete with test suite
3 months ago
- #x86-64
- #compiler
- #BASIC
- xbasic64 可将1980年代经典BASIC方言(Tandy Color BASIC/GW-BASIC/QuickBASIC)直接编译为原生x86-64可执行文件
- 支持带行号的经典BASIC语法或结构化代码
- 包含数值类型(整型/长整型/单精度/双精度)及字符串处理函数(LEFT$/MID$等)
- 具备IF/THEN/ELSE、FOR/NEXT、WHILE/WEND、DO/LOOP、SELECT CASE等控制流结构
- 支持带递归的过程(SUB/FUNCTION)及文件I/O操作
- 采用三阶段编译管道:源代码→词法分析→语法分析→代码生成→汇编→可执行文件
- 通过x86-64汇编运行时库处理I/O、字符串操作及数学函数
- 关键设计:无中间表示(IR)、采用System V AMD64应用二进制接口、遵循GW-BASIC类型语义
- 依赖Rust工具链、系统汇编器(as)及带libc的C编译器/链接器(cc)
- 兼容macOS(x86-64架构/通过Rosetta支持ARM64)和Linux(x86-64架构)