<?xml version="1.0" encoding="utf-8"?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:lang="en">
<title>aitools development</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/" />
<modified>2006-03-23T05:42:50Z</modified>
<tagline></tagline>
<id>tag:blog.aitools.org,2006://1</id>
<generator url="http://www.movabletype.org/" version="3.16">Movable Type</generator>
<copyright>Copyright (c) 2006, Noel</copyright>
<entry>
<title>Program D 4.6 final</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2006/03/program_d_46_fi.html" />
<modified>2006-03-23T05:42:50Z</modified>
<issued>2006-03-13T05:05:36Z</issued>
<id>tag:blog.aitools.org,2006://1.12</id>
<created>2006-03-13T05:05:36Z</created>
<summary type="text/plain">The final/&quot;official&quot; release of Program D 4.6 is now available. With almost exclusively very minor tweaks, this is the same as release candidate 3. The one exception to this is the introduction of some memory optimization techniques in the graph...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>The final/"official" release of Program D 4.6 is now available.  With almost exclusively very minor tweaks, this is the same as release candidate 3.  The one exception to this is the introduction of some memory optimization techniques in the graph building process.  (I'm still working on trying to pack as many bots into a single running instance as possible.)</p>

<p>I'll address bugs and worthy feature requests as they come up, but otherwise, Program D development will now be focusing on a new 5.0 stream that will see some significant architectural adjustments, with an aim toward expansibility.</p>]]>

</content>
</entry>
<entry>
<title>New IRC Listener</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2006/03/new_irc_listene.html" />
<modified>2006-03-23T05:43:36Z</modified>
<issued>2006-03-06T04:27:48Z</issued>
<id>tag:blog.aitools.org,2006://1.11</id>
<created>2006-03-06T04:27:48Z</created>
<summary type="text/plain">Wow, can&apos;t stop it today. Found a great library (PircBot) for IRC connectivity from Java, and threw out all that yucky old code from the IRC listener, replacing it with a few methods that neatly start up the PircBot and...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>Wow, can't stop it today.  Found a great library <a href="http://www.jibble.org/pircbot.php">(PircBot</a>) for IRC connectivity from Java, and threw out all that yucky old code from the IRC listener, replacing it with a few methods that neatly start up the PircBot and let it do all the work.</p>

<p>There's plenty that could be done with this listener, given the rich API provided by PircBot, but for the moment I'm satisfied just to get this out there to those (apparently many) users who use Program D with IRC.  Hope this will help!</p>]]>

</content>
</entry>
<entry>
<title>New AIM Listener</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2006/03/new_aim_listene.html" />
<modified>2006-03-24T05:34:41Z</modified>
<issued>2006-03-06T03:16:10Z</issued>
<id>tag:blog.aitools.org,2006://1.10</id>
<created>2006-03-06T03:16:10Z</created>
<summary type="text/plain">Since the daim library, which was used by the ICQ/AIM Listener, seemed to be no longer able to work with either the ICQ or AIM networks, and since it appeared that the author wasn&apos;t really interested in supporting it, it...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>Since the daim library, which was used by the ICQ/AIM Listener, seemed to be no longer able to work with either the ICQ or AIM networks, and since it appeared that the author wasn't really interested in supporting it, it became necessary to find another library.</p>

