DragonFly On-Line Manual Pages

Search: Section:  


MOO(1)                 DragonFly General Commands Manual                MOO(1)

NAME

moo - Marco's Object Oriented calculator

SYNOPSIS

moo [-su] [-b base] [expr] [...]

DESCRIPTION

A simple calculator that accepts C-like syntax as input. Calculations are done on expr, if given. Otherwise, the standard input is used. Numbers can be entered in hexadecimal (0xbeef), decimal (1984), octal (007), and binary (0b1001). All numerical operators (+, -, *, /, %), bit operators (|, ^, &, ~, <<, >>), and logical operators (==, !=, <, >, <=, >=, !, &&, ||) are supported. Output will be in the same bases as the input, unless a different base was specified (see -b flag below). If only one number is input, the result is printed in all bases. The options are: -b base Output numbers in base format. base can be 2, 8, 10, 16, or `all'. Multiple bases may be specified by giving the -b flag multiple times. -s Output base 10 numbers as signed. -u Output base 10 numbers as unsigned.

ENVIRONMENT

TMPDIR Specifies a directory for temporary files to be created. The default is /tmp.

SEE ALSO

bc(1), dc(1), expr(1)

AUTHORS

moo was written for the public domain by Ray Lai <ray@cyth.net> after much whining by Marco Peereboom.

CAVEATS

Integer overflows are not checked. Marco says, ``I don't think you should call the integer overflows a bug but a feature. You can use it to test signed unsigned issues.''

BUGS

Calculations are limited to the size of a 64-bit integer. Like bc(1), moo parses ``3--2'' without error. DragonFly 6.5-DEVELOPMENT March 2, 2006 DragonFly 6.5-DEVELOPMENT

Search: Section: