Arbitrary Precision

only nonnegative integers.  The numbers
will be represented by a linked list.
Note that, for convenience, the list can be ordered from
the least significant ``digit'' to the most significant ``digit''.

The program takes input from stdin.  Each line is an arithmetic
expression
with numbers (in decimal), +, -, *, ^ (exponentiation), and parentheses.

Operator precedence: ^, *, {+,-} (same as in programming languages).
Your program should read each line and calculate the value of the
expression
and print it to stdout.  A line with "0" means the program should stop.-
Negative number, Sq root and division in next implementation