Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re: How good is Perl for AI?

by FoxtrotUniform (Prior)
on Nov 06, 2001 at 22:05 UTC ( #123642=note: print w/replies, xml ) Need Help??

in reply to How good is Perl for AI?

I know SFA about NLP, but I'd imagine that Perl would be quite suitable: it has excellent text segmentation support, which I'd guess would be useful. (Although I'd think semantic structure would be more important than text chunking... argh. Too much image processing in brain.)

As far as Perl's "suitability" goes: Perl's really good for hashing out proof-of-concept code and dealing with text, which would (likely) make it good for some aspects of AI programming. By the same token, Lisp is good for, say, genetic programming (since its code/data separation is even thinner than Perl's), Prolog's good for planning/reasoning (because its logical syntax makes encoding knowledge easier), and C's good for search-based and general number-crunching (neural nets, anyone?), because, well, you can write some bloody fast C code.

In my (limited) experience, a lot of AI involves a lot of number crunching, which Perl isn't so good at. (Not that it can't crunch numbers, but it can't crunch them fast enough. And let's face it: you're going to be a happier camper if your program takes one second to run than if it takes five minutes, especially when you're tweaking parameters.) I'd be most likely to write a prototype in Perl (provided Lisp, Prolog, and Haskell are unsuited for the job), make sure that I'm on the right track, then recode in C for the efficiency win. As always, YMMV.


Replies are listed 'Best First'.
Re: Re: How good is Perl for AI?
by Hanamaki (Chaplain) on Nov 07, 2001 at 01:38 UTC
    On of my pet projects is a word segmenter, meaning a programm which gets sentences and spits out words. Easy to get good results for the English language, but pretty hard for languages like Japanese were you won't find any spaces between words. A pretty though task were academic and commercial research aren't that advanced.

    I have to say for this task Perl is the perfect language. I don't care on speed but only on results. If I get satisfied by my project I may implement it in C, or may not. Call it prototyping, call it research, call it whatever, I won't try it with Prolog or Lisp.


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://123642]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (3)
As of 2017-03-26 08:13 GMT
Find Nodes?
    Voting Booth?
    Should Pluto Get Its Planethood Back?

    Results (313 votes). Check out past polls.