| [reply] [Watch: Dir/Any] |
There's a lot of things happening in this area, and if you want to look into doing AI work in Perl I'd advocate you start by checking out:
AI modules on CPAN
perl-ai mailing list
extensive perl AI work on sourceforge
Good luck and have fun -- I've played with the area in the past, and alice in particular can be very fun to work with. One of the advantages of Perl AI work over some others is that a lot of it is quite modular -- something missing from many other parts of AI work. | [reply] [Watch: Dir/Any] |
When I was in college the professor who taught the AI lab course strongly encouraged us to use languages like awk and perl. It seemed somewhat strange at first (why aren't we using Lisp?) but I'd say that my experience with AI and Perl, more than anything else, really got me into the language. When you're doing AI work, you don't want to worry about the details. Perl lets you forget about most of the details. What's more, languages with powerful text processing facilities allow you to deal with noisy inputs without much hassle. Pattern matching, built in hashes, etc, all make rapid prototyping sublimely easy. Also, you can get a lot of mileage out of online databases such as WordNet in a lot of language-based AI tasks. Perl's net modules come in handy for that.
Of course, certain AI tasks aren't well suited to Perl. The best example I can think of is heuristic search. It's very easy to write a search-based program in Perl, you just spend a lot of time waiting for it to finish. This is mostly a result of Perl's ridiculously slow subroutine calls (I've benched it and even gawk kills perl at sub calls, even without passing args), since most search algorithms do a lot of recursion if you're trying to do something interesting (although you could probably modify some techniques to be iterative, perhaps overcoming this issue).
As to your project, I think it's a great idea. Anything that is designed to interact with people can be really entertaining to work on. As for XML: knowing XML is useful but I'd try to resist looking at Alice's code. You're more likely to come up with a really cool way of doing this if you aren't contaminated with preconceptions about the "right" way to go about it.
| [reply] [Watch: Dir/Any] |