47 lines
473 B
Plaintext
47 lines
473 B
Plaintext
fn ++ {|n|
|
|
+ $n 1
|
|
}
|
|
|
|
fn -- {|n|
|
|
- $n 1
|
|
}
|
|
|
|
fn neg {|n|
|
|
* $n -1
|
|
}
|
|
|
|
fn is-zero {|n|
|
|
== $n 0
|
|
}
|
|
|
|
fn is-neg {|n|
|
|
< $n 0
|
|
}
|
|
|
|
fn is-one {|n|
|
|
== $n 1
|
|
}
|
|
|
|
fn -minmax {|cb @numbers|
|
|
use ./common
|
|
var l = (common:to-list $@numbers)
|
|
if (is-zero (count $l)) {
|
|
return
|
|
}
|
|
var m = $l[0]
|
|
all $l[1..] | each {|n|
|
|
if ($cb $n $m) {
|
|
set m = $n
|
|
}
|
|
}
|
|
put $m
|
|
}
|
|
|
|
fn min {|@numbers|
|
|
-minmax $'<~' $@numbers
|
|
}
|
|
|
|
fn max {|@numbers|
|
|
-minmax $'>~' $@numbers
|
|
}
|