模块系统
玄铁的模块系统采用直接的引入和命名空间机制:
- 引 (Import):引入外部模块。路径相对于当前源文件所在目录。text
引 "./库/数学.xt" 引 "./库/文件.xt" 予 文件 - 予 (Alias):为引入的模块指定别名,作为访问其成员的前缀。
- 命名空间隔离:不同模块的同名符号通过模块前缀区分,不会冲突。
- 编译机制:预扫描阶段递归收集所有引入模块的符号,合并编译为单一可执行文件。循环引用被检测并报错。
- 路径规范:玄铁强制路径分隔符规范——
/代表相对路径,\代表绝对路径(Windows 原生)。编译器自动将混用斜杠规范化:相对路径中\→/,绝对路径中/→\。
详细语法、路径解析、完整示例请参阅:05_模块系统.md
铁铺包管理器 (TiePM)
铁铺是玄铁语言的官方包管理器,提供铁器的搜索、安装与发布功能:
- 安装铁器:
铁铺 安装 <包名>— 从远程索引下载并验证安装 - 搜索铁器:
铁铺 搜索 <关键词>— 按名称和描述搜索可用包 - 发布铁器:
铁铺 发布— 打包当前项目并登记到官方索引 - 包清单:项目根目录的
tiepm.toml文件描述包的元信息(名称、版本、仓库、哈希) - 安全保障:所有下载文件经过 SHA256 哈希验证,确保完整性
完整使用指南、命令参考、发布工作流请参阅:07_铁铺使用指南.md
架构设计与 API 规范请参阅:铁铺设计笔记.md
项目根模式(玄铁.配置.toml)
含 玄铁.配置.toml 的目录即项目根(类似 Go 的 go.mod、Rust 的 Cargo.toml)。编译器与 LSP 均从当前文件所在目录向上逐级查找该文件来定位项目根:
- 声明入口:在项目根的
玄铁.配置.toml中声明入口文件:toml[项目] 入口 = "主.xt" - 裸跑编译:项目内任意子目录执行
xtc 铁(不带源文件参数),即编译项目根\入口。 - 编译后立即运行:
xtc pao <源文件>(中文写法xtc 跑 <源文件>)—— 编译产物落到缓存目录后立刻运行,退出码原样透传、临时产物跑完即清理(语义同go run/cargo run)。--之后的参数原样传给程序:xtc pao 主.xt -- 甲 乙。 - 编译配置:
[编译] 严格度 = 默认/严格/禁止、[编译] 忽略警告 = ["W001"]等同样按项目根生效(LSP 与编译器双端一致)。 - 未声明入口时:裸跑会明确报错并提示用法,不会静默猜测编译目标。