Ich experimentiere oft in der REPL und ich werde etwas sagen wie:
subset Bar of Int where * %% 57;
Dann spiele ich Bar
ein bisschen mit der Überprüfung der -ness für Dinge herum .
Alles ist glücklich, bis mir klar wird, dass ich die Definition von ändern möchte Bar
.
Wenn ich nur neu definiere Bar
, bekomme ich eine Redeclaration of symbol
Ausnahme.
Ich habe versucht, dies zu verwenden MONKEY-TYPING
und zu augment
mögen:
use MONKEY-TYPING;
augment subset Bar of Int where * %% 37;
Aber das brachte mir den gleichen Fehler ein.
Warum will ich das? So kann ich meine Teilmengen- (oder Klassen- oder andere Symbol-) Definitionen durchlaufen, während ich die Tests, die ich bereits eingegeben habe und die sich in meinem Verlauf befinden, wiederverwenden kann.
use MONKEY-TYPING
undaugment
aber sie funktionieren in der REPL (noch?) Nicht richtig, weil sie viel Magie und Entenband benötigt.supersede
, aber ich glaube, dass dies derzeit nicht implementiert ist.