NAME
AI::MegaHAL - Perl interface to the MegaHAL natural language conversation simulator.
SYNOPSIS
use AI::MegaHAL;
my $megahal = AI::MegaHAL->new('Path' => './', 'Banner' => 0, 'Prompt' => 0, 'Wrap' => 0, 'AutoSave' => 0);
my $text = $megahal->initial_greeting();
$text = $megahal->do_reply($message);
$megahal->learn($message);
DESCRIPTION
Conversation simulators are computer programs which give the appearance of conversing with a user in natural language. Such programs are effective because they exploit the fact that human beings tend to read much more meaning into what is said than is actually there; we are fooled into reading structure into chaos, and we interpret non-sequitur as valid conversation.
This package provides a Perl interface to the MegaHAL conversation simulator written by Jason Hutchens.
CONSTRUCTOR
$megahal = AI::MegaHAL->new('Path' => './', 'Banner' => 0, 'Prompt' => 0, 'Wrap' => 0, 'AutoSave' => 0);
Creates a new AI::MegaHAL object. The object constructor can optionaly receive the following named parameters:
- Path - The path to MegaHALs brain or training file (megahal.brn and megahal.trn respectively). If 'Path' is not specified the current working directory is assumed.
- Prompt - A flag which enables/disables the prompt. This flag is only useful when MegaHAL is run interactively and is disabled by default.
- Wrap - A flag which enables/disables word wrapping of MegaHALs responses when the lines exceed 80 characters in length. The default is to disable word wrapping.
METHODS
initial_greeting
$text = $megahal->initial_greeting();
Returns a string containing the initial greeting which is created by MegaHAL at startup.
do_reply
$text = $megahal->do_reply($message);
Generates reply $text to a given message $message.
learn
$megahal->learn($message);
Learns from $message without generating a response
BUGS
None known at this time.
SEE ALSO
POE::Component::AI::MegaHAL - IRC bot,
http://teaandbiscuits.org.uk/drupal/node/65 - Irssi IRC bot,
Hailo - A pluggable Markov engine analogous to MegaHAL
AUTHOR
The Perl AI::MegaHAL interface was written by Cory Spencer <cspencer[at]sprocket.org>.
Now maintained by Alexandr Ciornii <alexchorny[at]gmail.com>.
MegaHAL was originally written by and is copyright Jason Hutchens <hutch[at]ciips.ee.uwa.edu.au>