Subject: | |
From: | |
Reply To: | |
Date: | Tue, 25 May 1999 11:49:01 -0700 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
Tad Bochan warns about a problem with MPEX:
> DEV:print mpyikes;num
> 1) setvar mpe ""
> 2) if bound(insidempex) and insidempex=1
> 3) setvar mpe "mpe "
> 4) endif
> 5) !mpe echo ![word("xxx yyy zzz",,-1)]
>
> DEV:xeq mpyikes
> zzz
>
> DEV:main.pub.vesoft "mpyikes"
> xxx yyy zzz
>
> If line 5 is changed to :
> 5) !mpe echo ![word("xxx yyy zzz"," ",-1)]
>
> it works fine.
What's even more curious about this is that if line 5 is changed to
5) !mpe calc word("xxx yyy zzz",,-1)
it works fine as well!
As a separate issue, I would like to point out that
2) if bound(insidempex) and insidempex=1
works inside MPEX *only* if the variable is bound! For 'insidempex'
this is fine, but for generic variable X this is not. This is because
unlike MPE (and Qedit), MPEX does *not* perform short-circuit evaluation.
For non-bound vars, the error appears as:
%if bound(x) and x=1
Processing BOUND(X) AND X=1
^
Variable name encountered, but variable is not defined. (CIERR 9805)
--Glenn
|
|
|