I’ve published the source code for Program AB on Google Code at https://code.google.com/p/program-ab/
The code has a bit of javadoc (but could use more). There is a new Java interface called AIMLProcessorExtension that allows developers to easily extend AIML with new custom tags. As an example, the class PCAIMLProcessorExtension implements a simulated Contacts database, so that the AIML can store, modify and retrieve contact information and use it to output <oob> commands to place calls, send emails and send SMS messages.
There is also a new download of the executable, version 0.0.3.8 at
https://code.google.com/p/program-ab/downloads/list