2 \ test ANSI CORE stuff first...
5 \ set up local variable regressions before { gets redefined!
6 : local1 { a b c | clr -- c b a 0 }
10 : local2 { | clr -- 0 } clr ;
24 : 2r1 2>r r> r> swap ;
25 : 2r2 swap >r >r 2r> ;
26 : 2r3 2>r 2r@ R> R> 2DUP >R >R SWAP 2r> ;
30 { 1 2 2r3 -> 1 2 1 2 1 2 }
33 \ Now test ficl extras and optional word-sets
35 { 1 2 3 local1 -> 3 2 1 0 }
41 { :noname 1 ; execute -> 1 }
42 { 1 2 3 -rot -> 3 1 2 }
44 testing default search order
45 { get-order -> forth-wordlist 1 }
46 { only definitions get-order -> forth-wordlist 1 }
50 { fence forget fence -> here }
53 { -1 1 0 within -> true }
54 { 0 1s 2 within -> true }
55 { -100 0 -1 within -> true }
56 { -1 1 2 within -> false }
57 { -1 1 -2 within -> false }
58 { 1 -5 5 within -> true }
59 { 33000 32000 34000 within -> true }
60 { 0x80000000 0x7f000000 0x81000000 within -> true }
62 testing exception words
64 : exctest1 [ ' exc1 ] literal catch ;
65 : exc2 exctest1 1 = if 2 throw endif ;
66 : exctest2 [ ' exc2 ] literal catch ;
71 { exctest? abort -> -1 }
84 \ refill from evaluate string
86 { s" 1 refill 2 " evaluate -> 1 0 2 }
90 { 0x10 -> decimal 16 }
91 { hex 0d10 -> decimal 10 }
95 testing number builder
100 s" ficlwin" environment?