HP Forums

Full Version: Emu48 Underscore Command?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
_ Error:
Too Few Arguments

1: ""

Prior to my earliest post today, I was trying to create the above directory. Upon entering the name on the stack, I received the above message. I don't ever remember seeing an underscore command anywhere. Please explain.
Here is the full explanation as given by Dr. William Wickes himself on comp.sys.handhelds (on May, 1st, 1990):

The "formunit" operator "_" is a hybrid beast that is half delimiter, half
infix operator. It began life as a delimiter to identify unit objects
in the command line, with complications due to its position between
two objects--a real number and a unit expression--unlike most delimiters,
which precede or surround their target text. _ became a function
in order to support its entry in the EquationWriter, so that there does
not need to be special code for the expression following the _.

When you enter a _ in the command line, it acts as a delimiter iff it
is preceded by a valid real number, in which case it insists on being
followed by a unit expression, without intervening spaces or other
delimiters. Thus 'expression' 1 _m ENTER returns 'expression' and 1_m,
whereas 'expression' 1 _ m ENTER is a syntax error (because of the
space following the _.

If _ is not preceded by a real number, it is compiled as a stand-alone
function, which has this stack diagram:

symb real ==> 'symb*real' (same as *)
symb unit ==> 'symb*unit' (same as *)
symb 'expr' ==> 'symb_expr'

Here "symb" is an algebraic object or substitute--real, complex, or name;
'expr' is an algebraic or name object.

_ is not described as a function in the owner's manual simply because
its explanation is a bit mysterious, and it has no particular practical
use--you can use * or ->UNIT instead.
@ Giuseppe Donnini

Very interesting!
Reference URL's