math: some style cleanup.
parent
e6db6bb813
commit
684c2793e7
|
@ -11,7 +11,8 @@ TUPLE: range
|
|||
|
||||
<PRIVATE
|
||||
|
||||
: sign/mod ( x y -- z w ) [ [ /i ] 2keep pick * - ] keep 0 < [ neg ] when ; inline
|
||||
: sign/mod ( x y -- z w )
|
||||
[ [ /i ] 2keep pick * - ] keep 0 < [ neg ] when ; inline
|
||||
|
||||
PRIVATE>
|
||||
|
||||
|
@ -22,7 +23,8 @@ PRIVATE>
|
|||
|
||||
M: range length ( seq -- n ) length>> ; inline
|
||||
|
||||
M: range nth-unsafe ( n range -- obj ) [ step>> * ] keep from>> + ; inline
|
||||
M: range nth-unsafe ( n range -- obj )
|
||||
[ step>> * ] keep from>> + ; inline
|
||||
|
||||
! We want M\ tuple hashcode, not M\ sequence hashcode here!
|
||||
! sequences hashcode is O(n) in number of elements
|
||||
|
|
|
@ -59,17 +59,17 @@ HELP: sinc
|
|||
{ $notes { $snippet "0 sinc" } " is the limit value of 1." } ;
|
||||
|
||||
HELP: linspace[a,b)
|
||||
{ $values { "a" number } { "b" number } { "points" number } { "seq" sequence } }
|
||||
{ $values { "a" number } { "b" number } { "length" integer } { "seq" sequence } }
|
||||
{ $description "Return evenly spaced numbers over an interval " { $snippet "[a,b)" } "." } ;
|
||||
|
||||
HELP: linspace[a,b]
|
||||
{ $values { "a" number } { "b" number } { "points" number } { "seq" sequence } }
|
||||
{ $values { "a" number } { "b" number } { "length" integer } { "seq" sequence } }
|
||||
{ $description "Return evenly spaced numbers over an interval " { $snippet "[a,b]" } "." } ;
|
||||
|
||||
HELP: logspace[a,b)
|
||||
{ $values { "a" number } { "b" number } { "points" number } { "base" number } { "seq" sequence } }
|
||||
{ $values { "a" number } { "b" number } { "length" integer } { "base" number } { "seq" sequence } }
|
||||
{ $description "Return evenly spaced numbers on a log scaled interval " { $snippet "[base^a,base^b)" } "." } ;
|
||||
|
||||
HELP: logspace[a,b]
|
||||
{ $values { "a" number } { "b" number } { "points" number } { "base" number } { "seq" sequence } }
|
||||
{ $values { "a" number } { "b" number } { "length" integer } { "base" number } { "seq" sequence } }
|
||||
{ $description "Return evenly spaced numbers on a log scaled interval " { $snippet "[base^a,base^b]" } "." } ;
|
||||
|
|
|
@ -202,23 +202,23 @@ PRIVATE>
|
|||
|
||||
<PRIVATE
|
||||
|
||||
: steps ( from to point -- from to step )
|
||||
: steps ( a b length -- a b step )
|
||||
[ 2dup swap - ] dip / ; inline
|
||||
|
||||
PRIVATE>
|
||||
|
||||
: linspace[a,b) ( a b points -- seq )
|
||||
: linspace[a,b) ( a b length -- seq )
|
||||
steps ,b) <range> ;
|
||||
|
||||
: linspace[a,b] ( a b points -- seq )
|
||||
: linspace[a,b] ( a b length -- seq )
|
||||
{
|
||||
{ [ dup 1 < ] [ 3drop { } ] }
|
||||
{ [ dup 1 = ] [ 2drop 1array ] }
|
||||
[ 1 - steps <range> ]
|
||||
} cond ;
|
||||
|
||||
: logspace[a,b) ( a b points base -- seq )
|
||||
: logspace[a,b) ( a b length base -- seq )
|
||||
[ linspace[a,b) ] dip swap n^v ;
|
||||
|
||||
: logspace[a,b] ( a b points base -- seq )
|
||||
: logspace[a,b] ( a b length base -- seq )
|
||||
[ linspace[a,b] ] dip swap n^v ;
|
||||
|
|
Loading…
Reference in New Issue