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.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|