]> gitweb.factorcode.org Git - factor.git/blob - extra/math/combinators/combinators.factor
Switch to https urls
[factor.git] / extra / math / combinators / combinators.factor
1 ! Copyright (C) 2013 Loryn Jenkins.
2 ! See https://factorcode.org/license.txt for BSD license.
3 USING: kernel math ;
4 IN: math.combinators
5
6 : if-negative ( ..a n true: ( ..a n -- ..b ) false: ( ..a n -- ..b ) -- ..b )
7     [ dup 0 < ] 2dip if ; inline
8
9 : if-positive ( ..a n true: ( ..a n -- ..b ) false: ( ..a n -- ..b ) -- ..b )
10     [ dup 0 > ] 2dip if ; inline
11
12 : when-negative ( ..a n quot: ( ..a n -- ..b ) -- ..b )
13     [ ] if-negative ; inline
14
15 : when-positive ( ..a n quot: ( ..a n -- ..b ) -- ..b )
16     [ ] if-positive ; inline
17
18 : unless-negative ( ..a n quot: ( ..a n -- ..b ) -- ..b )
19     [ ] swap if-negative ; inline
20
21 : unless-positive ( ..a n quot: ( ..a n -- ..b ) -- ..b )
22     [ ] swap if-positive ; inline