<p>There was some interesting discussion on the Program D mailing list about whether or not to take a completely different direction, but in the end I was able to locate what looks like a good library, <a href="http://jaimbot.sourceforge.net/">JAIMBot</a>, and quickly adapt that to the needs of a Program D listener.</p>]]>
<![CDATA[<p>Weirdly enough, in a recent message on the alicebot mailing list, Richard Wallace seemed to be <a href="http://list.alicebot.org/pipermail/alicebot-general/2006-March/010177.html">advocating against open source</a> when he warned against downloading "third-party" free AIML software, suggesting that some of it "may be infected with the spyware".  The message was, of course, a rather obvious FUD-based advertisement for Pandorabots.  I can't help thinking that Rich is not really the best spokesperson for Pandorabots--he's always positioning them <i>against</i> the rest of the AIML interpreter development community, advancing these dubious notions that it's better to trust a hidden-source web app than free code you can download and inspect yourself.  I just don't think there are that many people who are still so undereducated about free and open source software that they'd fall for that, so it tends to backfire and make Pandorabots look bad.</p>

<p>Pandorabots, just for the record, sounds like a cool piece of software, and I'd love to be able to look at the code.  I can't call myself a Lisp hacker by any means, but I do know enough to write a simple program, and certainly to look through code, and I imagine that if their claims about capacity are true, there have got to be some very interesting things that can be learned from that codebase.  And certainly we'd all benefit from that application joining the ranks of the other free/open source AIML implementations that have been made freely available for everyone to dissect, learn from, criticize, rearrange...(not to mention deploy).</p>

<p>Anyway, here's another example of free & open source software in action: Program D benefits from JAIMBot, so the whole AIML community benefits, and JAIMBot will benefit as well if we discover any bugs or issues, because we'll report them, and be able to interact with the developers in dealing with them.</p>]]>
</content>
</entry>
<entry>
<title>New release candidate, and new listener</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2006/03/new_release_can.html" />
<modified>2006-03-27T05:07:34Z</modified>
<issued>2006-03-05T19:56:19Z</issued>
<id>tag:blog.aitools.org,2006://1.9</id>
<created>2006-03-05T19:56:19Z</created>
<summary type="text/plain">Today I updated the Yahoo Listener to version 1.1.1, adding a small but important feature that filters out HTML and formatting codes from inputs sent by Yahoo clients. Also uploaded rc3 of Program D 4.6, which has important fixes in...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>Today I updated the Yahoo Listener to version 1.1.1, adding a small but important feature that filters out HTML and formatting codes from inputs sent by Yahoo clients.</p>

<p>Also uploaded rc3 of Program D 4.6, which has important fixes in URL resolution techniques that should address problems some people were having running Program D on Tomcat on Windows.</p>

<p>Looking forward to declaring a final release of 4.6 soon, once the ratio of confirmed open bugs to daily downloads stabilizes somewhere close enough to zero.</p>]]>

</content>
</entry>
<entry>
<title>Hot on the heels...</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2006/02/hot_on_the_heel.html" />
<modified>2006-03-06T11:38:37Z</modified>
<issued>2006-02-28T18:41:58Z</issued>
<id>tag:blog.aitools.org,2006://1.8</id>
<created>2006-02-28T18:41:58Z</created>
<summary type="text/plain">I&apos;ve posted rc2 of 4.6 on the site already, because several bugs were discovered almost immediately that affected Windows users. My primary desktop machine is a Linux box, and although I do test builds on Windows, it&apos;s clear that I...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>I've posted rc2 of 4.6 on the site already, because several bugs were discovered almost immediately that affected Windows users.  My primary desktop machine is a Linux box, and although I do test builds on Windows, it's clear that I still need to improve my test process to be more thorough in coverage.</p>

<p>It was nice to see a mention on the front page of alicebot.org almost as soon as rc1 was announced earlier today; there hasn't been current information about Program D on that site for a long time.  I'm glad to be able to put out new versions, and fixes to those versions, in the spirit of open community.</p>

<p>So, thanks, everybody, and keep the communication flowing!</p>

<p>Noel</p>]]>

</content>
</entry>
<entry>
<title>Program D 4.6 release candidate 1</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2006/02/program_d_46_re.html" />
<modified>2006-03-06T11:38:16Z</modified>
<issued>2006-02-28T06:15:45Z</issued>
<id>tag:blog.aitools.org,2006://1.7</id>
<created>2006-02-28T06:15:45Z</created>
<summary type="text/plain">Now available at http://aitools.org is Program D version 4.6, release candidate 1. This is a highly-recommended release which introduces some interesting perforamnce improvements, fixes a number of important bugs, and brings some major architectural improvements--most notably, Program D can now...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>Now available at <a href="http://aitools.org">http://aitools.org</a> is Program D version 4.6, release candidate 1.  This is a highly-recommended release which introduces some interesting perforamnce improvements, fixes a number of important bugs, and brings some major architectural improvements--most notably, Program D can now be deployed as a .war file to a web application server, and can interact with a web client using "Ajax" technologies.</p>

