NAME
Math::SymbolicX::Calculator::Interface::Shell - A Calculator Shell
SYNOPSIS
# simplest form of usage:
use Math::SymbolicX::Calculator::Interface::Shell;
my $shell = Math::SymbolicX::Calculator::Interface::Shell->new();
$shell->run();
DESCRIPTION
This module implements a shell interface to the
Math::SymbolicX::Calculator.
METHODS
new
Returns a new shell application object. Call the "run()" method on it to
run the application.
Optional parameters: (default in parenthesis)
calc => a Math::SymbolicX::Calculator object to use
input_handle => a file handle to read from (\*STDIN)
prompt => the prompt string to use ('~> ')
continued_prompt => prompt string to use for continued lines ('>> ')
app_name => the name of the application ('Symbolic Calculator Shell')
run
Runs the main loop of the shell.
calc
Returns the Calculator object of this Shell.
exit_hook
Call this before stopping the shell. It runs all cleanup actions such as
those needed for a possible persistance.
This method doesn't actually kill your script, but returns after doing
the cleanup.
error
Used to issue a warning to the user. First argument must be an error
message to display.
get_expression
Reads a new expression from the input handle. An expression ends in a
semicolon followed by a newline.
Used internally by the run loop. Probably not that useful outside of
that.
Returns the expression or the empty list on error.
_parse_command
Parses generic commands such as exit and print.
This might change. (Name and implementation)
First argument: Expression to parse.
FIXME: Document what this does or refactor
_generic_out
Generic output routine: Print Formulas and messages alike
FIXME: Subject to change and refactoring.