GLASS

The IR system used in the experiments of my thesis is a system, called GLASS which was developed by me. GLASS is an IR tool kit composed of separate modules (programs) communicating via a common protocol. The design of GLASS is influenced by the MAXCAT system developed by David Lewis in his thesis. GLASS is implemented on the UNIX operating system which, with its scripting and pre-emptive multi-tasking is eminently suitable for handling the modular nature of GLASS. This document contains an overview of GLASS followed by a closer look at its index file structure and its most used modules. This document does not explain the internal structure of any module, if you want to alter a module, you are on your own.

1.0 Mother of all disclaimers

When I started to write this system I was under the illusion that this IR toolkit was going to become the defacto standard of IR toolkits and that I would become as famous as Chris Buckley, the man who wrote SMART.

Although it would be great for you, my fellow IR researcher, to benefit from the blocks of code I have written over the years, please remember that this is my code customised to my way of thinking: it is probably full of annoyances and stupid features that somehow do not bother me but will piss you off something rotten.

Having said that I enjoy using GLASS and I think that the idea of small independent blocks of code talking to each other through 7 bit ASCII text is a good design for an IR system that is used for experiments. Sure it runs slow, but so far GLASS has been used in all my thesis experiments, including masquerading as a disambiguator; it has predicted avalanches; retrieved on TREC; and performed imaging, logical and generalised. So it is not totally crap.

To make the best use of GLASS, you should posess some grasp of UNIX and a scripting environment like Bourne shell. Knowledge of at least some of the neat-o UNIX text processing commands (i.e. grep, awk, sort, uniq) would help as well.