Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!weretis.net!feeder4.news.weretis.net!news.mixmin.net!aioe.org!.POSTED!not-for-mail From: "Rod Pemberton" Newsgroups: comp.lang.forth Subject: Re: Just an idea : B-tree on-disk storage of FORTH dictrionary words for fast indexing and search Date: Thu, 16 Oct 2014 18:04:59 -0400 Organization: Aioe.org NNTP Server Lines: 23 Message-ID: References: <0a242e60-65db-4e17-a98b-e797d5b35905@googlegroups.com> <5017661d-daf2-4992-90d0-28265e9e4718@googlegroups.com> NNTP-Posting-Host: CNsg4fVcCsvs3UaOgZtQCw.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Opera Mail/12.16 (Linux) X-Notice: Filtered by postfilter v. 0.8.2 Xref: csiph.com comp.lang.forth:33962 On Sat, 11 Oct 2014 18:05:09 -0400, wrote: > See my SYMTAB.4TH in the novice package. > http://www.forth.org/novice.html > > What my symtab does, is move the more commonly used words (DUP etc.) > toward the root, and the less commonly used words (BYE etc.) toward the > leaves. Symtab has the same memory usage as a hash-table (assuming that > the hash table is rebuilt when it gets more than half full). The > advantage of symtab over a hash-table is that it doesn't "stop the > world" to do a rebuild, but it just grows smoothly. : TODO 1 . ; : FIXME TODO ; If TODO is used frequently and is moved towards the root, will that break FIXME ? I.e., how does FIXME find TODO when TODO was moved ? How do you ensure words moved up or down are independent of other words? TODO is compiled to an offset or address within FIXME, yes? How do you change that, if you've moved it? Rod Pemberton