Nandakumar Edamana
software » brahma » faq.html

FAQ on Brahma

  1. Why does it exist?
  2. Why the name Brahma?
  3. Does Brahma have dependencies? Is it portable?
  4. Does it have speech output?
  1. Why does it exist?

    I developed it because I couldn't find any playable version of Tower of Hanoi that worked in a text console. Later I learned that there is a console version available as part of ncurses library. But it had a dependency on ncurses and I wanted something that was insanely lightweight and portable.

    Another thing is, I considered Brahma as an opportunity to learn new things. This is probably the first project in which I tried getopt and GNU Automake successfully. Unfortunately, this means Brahma also has some dependencies (fortunately, not as strong as the ncurses version; please read the question realted to dependecies).

  2. Why the name Brahma?

    Tower of Hanoi is also known as Tower of Brahma, for the interesting story behind the origins of the puzzle. George Gamow, in his book One Two Three... Infinity, quotes the story from a work by W. W. R. Rail, and a similar description can be found in the Wikipedia article for Tower of Hanoi.

  3. Does Brahma have dependencies? Is it portable?

    Brahma is portable. But that doesn't mean it will work out-of-the-box.

    Apart from the standard C library, it depends on GNU getopt and some POSIX routines. This shouldn't be a problem on a standard GNU/Linux system. But you'll need to get those libraries on other platforms (Windows users can try something like MinGW). I plan to write my own routines to replace getopt using standard C functions and map the POSIX calls to the native APIs of some popular platforms so that it becomes more portable and stand-alone.

    When it comes to compiling Brahma, you need gcc and GNU Automake. But as it is in ISO C, you might be able to do that with other compilers, and Automake can be ignored if you are not concerned about portable packaging in a way that GNU Project does.

  4. Does it have speech output?

    Brahma doesn't produce speech output of its own. However, screen readers might be able to read its output for you and it is observed that the native screen reader does that in GNOME Desktop. The only problem is that the screen reader also reads the unnecessary plus, minus and other symbols that are part of the graphics. I'm planning to add an option to turn the graphics off so that the screen reader won't get messed up with it.

Copyright © Nandakumar Edamana.