<p>The download--in "binary", source, and web application (.war) formats--is available at:</p>

<p><a href="http://aitools.org/downloads/#programd">http://aitools.org/downloads/#programd</a></p>

<p>Program D is the most widely used free ("open source") AIML bot platform in the world. It is the most feature-complete, best-tested implementation of the current AIML specification. It supports unlimited multiple bots in a single server instance, and has an open-ended architecture for interacting via any interface imaginable. The standard release provides a J2EE web application implementation that can be deployed as a .war file. Drop-in listeners are available for IRC, ICQ/AIM, and Yahoo. It includes an automated testing framework for testing knowledge bases, and is packaged with an AIML Test Suite that verifies that the program itself complies to the AIML specification.</p>

<p>Program D is known to work with many different languages / character sets. Its component-oriented architecture allows it to be integrated into any application framework desirable. It is implemented in Java, and uses many features of the latest JDK to provide optimum code reliability. It is actively maintained and supported.</p>

<p>More details about the 4.6rc1 release are available here:</p>

<p><a href="http://aitools.org/programd/docs/release-notes.html">http://aitools.org/programd/docs/release-notes.html</a></p>

<p>The readme doc, which has been significantly updated, is here:</p>

<p><a href="http://aitools.org/programd/docs/readme.html">http://aitools.org/programd/docs/readme.html</a></p>

<p>Discussion about all aspects of installing, using and integrating Program D takes place on the Program D mailing list, which can be accessed here:</p>

<p><a href="http://aitools.org/mailing-lists.html">http://aitools.org/mailing-lists.html</a></p>

<p>Any issues that arise with use of this new release may be reported and discussed via the mailing list, and/or through the aitools.org bug tracker at:</p>

<p><a href="http://bugs.aitools.org">http://bugs.aitools.org</a></p>

<p>Many thanks to all those who have contributed patches, bug reports, testing reports, and suggestions contributing to this new version of Program D.</p>

<p>Best regards,<br />
Noel Bush<br />
<a href="http://aitools.org">http://aitools.org</a></p>]]>

</content>
</entry>
<entry>
<title>a &quot;proper&quot; web application</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2005/09/a_proper_web_ap.html" />
<modified>2005-11-05T14:17:23Z</modified>
<issued>2005-09-26T01:31:11Z</issued>
<id>tag:blog.aitools.org,2005://1.6</id>
<created>2005-09-26T01:31:11Z</created>
<summary type="text/plain">I am preparing a 4.6 version of Program D in which (finally!) one of the available configurations is a .war file (a web application that can be deployed on Tomcat, JBoss, Dynamo, etc.) There will still be the &quot;simple console&quot;...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>I am preparing a 4.6 version of Program D in which (finally!) one of the available configurations is a .war file (a web application that can be deployed on Tomcat, JBoss, Dynamo, etc.)  There will still be the "simple console" and "GUI console" configurations available, but possibly I will stop packaging Jetty, so users will need to choose and set up the web application server themselves.</p>

<p>I'm successfully using the code that's currently in CVS as an integrated part of another application (via a redesigned servlet).</p>

<p>Some of the highlights of this are:</p>

<p>* All that "template" stuff is in the trash.  You can use JSP.<br />
* There are a few AIML tags now available via a JSP custom taglib.<br />
* The crazy-zany-wacky-nutty "ServletResposeRequestRespondingBlahBlah" stuff that I put in the previous release is all gone.  So is the "responder" concept in general.  Everything we were trying to do with all that huffing and puffing can be managed just fine with J2EE standard stuff.<br />
* Authentication is something you do with your app server (or not). I've used a couple of the different Realm implementations provided by Tomcat; you should be able to use (or not) whatever you want.  This way any user authentication for the bot server can be part of the user authentication of your whole environment/application/whatever.</p>

<p>One current side effect is that the interactive console is not available for the web app.  But I won't worry about this unless anybody can tell me why it's a problem.</p>

<p>I would appreciate hearing from anyone who would be able to test out preliminary versions of this on any application server.  I've been putting it through the wringer with Tomcat 5.5.9, but additional testing on that platform, as well as any other, will be great, to uncover whatever issues might arise.  (I've had to do a lot of cleanup of path construction and usage (URLs) due to various problems I discovered when running it from a war file, running it using the Apache httpd-Tomcat connector (jk2), etc.  I'm sure there are other things that should be ironed out.)</p>

