Latest version is v0.2, released in February of 2003.
Version 0.2 introduces the following major features:
Nonplus is a simple word game based on the Boggle game published by Parker Brothers. The game is played on a 4-by-4 holder with 16 dice. A letter is printed on each side of each die. To begin a game, the holder is shaken so that one side of each die is allowed to settle, and the timer is started.
The objective of the game is to find as many words as possible, within the time alloted. A word can be spelled by moving from die to die, orthogonally or diagonally, without hitting the same die twice. Each die can only be used once for a word, but may be used over and over again for each new word.
Because every program needs screen shots. Click on the thumbnails below to enlarge.
![]() |
![]() |
| Game in progress (49 KB) | Game over (54 KB) |
This is free software. You are permitted to redistribute this software in its unmodified form, including this notice. This software comes with no warranties for its fitness towards any purpose, and the author disclaims responsibility for any damages to the extent permissible by law.
This software was developed and tested on Mac OS X 10.1.5. Please let me know if it works (or does not work) for you in another version.
If there is sufficient interest, I am open to releasing the source code.
This software was created as an exercise in Cocoa programming (and not solving Boggle, which is why I mostly just used Jeremy Elson's code). As such, there are many sources of information that I am indebted to. Thanks, in alphabetical order:
Apple Computer, Inc., for the Learning Cocoa book and developer documentation.
Mike Beam, for various
Cocoa tutorials.
Brock Brandeberg, for help system tutorial.
CocoaDev, for various Cocoa
tutorials.
Jeremy Elson, for source code to the Boggle solver core.
Vince DeMarco, for information on referencing files in bundles
Ms. DeVane-Mulay, for a list of English pronouns
Sam Goldman, for information on launching other applications
Project Omega, for user preferences handling tutorials.
Andrew Stone, for instructions on packaging OS X software.
Graham Toal, for general
information on the Boggle game.
WordNet, for the dictionary.
The Nonplus icon was created using Adobe Photoshop Elements 2.0.
The dictionary was compressed using a simple but highly efficient algorithm, representing 74,742 English words in just 196,300 bytes (averaging 2.6 bytes per word). In contrast, the gzip algorithm compresses the same data to 219,504 bytes, while the bzip2 algorithm compresses to 260,027 bytes.
The algorithm takes advantage of the source file being already in alphabetical order, and just records the difference from the previous word. For example, given the list:
{ "aardvark", "aardwolf", "aba", "abaca" }the dictionary is compressed into:
{ 0, "aardvark", 4, "wolf", 1, "ba", 3, "ca" }The number preceding each word fragment indicates the number of letters it has in common with the preceding word.
The compressed form is further represented using fewer bits. Because the dictionary contains only up to 16-letter words, the prefix length is represented as 4 bits. Each English letter is represented as 5 bits, with 'a' being 0 and 'z' being 25. Finally, a special 3-bit value '111' is used to indicate the end of each word. Thus, the dictionary above would be encoded as the following bits:
0000 a a r d v a r k 111where each letter is a 5-bit number. The special value '1111' for prefix length indicates the end of the dictionary. The example above of four words (typically 28 bytes) is compressed to 112 bits (14 bytes). With more common prefixes, the compression ratio improves even further.
0100 w o l f 111
0001 b a 111
0011 c a 111
1111