Alma is a software workshop for modeling and analyzing. It reads several sources (languages, models, etc.), helps you design for object-oriented modeling (definition of classes, relations, patterns, etc.), modifies the structure and the code, and outputs new sources, documentation, diagrams, etc. It is designed for object-oriented modeling (definition of classes and relations) and for migrating code in older languages. It meets two needs, offering a simplified software modeling workshop for small projects and making it easier to do rewrites, ports, and encapsulation of non-OO code.
ANTLR (ANother Tool for Language Recognition) is a language tool that provides a framework for constructing recognizers, compilers, and translators from grammatical descriptions containing C++, Java, or Sather actions. It is similar to the popular compiler generator YACC, however ANTLR is much more powerful and easy to use. ANTLR-produced parsers are not only highly efficient, but are both human-readable and human-debuggable (especially with the interactive ParseView debugging tool). ANTLR can generate parsers, lexers, and tree-parsers in either C++, Java, or Sather. ANTLR is currently written in Java.
Apache Jakarta Regexp is a 100% pure Java regular expression package. Expression syntax supports all of Perl5 syntax, with the exception of back reference substitution markers (several people have mentioned this lack, so please feel free to contribute a solution). It also supports a very limited subset of POSIX features. Performance and features are somewhat inferior to ORO, and the new JDK 1.4 (java.util.regex) package, but the package is especially small and features the ability to precompile expressions (without using object serialization) into byte arrays, thus avoiding the need to load the expression compiler.
When building server side applications for the Web, independently of the language used (Java, PHP, Perl, etc), a lot of time is spent writing embedded HTML code and dealing with the fact that HTTP is a stateless protocol. SPFC allows you to write HTML forms like you write a Java GUI.