<p>I would also like to know what people think about not including Jetty anymore.  I know that it is an attraction of Program D that one can download it and have a running web-based interface within a few minutes.  On the other hand, packaging a particular app server has always added a layer of irritation for me.  What would seem preferable is just to have a nice HOWTO, explaining the steps for setting up any number of popular servers and deploying the Program D war file.  I think that Program D is largely incompatible with the casual hobbyist group, in any case.  People who just want to play around a little bit and make an Alice clone can use Pandorabots or one of the others -- Program D is really meant to be a platform for more serious bot development.</p>

<p>All thoughts and reactions are welcome!</p>

<p>Noel </p>]]>

</content>
</entry>
<entry>
<title>Version 4.5 Released</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2005/05/version_45_rele.html" />
<modified>2005-07-27T20:17:21Z</modified>
<issued>2005-05-14T02:04:34Z</issued>
<id>tag:blog.aitools.org,2005://1.5</id>
<created>2005-05-14T02:04:34Z</created>
<summary type="text/plain">Program D 4.5 has been released. It is available at: http://aitools.org After three release candidates, during which a number of bugs were discovered and fixed, and a full complement of planned features and enhancements were integrated, this version of Program...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>Program D 4.5 has been released.  It is available at:</p>

<p><a href="http://aitools.org">http://aitools.org</a></p>

<p>After three release candidates, during which a number of bugs were discovered and fixed, and a full complement of planned features and enhancements were integrated, this version of Program D is now released as "final".</p>

<p><br />
<b>Communication</b><br />
All communication about Program D development, bugs, improvements, usage, etc. takes place via the Program D mailing list, accessible via:</p>

<p><a href="http://aitools.org/mailinglists/">http://aitools.org/mailinglists/</a></p>

<p>Bug reports may be tracked and created at:</p>

<p><a href="http://bugs.aitools.org/">http://bugs.aitools.org/</a></p>

<p><br />
<b>What Is New</b><br />
A full description of enhancements to version 4.5 can be viewed at:</p>

<p><a href="http://aitools.org/programd/release-notes.html">http://aitools.org/programd/release-notes.html</a></p>

<p>Here is a summary:</p>

<ul>
  <li>Component Orientation</li>
  <li>Enhanced Configurability</li>
  <li>Vastly Improved XML Parsing</li>
  <li>Schema-Based Validation</li>
  <li>Revised Logging Scheme</li>
  <li>XML Templating for Responders</li>
  <li>Regular Expressions for Substitutions</li>
  <li>Improved Responder Architecture</li>
  <li>Merge Policies</li>
  <li>AIML Testing System</li>
  <li>AIML Test Suite</li>
  <li>Plugin architecture</li>
  <li>AIML Shell Command</li>
  <li>Listener Updates and Package Separation</li>
  <li>Type Safety and Other JDK-Supported Enhancements</li>
  <li>Tighter Coding Standards</li>
  <li>Better Error Checking</li>
  <li>Numerous Bug Fixes</li>
</ul>

<p><b>The Future</b><br />
Subsequent bug fixes and minor updates will be released as new point releases (4.5.1, 4.5.2, etc.).  Development is now underway on a 5.0 version that will introduce significant extensibility.</p>

<p><br />
Many thanks to all who have participated in bringing version 4.5 to final release status by reporting bugs, submitting code, and other communications and contributions.</p>]]>

</content>
</entry>
<entry>
<title>Highlights of RC3</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2005/05/highlights_of_r.html" />
<modified>2005-07-27T20:18:01Z</modified>
<issued>2005-05-06T02:58:49Z</issued>
<id>tag:blog.aitools.org,2005://1.4</id>
<created>2005-05-06T02:58:49Z</created>
<summary type="text/plain">Release Candidate 3 is out, and this one is really a big deal. As long as no more big bugs are uncovered in the near future, this is essentially what&apos;s going to be in the final release of 4.5. If...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p><a href="http://aitools.org/programd/release-notes.html#v4.5.rc-notes.rc3">Release Candidate 3</a> is out, and this one is really a big deal. As long as no more big <a href="http://bugs.aitools.org/view_all_bug_page.php">bugs</a> are uncovered in the near future, this is essentially what's going to be in the final release of 4.5. If possible, I'd like to address the outstanding problems with the ICQ and AIM listeners, and I'm looking around through installer packages. But with rc3 already, 4.5 is a big step forward for Program D, and I wanted to highlight a couple of things that I'm glad I've been able to include.</p>

