On 9/18/07, Barton Willis <willisb at unk.edu> wrote:
> (defprop %blip simp-blip operators)
>
> (defun simp-blip (e yy z)
> (declare (ignore yy))
> (oneargcheck e)
> (setq e (simplifya (specrepcheck (second e)) z))
> (if (zerop1 e) 1 `((%blip simp) ,e)))
> If I'm more or less correct about all this, how do I get Maxima
> to read blip(x) as ((%blip) $x) instead of (($blip $x) ?
Maybe it is the ALIAS property that's the key here; the trig verbs
seem to have it. With the above stuff + (setf (get '$blip 'alias) '%blip)
I get this:
blip(0);
=> 1
'blip(0);
=> 1
tellsimp (blip (x), FOO);
=> [bliprule1, simp-blip]
blip(x);
=> FOO
'blip(x);
=> FOO
:lisp (mread *standard-input*)
=> ((DISPLAYINPUT) NIL ((%BLIP) $X))
(after entering "blip(x)")
HTH
Robert