[obsidian] vault backup: 2025-08-03 17:51:06[
All checks were successful
Build / build (push) Successful in 6m53s

This commit is contained in:
2025-08-03 17:51:06 +09:00
parent bda19719a9
commit ac6c358150

View File

@@ -22,9 +22,43 @@ type alias Hoge = ()->float //エイリアス宣言
```rust
mod(macro) modname{
//toplevel_decls
}
```
- モジュール単位でMIRとバイトコードを生成して、あとからリンクできるようにする
- ただし、ステージ0マクロの展開もしないといけないので、ASTも出力して保持していないといけない
#### 意味論
```rust
stage(1)
mod(0) modname{
//toplevel_decls
fn foo(){
...
}
}
modname::foo!()
```
これがあったとすると、
```rust
let modname = ${
foo = | | { },
...
}
modname.foo!()
```
こういう感じかなー、あ、でもこうするとモジュール内での相互参照が解決できないか
---
```
Program = FunctionDefinition