version 1.5, 2006/02/25 14:01:18
|
version 1.6, 2006/10/03 22:36:02
|
Line 192 Variable varsmax
|
Line 192 Variable varsmax
|
DOES> ( -- addr u ) @ 2@ tuck - ; |
DOES> ( -- addr u ) @ 2@ tuck - ; |
: \:s ( n -- ) 0 ?DO I \: LOOP ; |
: \:s ( n -- ) 0 ?DO I \: LOOP ; |
9 \:s \1 \2 \3 \4 \5 \6 \7 \8 \9 |
9 \:s \1 \2 \3 \4 \5 \6 \7 \8 \9 |
|
|
|
\ replacements, needs string.fs |
|
|
|
require string.fs |
|
|
|
0 Value >>ptr |
|
0 Value <<ptr |
|
Variable >>string |
|
: >> ( addr -- addr ) dup to >>ptr ; |
|
: << ( run-addr addr u -- run-addr ) |
|
<<ptr 0= IF start$ to <<ptr THEN |
|
>>string @ 0= IF s" " >>string $! THEN |
|
<<ptr >>ptr over - >>string $+! |
|
>>string $+! dup to <<ptr ; |
|
: <<" '" parse postpone SLiteral postpone << ; immediate |
|
: >>string@ ( -- addr u ) |
|
>>string $@ >>string off |
|
0 to >>ptr 0 to <<ptr ; |
|
: >>next ( -- addr u ) <<ptr end$ over - ; |
|
: s// ]] BEGIN [[ ; immediate |
|
: //g ]] WHILE >>next REPEAT end$ [[ |
|
s" " ]] SLiteral << >>string@ rot drop [[ ; immediate |