Merge branch 'master' of git://factorcode.org/git/factor
						commit
						da639739bd
					
				|  | @ -139,15 +139,6 @@ HELP: -nrot | ||||||
|     } |     } | ||||||
| } ; | } ; | ||||||
| 
 | 
 | ||||||
| HELP: nrev |  | ||||||
| { $values { "n" integer } } |  | ||||||
| { $description "A generalization of " { $link spin } " that reverses any number of items at the top of the stack." |  | ||||||
| } |  | ||||||
| { $examples |  | ||||||
|   { $example "USING: prettyprint generalizations ;" "1 2 3 4 4 nrev .s" "4\n3\n2\n1" } |  | ||||||
|   "The " { $link spin } " word is equivalent to " { $snippet "3 nrev" } "." |  | ||||||
| } ; |  | ||||||
| 
 |  | ||||||
| HELP: ndip | HELP: ndip | ||||||
| { $values { "quot" quotation } { "n" integer } } | { $values { "quot" quotation } { "n" integer } } | ||||||
| { $description "A generalization of " { $link dip } " that can work "  | { $description "A generalization of " { $link dip } " that can work "  | ||||||
|  | @ -327,7 +318,6 @@ $nl | ||||||
| { $subsection nnip } | { $subsection nnip } | ||||||
| { $subsection ndrop } | { $subsection ndrop } | ||||||
| { $subsection ntuck } | { $subsection ntuck } | ||||||
| { $subsection nrev } |  | ||||||
| { $subsection mnswap } | { $subsection mnswap } | ||||||
| "Generalized combinators:" | "Generalized combinators:" | ||||||
| { $subsection ndip } | { $subsection ndip } | ||||||
|  |  | ||||||
|  | @ -1,8 +1,8 @@ | ||||||
| ! Copyright (C) 2007, 2008 Chris Double, Doug Coleman, Eduardo | ! Copyright (C) 2007, 2008 Chris Double, Doug Coleman, Eduardo | ||||||
| ! Cavazos, Slava Pestov. | ! Cavazos, Slava Pestov. | ||||||
| ! See http://factorcode.org/license.txt for BSD license. | ! See http://factorcode.org/license.txt for BSD license. | ||||||
| USING: kernel sequences sequences.private math math.ranges | USING: kernel sequences sequences.private math combinators | ||||||
| combinators macros quotations fry macros locals ; | macros quotations fry ; | ||||||
| IN: generalizations | IN: generalizations | ||||||
| 
 | 
 | ||||||
| << | << | ||||||
|  | @ -51,9 +51,6 @@ MACRO: nnip ( n -- ) | ||||||
| MACRO: ntuck ( n -- ) | MACRO: ntuck ( n -- ) | ||||||
|     2 + '[ dup _ -nrot ] ; |     2 + '[ dup _ -nrot ] ; | ||||||
| 
 | 
 | ||||||
| MACRO: nrev ( n -- ) |  | ||||||
|     1 [a,b] [ ] [ '[ @ _ -nrot ] ] reduce ; |  | ||||||
| 
 |  | ||||||
| MACRO: ndip ( quot n -- ) | MACRO: ndip ( quot n -- ) | ||||||
|     [ '[ _ dip ] ] times ; |     [ '[ _ dip ] ] times ; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -35,7 +35,7 @@ M: too-many-arguments summary | ||||||
|     drop "There must be no more than 4 input and 4 output arguments" ; |     drop "There must be no more than 4 input and 4 output arguments" ; | ||||||
| 
 | 
 | ||||||
| : check-memoized ( word -- ) | : check-memoized ( word -- ) | ||||||
|     dup #in 4 > swap #out 4 > or [ too-many-arguments ] when ; |     [ #in ] [ #out ] bi [ 4 > ] either? [ too-many-arguments ] when ; | ||||||
| 
 | 
 | ||||||
| : define-memoized ( word quot -- ) | : define-memoized ( word quot -- ) | ||||||
|     over check-memoized |     over check-memoized | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue