summaryrefslogtreecommitdiffstats
path: root/qemu/roms/SLOF/slof/fs/search.fs
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/roms/SLOF/slof/fs/search.fs')
-rw-r--r--qemu/roms/SLOF/slof/fs/search.fs89
1 files changed, 0 insertions, 89 deletions
diff --git a/qemu/roms/SLOF/slof/fs/search.fs b/qemu/roms/SLOF/slof/fs/search.fs
deleted file mode 100644
index 3acca2f11..000000000
--- a/qemu/roms/SLOF/slof/fs/search.fs
+++ /dev/null
@@ -1,89 +0,0 @@
-\ *****************************************************************************
-\ * Copyright (c) 2004, 2008 IBM Corporation
-\ * All rights reserved.
-\ * This program and the accompanying materials
-\ * are made available under the terms of the BSD License
-\ * which accompanies this distribution, and is available at
-\ * http://www.opensource.org/licenses/bsd-license.php
-\ *
-\ * Contributors:
-\ * IBM Corporation - initial implementation
-\ ****************************************************************************/
-\
-\ Copyright 2002,2003,2004 Segher Boessenkool <segher@kernel.crashing.org>
-\
-
-
-\ stuff we should already have:
-
-: linked ( var -- ) here over @ , swap ! ;
-
-HEX
-
-\ \ \
-\ \ \ Wordlists
-\ \ \
-
-VARIABLE wordlists forth-wordlist wordlists !
-
-\ create a new wordlist
-: wordlist ( -- wid ) here wordlists linked 0 , ;
-
-
-\ \ \
-\ \ \ Search order
-\ \ \
-
-10 CONSTANT max-in-search-order \ should define elsewhere
-\ CREATE search-order max-in-search-order cells allot \ stack of wids \ is in engine now
-\ search-order VALUE context \ top of stack \ is in engine now
-
-: also ( -- ) clean-hash context dup cell+ dup to context >r @ r> ! ;
-: previous ( -- ) clean-hash context cell- to context ;
-: only ( -- ) clean-hash search-order to context ( minimal-wordlist search-order ! ) ;
-: seal ( -- ) clean-hash context @ search-order dup to context ! ;
-
-: get-order ( -- wid_n .. wid_1 n )
- context >r search-order BEGIN dup r@ u<= WHILE
- dup @ swap cell+ REPEAT r> drop
- search-order - cell / ;
-: set-order ( wid_n .. wid_1 n -- ) \ XXX: special cases for 0, -1
- clean-hash 1- cells search-order + dup to context
- BEGIN dup search-order u>= WHILE
- dup >r ! r> cell- REPEAT drop ;
-
-
-\ \ \
-\ \ \ Compilation wordlist
-\ \ \
-
-: get-current ( -- wid ) current ;
-: set-current ( wid -- ) to current ;
-
-: definitions ( -- ) context @ set-current ;
-
-
-\ \ \
-\ \ \ Vocabularies
-\ \ \
-
-: VOCABULARY ( C: "name" -- ) ( -- ) CREATE wordlist drop DOES> clean-hash context ! ;
-\ : VOCABULARY ( C: "name" -- ) ( -- ) wordlist CREATE , DOES> @ context ! ;
-\ XXX we'd like to swap forth and forth-wordlist around (for .voc 's sake)
-: FORTH ( -- ) clean-hash forth-wordlist context ! ;
-
-: .voc ( wid -- ) \ display name for wid \ needs work ( body> or something like that )
- dup cell- @ ['] vocabulary ['] forth within IF
- 2 cells - >name name>string type ELSE u. THEN space ;
-: vocs ( -- ) \ display all wordlist names
- cr wordlists BEGIN @ dup WHILE dup .voc REPEAT drop ;
-: order ( -- )
- cr ." context: " get-order 0 ?DO .voc LOOP
- cr ." current: " get-current .voc ;
-
-
-
-
-\ some handy helper
-: voc-find ( wid -- 0 | link )
- clean-hash cell+ @ (find) clean-hash ;