[ ] [ [ \ forgotten-predicate-test forget ] with-compilation-unit ] unit-test
[ f ] [ \ forgotten-predicate-test? predicate? ] unit-test
+
+GENERIC: generic-predicate? ( a -- b )
+
+[ ] [ "IN: classes.tests TUPLE: generic-predicate ;" eval( -- ) ] unit-test
+
+[ f ] [ \ generic-predicate? generic? ] unit-test
: classes ( -- seq ) implementors-map get keys ;
: create-predicate-word ( word -- predicate )
- [ name>> "?" append ] [ vocabulary>> ] bi create ;
+ [ name>> "?" append ] [ vocabulary>> ] bi
+ create dup reset-generic ;
: predicate-word ( word -- predicate )
"predicate" word-prop first ;