申請了 domain https://violet-lang.org/ 給 violet 使用。比較大的變化是
- Inductive types 可以生成相應的 eliminator 的類型與計算
- 重新設計了 constructors 的 namespace,@ice1000 說的是對的,constructors 被放到 namespace 之下其實影響不大,要用時再打開,或是設計表面語法就可以了
- 提供
\operator讓開發者自己定義需要的運算式語法,比如\operator "\x + \y" => add x y \associativity: \left
- 模組現在預設是 private,並新增
\export關鍵字 - 建立了 project 概念,現在可以用
info.vt管理專案依賴,進一步可以參考 https://github.com/violet-prover/std - kernel 加入內建的 record
下一步? [local-0]
現在的 <= \elim 並不處理有任何帶有非純變數參數的 elimination target,因為這會導致 eliminator 有些 case 完全沒有意義,需要引入等式去除不可及的分支。另一個辦法是讓開發者提供 motive,但那樣就沒幫助到開發者了xd
另外 lock 檔案的鎖定實現還不完整,這些實務上的限制會是接下來需要仔細處理的問題