umajho / dicexp

Dicexp 是一种表示掷骰的表达式。本仓库代码用于对该表达式求值,并作为该表达式的事实标准。
https://umajho.github.io/dicexp/
MIT License
2 stars 0 forks source link

外部变量 #7

Open umajho opened 1 year ago

umajho commented 1 year ago

$ 开头的标识符指向外部变量,其标识符中间允许有不连续的 .,在开头的 $ 后也可以再跟一个 $.

外部变量在开始求值之前由外界注入。

配合 rotext,目前设想可以这么做:

umajho commented 1 year ago

外部变量名称的语义由外部决定。比如配合 rotextrolludejo 也可以是这样:

所有外部变量(依然)以 $ 开头。除去开头的 $ 后:

umajho commented 1 year ago

更新

下面提到的方案已经存在一段时间了,但一直没有放到这里。

这个方案主要配合 rojo[^1] 的角色role系统。 考虑到一个角色名为 小明,很自然能想到用 @小明 来提及它。 虽然 rojo 目前没打算引入提及系统,但 Dicexp 可以借用这种标记方式。

具体如下:

[^1]: rolludejo 太长了,留头存尾去中间得 rojo

umajho commented 1 year ago

已于 19f0e78bad1b37bb6662e7732a5c4a7df833f16e 在语法层面上支持引用第一层外部变量。 要完整实现,还剩下: