Files
quartz-research-note/content/モジュールの名前環境解決を考慮した評価文脈.md
Matsuura Tomoya(Windows) a8187dc4f4
Some checks failed
Build / build (push) Failing after 22m53s
[obsidian] vault backup: 2026-02-02 22:21:12[
2026-02-02 22:21:12 +09:00

26 lines
564 B
Markdown

何度目だという[[評価環境]]の実装。
モジュールも考慮して、名前空間のOpenとかも含めた評価環境を実装したい。
名前の側で正規化するのがいいのか?
```rust
//Environment全体をSlotMapで管理する
struct Environment<V>{
namespace:Option<Symbol>
parent: Option<EnvKey>
children: Vec<EnvKey>
binds: Vec<(Symbol,V)>
}
```
letでスコープを広げたときはnamespaceなしで辿ることにする
最終的にはLanguage ServerでSpanからEnvironment
```rust
fn get_normalized_name()
```