|
USING: kernel math.parser math.ranges prettyprint regexp
|
|
sequences sequences.extras splitting ;
|
|
|
|
: expand ( str -- seq )
|
|
"," split [
|
|
R/ (?<=\d)-/ re-split [ string>number ] map
|
|
dup length 2 = [ first2 [a,b] ] when
|
|
] map-concat ;
|
|
|
|
"-6,-3--1,3-5,7-11,14,15,17-20" expand .
|