1

标题几乎概括了要点。

我感兴趣的是,在使用动态语言时是否可以启用/禁用合同执行,而不会面临严重/未诊断失败的严重风险?

如果不是,那么关键似乎(对我来说)是任何强制执行都是组件逻辑的必需部分,而不是根据 DbC 强制执行的可移除性精神是可选/可移除的。

4

2 回答 2

3

这不仅是可能的,而且还有现实世界的实现,而且它们已经存在多年了。例如,这里有一个用于 Python的DbC 实现,它已有12 年历史

于 2009-03-16T02:07:11.607 回答
2

我相信 lisp 具有良好的契约框架设计。

http://www.cl-user.net/asp/OkD82/sdataQkIGW7mlSHARDQ3r-H8X8yBX8yBXnMq=/sdataQu3F $sSHnB==

于 2009-03-17T15:27:19.103 回答