小编MrO*_*MrO的帖子

Agda 中匿名模块的用途

进入 Agda 标准库的根目录,并发出以下命令:

grep -r "module _" . | wc -l
Run Code Online (Sandbox Code Playgroud)

产生以下结果:

843
Run Code Online (Sandbox Code Playgroud)

每当我遇到这样的匿名模块(我假设这就是它们的名字)时,我完全无法弄清楚它们的目的是什么,尽管它们明显无处不在,也不知道如何使用它们,因为根据定义,我无法使用他们的名字,尽管我认为这应该是可能的,否则即使允许定义它们也是没有意义的。

维基页面:

https://agda.readthedocs.io/en/v2.6.1/language/module-system.html#anonymous-modules

有一个名为“匿名模块”的部分实际上是空的。

有人可以解释一下匿名模块的目的是什么吗?

如果可能,任何强调此类模块定义的相关性以及如何使用其内容的示例将非常感激。


以下是我提出的可能的想法,但似乎没有一个是完全令人满意的:

  1. 它们是一种在 Agda 文件内重新组合主题相同的定义的方法。
  2. 它们的名字是由 Agda 在使用它们提供的函数时以某种方式推断出来的。
  3. 它们的内容仅在其 englobing 模块内可见/使用(有点像块private)。

module agda

5
推荐指数
1
解决办法
307
查看次数

标签 统计

agda ×1

module ×1