我经常发现自己在REPL中进行实验,并且会说类似以下内容:
subset Bar of Int where * %% 57;
然后,我Bar
尝试检查-ness的情况。
一切都很高兴,直到我意识到我想更改的定义Bar
。
如果我只是重新定义Bar
,我会得到一个Redeclaration of symbol
例外。
我尝试使用MONKEY-TYPING
,augment
像这样:
use MONKEY-TYPING;
augment subset Bar of Int where * %% 37;
但这使我犯了同样的错误。
我为什么要这个?因此,我可以迭代我的子集(或类或其他符号)的定义,同时重用我已经在历史记录中键入的测试。
use MONKEY-TYPING
,augment
但是它们在REPL中还不能正常工作(还可以吗?),因为它需要很多魔术和鸭子胶带。