The various incarnations of Nickle have been used for a
range of tasks. First and foremost, Nickle is the
calculator program of choice: it is an altogether
superior^{5}replacement for UNIX `bc`, `dc`, `expr`, and the
like.

Nickle is also a very nice general purpose programming language, especially for numerical work. Nickle programming projects distributed with the reference implementation include

- The Cribbage scoring implementation mentioned above.
- A DSP filter design package.
- Sample data generation for DSP verification.
- A full RSA implementation, including Miller-Rabin probabilistic prime number key generation.
- An implementation (now converted from Nickle to C for use inside Nickle) of Weber's accelerated GCD algorithm.
- A port of the C reference code for the Rijndael encryption algorithm.

- Graphics chip clock calculation, and XFree86 ``mode line'' calculation.
- Probability calculations for Collectible Card Games.
- Course grading.

As noted above, the performance of Nickle is not
spectacular, but is adequate for the tasks for which it is
intended. For example, the Miller-Rabin implementation
typically spends 5-15 seconds generating a 512-bit
probabilistic prime on a 700MHz Athlon with adequate memory.
This is about a factor of 5 slower than the C-based
probabilistic prime generator of OpenSSH. As another
example, the Nickle implementation of the Weber GCD code
mentioned above is typically 10 times slower on a given
input than the C implementation. On the other hand, the
Nickle implementation was *much* easier to develop.

The end result of this experience has been that Nickle has become part of the authors' standard toolkit. It has reached its design goals: the current version is simple to use, extend, and modify.