home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!dtix!oasys!science
- From: science@oasys.dt.navy.mil (Mark Zimmermann)
- Newsgroups: comp.sys.mac.hypercard
- Subject: Re: HC Find--Technical Question...
- Message-ID: <22917@oasys.dt.navy.mil>
- Date: 29 Jul 92 14:37:36 GMT
- References: <SRO.92Jul27025602@media-lab.media.mit.edu>
- Distribution: comp
- Organization: David Taylor Research Center, Bethesda, MD
- Lines: 21
-
-
- my recollection (not authoritative --- others, pls correct errors!) is
- that HyperCard's "Find..." command does a sequential search through
- the text in the stack, but is aided by "hints" (flags that tell it
- whether it can skip looking at a card (or field in a card??) because
- that card can't contain the string being sought) ... I think that the
- "hints" are bits that are set when the card (field?) is closed, based
- on trigraphs (3-letter groups) ... you can experiment with this by
- looking for various strings in a big stack (e.g., my recently-posted
- to INFO-MAC "Dictionary Stack") and trying to see how slowly results
- are found as the search string varies (e.g., compare "these" with
- "thesx" search, or "xe" versus "xenon", to see where the speed
- increases occur?) ... I believe that the hint bits are only used for
- standard "Find..." searches, not for "find string" searches, so that
- could be another variation to experiment with. ((Or somebody more
- authoritative could just tell us, eh?!))
-
- overhead is fairly small (a few hundred bytes per card?) for this
- method, and searches are sped up significantly in many cases --- but
- it is still sequential scanning, and gets slow linearly with
- increasing stack size, in contrast to an inverted-index method.... ^z
-