Kleene and Alternatives

There are already many implementations of finite-state machines available (Anssi Yli-Jyrä maintains a formidable FsmReg list), and any developer should evaluate the alternatives carefully before choosing. I have tried to make Kleene useful and appealing, and it obviously reflects my own taste.

Your taste may vary, and your selection criteria should include

In addition, there is the subjective criterion of programming-language esthetics: Do you yourself find the syntax and general language design to be intuitive, learnable, memorable and even beautiful?

My two main motivations for developing Kleene, in the face of all the existing alternatives, were these:

  1. Syntax Matters: I often found the syntax of other languages to be awkward and unnecessarily different from the familiar syntax of Perl regular expressions.
  2. Licensing Matters: I found that many academic languages were released under licenses like GPL that are considered dangerously "viral" by most businesses.

You will have to decide if Kleene is adequate and right for your needs. Please keep me informed if you do decide to use it.

Some alternatives to Kleene that I know to have been used in serious academic and commercial work include the following: