]> gitweb.factorcode.org Git - factor.git/blobdiff - basis/combinators/short-circuit/smart/smart.factor
Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places...
[factor.git] / basis / combinators / short-circuit / smart / smart.factor
index ca659cacbef83ad0d68ea36b8028c54a2f230c76..7264a07917a1867fd933efc750f96ec5240741f5 100644 (file)
@@ -1,18 +1,18 @@
-
-USING: kernel sequences math stack-checker effects accessors macros
-       combinators.short-circuit ;
-
+USING: kernel sequences math stack-checker effects accessors
+macros fry combinators.short-circuit ;
 IN: combinators.short-circuit.smart
 
 <PRIVATE
 
+ERROR: cannot-determine-arity ;
+
 : arity ( quots -- n )
     first infer
-    dup terminated?>> [ "Cannot determine arity" throw ] when
-    effect-height neg 1+ ;
+    dup terminated?>> [ cannot-determine-arity ] when
+    effect-height neg 1 + ;
 
 PRIVATE>
 
-MACRO: && ( quots -- quot ) dup arity n&&-rewrite ;
+MACRO: && ( quots -- quot ) dup arity '[ _ _ n&& ] ;
 
-MACRO: || ( quots -- quot ) dup arity n||-rewrite ;
+MACRO: || ( quots -- quot ) dup arity '[ _ _ n|| ] ;