Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!ucsd!ucbvax!BLIULG11.BITNET!A-PIRARD From: A-PIRARD@BLIULG11.BITNET (Andr'e PIRARD) Newsgroups: comp.lang.forth Subject: Re: Forth Implementation Question Message-ID: <8909181259.AA18279@jade.berkeley.edu> Date: 18 Sep 89 08:17:20 GMT References: Sender: daemon@ucbvax.BERKELEY.EDU Reply-To: Forth Interest Group International List Organization: The Internet Lines: 24 >>You can't "just foget all the words that aren't used". Forget will eliminate >>everything defined after as well. What if you want to forget something in the >>middle? You're screwed. Wouldn't you think of forgetting your assembler after using it? The way we do it in Comforth is as follows: TEMPORARY CODE DUMMY END-CODE \ Load assembler overlay in temporary storage PERMANENT ... DISPOSE TEMPORARY: defines the base of an alternate area up high in dictionary space, if not already defined. Starts compiling there (makes it active). PERMANENT: returns compiling to regular dictionary. DISPOSE: FORGET all words from the alternate area (linked "in the middle"). Undefine the alternate dictionary area. Any "compilation utility" or such can be between PERMANENT and DISPOSE. All that's provided one knows what one is doing, of course. Andr .