有没有比 :set showimplicits 更能解释统一失败的信息?

Is there something more informative than :set showimplicits for deciphering unification failures?

是否有比 :set showimplicits 更能帮助追踪统一错误的信息?我目前正在收到这个,但不知道从这里去哪里:

很遗憾,简短的回答是 "No, not really"。但是,我不喜欢看到糟糕的错误消息,所以如果您能提供更多详细信息,也许我们可以研究并改进。

较长的答案是 Idris 在这里报告错误的方式有问题,我希望发生的事情与此类似:https://github.com/idris-lang/Idris-dev/issues/2126

我注意到您只显示了统一错误的第二 "specifically" 部分。真正的问题很可能在第一部分。由于统一失败可能是暂时的,并且可能会在阐述者获得更多信息时得到解决,因此当额外信息出现时(通常来自术语的其他部分),错误消息会更新。这里发生的事情是,第一次尝试失败的部分现在可以了,但其他部分仍然坏了。

现在,我建议忽略 "specifically" 位并查看第一部分(我认为这可能相当大)。否则,如果您程序的相关部分很容易解释,也许邮件列表中的某个人可以提供帮助。

不过我最终会解决相关问题...