<p>First, the AIML testing framework. Albertas Mickensas from <a href=”http://megalogika.com”>MegaLogika</a> developed this using the 4.1.5 codebase. We got in touch, and I adapted it to the 4.5 architecture. The process of adaptation itself brought improvements to Program D, as it finally provided a concrete impetus for me to implement a real plugin architecture. The testing framework is the first use of this architecture. It is implemented as a plugin available from the Program D shell with the command <tt>/test</tt>.</p>

<p>The AIML community has been waiting for a tool like this for many years. The closest approximation we had, prior to Albertas's framework, was typified by the <tt>testcases.aiml</tt> and its accompanying text script, developed by Tom Ringate some years back. To test Program D (or any interpreter that could read from stdin), you would “feed” the script to the engine, and then visually inspect the results. Any bugs discovered there constituted an indication of a functional problem in the implementation of the AIML spec; a successful run through all tests was supposed to indicate proper implementation. When Tom first put this out, it was a big improvement over the total absence of a test suite. Other people used this approach for testing their AIML sets. But this form of testing was never something that could really scale to big knowledge bases.</p>

<p>Albertas's framework changes all that. Now, you can define a test case using a formal (but simple!) XML structure. Here's an example:</p>

<pre>&lt;TestCase&gt;
  &lt;Input&gt;what's your name?&lt;/Input&gt;
  &lt;ExpectedAnswer&gt;My name is Joebot.&lt;/ExpectedAnswer&gt;
&lt;/TestCase&gt;</pre>

<p>This is the simplest test case: an input to send the engine, and an expected answer. Only an exact match constitutes a pass. It's also possible to specify keywords that should, or should not, appear in a response, and an expected length. I'll probably add an element letting you give a regular expression that should match the response.</p>

<p>I have adapted the old test cases mentioned above, to produce the first-ever automated AIML Compliance Test Suite. This is now included in Program D as <tt>AIML.aiml</tt> and <tt>AIML.xml</tt>. The release is configured, by default (in <tt>bots.xml</tt>) to load the <tt>AIML.aiml</tt> file, so you can test that Program D actually does what the AIML spec says by typing &quot;<tt>/test</tt>&quot; at a D shell prompt. Pretty cool. This helped me find a couple of significant bugs, which have been addressed in rc3.</p>

<p>The other big item I wanted to highlight is the Flash interface. A few years ago, Chris Fahey provided the world with the first Flash interface to an AIML interpreter. At the time, it was a novelty&mdash;now, with services like Pandorabots and Oddcast, we see more and more Flash bot interfaces. But Chris's interface hadn't been updated in a while, and when I got around to testing it with Program D, I found that it didn't work anymore. This was probably due to changes I had made to the program, primarily an insistence on XML compliance that caused me to include Chris's original template inside a sort of &quot;dummy&quot; tag so that the Flash chat template became a valid XML file.</p>

<p>In any case, Daniel Ireland, an interactive designer from Australia, zeroed in on the Flash interface for the first release candidate of 4.5, and found it lacking. A series of exchanges with him finally resulted in a fixed version of the Flash toolkit, which is now included in Program D for the first time.  Many thanks to Daniel for fixing what was broken and bringing this important client up to date!</p>

<p>In rc3, I have added parameters to the <tt>flash-responder.xml</tt> file to allow you to convert HTML line breaking elements (<tt>br</tt> and <tt>p</tt>) to actual line breaks, and to strip out other markup, since the Flash client itself does not do anything with these items. These parameters are set to true as shipped. If you wish to modify the Flash client (the source is also provided, of course), then you can turn off these parameters and make use of HTML tags, or whatever else you choose to pass in the response.</p>

