I would like to announce the beginning of a rapid-development project to use an extensible language to solve what is classically one of the ugliest programming tasks: coding finite state machines (FSMs). The project is posted at the following location: http://repo.or.cz/w/hlafsm.git and is inspired in part by the CFSM project.
The High Level Assembler (HLA) language introduces an extensive macro construction language that makes this project possible. The HLA currently targets the x86 but is expected to target some other architectures in the future. Despite the current limitation of targeting only the x86 CPUs, I found HLA to be an excellent alternative to using a domain specific language for this kind of task. The test scenario is an SMTP listener, with some limitations of course. The main program is written in C++ and is completely dependent on eventxx and libevent with some patches. The state machine is implemented with the HLA macro, and there is a pointer to a CFSM test as well. I have a list of future plans as well. I think top priority should be documentation, examples, and generating multiple targets from the FSM specification. I would like to ask for any feedback you can offer. I am sending this initial announcement to a relatively limited set of experts and mentors, and am including the relatively-limited libev mailing list. I plan to make a Freshmeat announcement in the near future and will setup a mailing list if there is enough interest. Many thanks, Chris Brody _______________________________________________ libev mailing list [email protected] http://lists.schmorp.de/cgi-bin/mailman/listinfo/libev
