SWISH++
Simple Web Indexing System for Humans: C++ version

Frequently Asked Questions

  1. Are there precompiled binaries available?
  2. I've read the documentation and I don't see any way to do (a desired feature). Can SWISH++ do it?
  3. I'm indexing a lot of documents and I run out of memory. What can I do?
  4. Can I use SWISH++ to index and search documents in a language other than English?
  5. Can I use SWISH++ to index and search source code?

  1. Are there precompiled binaries available?
    There are none available from the SWISH++ home page intentionally because certain parameters need to be configured on a per-machine basis for optimal performance. However, some Linux vendors may choose to build a SWISH++ package and include it in their distibutions. Check with your Linux vendor. (Such packages are usually several versions old, so you really should just build SWISH++ from source.)

  2. I've read the documentation and I don't see any way to do (a desired feature). Can SWISH++ do it?
    Chances are the answer is "no." The documentation is complete. If it doesn't say anything about a feature you want, then that fact should be a big clue that SWISH++ doesn't do it. Documentation should describe the finite number of things a software package does, not the infinite number of things it doesn't do.

  3. I'm indexing a lot of documents and I run out of memory. What can I do?
    First, a simple fact: indexing takes a lot of memory. Period. Full stop. No two ways about it. End of story. You can't expect to be able to index, say, the Library of Congress on a machine with 64MB. Second, you need to read the documentation, specifically for the TempDirectory_Default and Word_Threshold configuration parameters in the config.h file and make adjustments for your system. Lastly, if all else fails, get more memory.

  4. Can I use SWISH++ to index and search documents in a language other than English?
    Not as-is. The set of stop-words, the word-determination heuristics, and the stemming algorithm would have to be changed. Using SWISH++ as-is to index documents in a language other than English is naive and will yield poor results.

  5. Can I use SWISH++ to index and search source code?
    This has the same answer as FAQ #4. Additionally, an index/search application like SWISH++ isn't generally useful for source code. When you search source code, you typically want to find every occurrence of an identifier, so giving search results in ranked order isn't necessary or useful. Use grep(1) recursively instead.

Copyright © 1998-2006 by Paul J. Lucas.
SWISH++ is available under the terms of the GNU General Public License.
Last updated: December 26, 2002