<p>Beyond being happy that Program D now ships with a working Flash client, however, I'm also very glad about how this experience validates, at least in my mind, the XML template processor that was created for 4.5. This is currently used by the HTMLResponder and the FlashResponder, but it should be very easily usable by any responder someone might care to build, such as (for instance) an interface to an external SMS system for mobile phones, in which one would like to send a simple XML message with the bot's response. Perhaps there's still something missing here for the sending part&mdash;one would also want to be able to <i>receive</i> an XML message&mdash;but with all the infrastructure reworking that's been done with this version, this should be far easier than it was before.</p>

<p>Lastly, I'd like to mention that the major revision of the Program D architecture to a &quot;component-friendly&quot; form seems to be getting favorable press. I've been in touch with a few people who, over the years, have indicated an interest in integrating Program D with other kinds of systems. It appears that the re-architecture work has indeed answered a lot of their qualms about the original structure: now, I'm gathering, it should be far simpler to deploy Program D as a JavaBean, an EJB, or whatever. I know little about these technologies, so I'm looking to others to guidance, but it appears this is in the pipeline. That's exciting to me. The only person I haven't heard back from is the creator of &quot;ChatterBean&quot;, an effort which I found very inspiring. I still hope he'll write me back and we can do something &quot;synergistic&quot;.</p>

<p>Anyway, I'll be looking forward to your comments on Program D, by way of the mailing list, this blog, private email, or whatever suits you. Thanks to all those who've participated so far!</p>

<p>Noel</p>]]>

</content>
</entry>
<entry>
<title>RC2 (already)</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2005/04/rc2_already.html" />
<modified>2005-07-27T20:16:35Z</modified>
<issued>2005-04-27T05:16:00Z</issued>
<id>tag:blog.aitools.org,2005://1.3</id>
<created>2005-04-27T05:16:00Z</created>
<summary type="text/plain">I anticipated going through a few release candidates with 4.5, but not quite so quickly. Release candidate 2 is coming out as I write this. A series of exchanges with Daniel Ireland on the mailing list led me to a...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>I anticipated going through a few release candidates with 4.5, but not quite so quickly.  Release candidate 2 is coming out as I write this.  A <a href="http://aitools.org/pipermail/programd/2005-April/000016.html">series of exchanges</a> with Daniel Ireland on the <a href="http://aitools.org/mailman/listinfo/programd">mailing list</a> led me to a discovery that I'd left a pretty clumsy error in the AIML schema.  This error would cause the so-called <a href="http://aitools.org/aiml/spec/#section-condition">&quot;blockCondition&quot; form of condition</a> to fail to validate.</p>

<p>Since the AIML schema is the arbiter of what gets loaded and what doesn't, I count this as a really severe issue that warrants updating the available build ASAP.  I don't want tons of people to download rc1 and run into this problem.</p>

<p>People who have already downloaded rc1 don't need to go get rc2&mdash;you can just download the <a href="http://aitools.org/aiml/schema/AIML.xsd">corrected schema</a> and drop it into the <tt>resources/schema</tt> subdirectory of your Program D installation.</p>

<p>Like I <a href="http://aitools.org/pipermail/programd/2005-April/000023.html">said</a>, this is why they're called "release candidates".  :-)</p>]]>

</content>
</entry>
<entry>
<title>New Release of Program D</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2005/04/new_release_of.html" />
<modified>2005-07-27T20:18:28Z</modified>
<issued>2005-04-25T18:55:42Z</issued>
<id>tag:blog.aitools.org,2005://1.2</id>
<created>2005-04-25T18:55:42Z</created>
<summary type="text/plain">(From the Release Notes...) This is the first release of Program D in three years. During this time, Program D has remained the most widely used open source / free AIML interpreter in the world. It has been employed in...</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>(From the <a href="http://aitools.org/programd/release-notes.html">Release Notes</a>...)</p>

<p>This is the first release of Program D in three years. During this time, Program D has remained the most widely used open source / free AIML interpreter in the world. It has been employed in numerous projects, from personal-sized art projects to large, enterprise level deployments. The stability and consistent performance achieved in version 4.1.5 have proven enduring and reliable, despite the hiatus in available support.</p>

<p>This new release focuses on updating the Program D technology to take advantage of progress in technologies available as part of the core Java platform. Core functionalities such as XML parsing, logging, and various architectural matters are now handled in a fashion that heightens stability, performance and maintainability.</p>

<p>We have finally addressed the issue of component orientation: Program D can now be easily included into any application framework as a simple "core" object, without ever involving any undesired interfaces (servlet container, IM interface, etc.). On the other hand, these optional interfaces now use a more flexible and better defined API to connect to the Core, and we are confident that additional interfaces may now be provided with far more ease than before.</p>

<p>Every line of code of Program D has been reviewed, and "refactored" as appropriate. The program still passes all of the AIML 1.0.1 test cases published with the previous version, as well as a few more.</p>

<p><a href="http://aitools.org/programd/release-notes.html">Read</a> the complete release notes.</p>]]>

</content>
</entry>
<entry>
<title>A new focus</title>
<link rel="alternate" type="text/html" href="http://blog.aitools.org/archives/2005/04/our_new_focus.html" />
<modified>2005-07-27T20:18:46Z</modified>
<issued>2005-04-23T01:27:38Z</issued>
<id>tag:blog.aitools.org,2005://1.1</id>
<created>2005-04-23T01:27:38Z</created>
<summary type="text/plain">It seems like a good time to make a change to aitools.org.</summary>
<author>
<name>Noel</name>
<url>http://aitools.org/</url>
<email>noel@aitools.org</email>
</author>

<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://blog.aitools.org/">
<![CDATA[<p>A couple of years ago, we put together the aitools.org site with a rather narrow, technology-oriented focus: we wanted to provide links to AIML interpreters and documentation, and to companies providing bot-related services.  The point was to maintain an information repository not associated with any particular company, organization, etc.</p>

<p>As it has turned out, the alicebot.org site has done a far better job of maintaining that sort of information, especially for the general hobbyist community.</p>

<p>From the point of view of professional bot development based on open source / free software, however, we still see a need to be addressed.  Following is a brief description of that need, and how we're refocusing aitools.org to meet it.<br />
</p>]]>
<![CDATA[<p>It has been most interesting to discover that <a href="http://aitools.org/programd">Program D</a> matters <i>a whole lot</i>.  We always knew it was important, but it took these years of letting it wander by itself to really see how important.  There are plenty of people, and companies, for whom none of the hosted bot "solutions" are anywhere near adequate.  And although new AIML interpreters pop up all the time, none have seen the consistent demand and usage as has Program D.  It would appear that the work invested in getting to version 4.1.5 proved really valuable for a lot of decisionmakers, because they've felt confident in relying upon Program D as the basis for some pretty substantial projects, even though the primary developer (me) was largely unavailable to assist for the last two and a half years or so.</p>

<p>Over these years, I've received inquiries about Program D&mdash;where to submit a patch, questions about this or that integration issue, questions about future development, and so on.  In general, I've had to defer substantive replies to some unspecified future date.</p>

<p>But present circumstances have brought me back into active development of Program D, and there are now some resources (albeit limited) for providing a certain amount of support for some of those questions and needs.</p>

<p>So it seems like a good time to make a change to aitools.org.  I'm preparing the first new release of Program D in nearly three years, due out in mere days (if not hours).  I've put together a product roadmap that I think will be very interesting to serious application developers and creative implementers.  I'm maintaining stability and performance as a high priority, but I'm also starting to factor in the ideas that go under the mysterious name "xAIML", which have been floating around for several years, but which haven't been addressed head on until now.</p>

<p>All of this accounts for an obvious change in the web site.  We're not mirroring other AIML interpreters anymore.  We're not providing copies of documentation, links to bots or bot companies, etc.  The focus is pared down: Program D and xAIML.  The latter is still a question mark in the minds of all but a few people who've been in on the planning.  Program D, of course, is world famous.  We expect the next release cycle to be very energizing, and the one after that to be truly mind-blowing.  Open source (free) bot software is about to enter an entirely new phase.  AItools.org is where it's happening.  Get ready.</p>]]>
</content>
</entry>

</feed>