[Prev][Next][Index][Thread]
Re: Progress on Parsing

To: dsr@w3.org

Subject: Re: Progress on Parsing

From: Bruce Smith <bruce@wolfram.com>

Date: Sat, 20 Apr 1996 12:36:32 0700

Cc: w3cmatherb@w3.org

From bruce@wolfram.com Sat Apr 20 16: 14:53 1996

MessageId: <199604201236.6403@uvea.wolfram.com>
> To make it work, users would
> have to bracket the integral expression, e.g.
>
> y = 1 + {integral of sin(x) wrt x} * cos(x)
>
> I find this unacceptable ....
Personally, I find this acceptable. Note that, if we do find some way
(whether by a separate templateparsing step, or by precedences) to
make
y = 1 + integral of sin(x) wrt x * cos(x)
bind the way you want, new users trying to figure out how it works
will probably be confused.

> The final tokenizer will function correctly with '\' before tokens
> so that a LaTeX like notation can be expressed by people who don't
> like the above style of tokens.
I favor making it possible for authors to use whatever form they
want; but this doesn't remove from us the responsibility to decide
the form which will be used by the default macros supplied by the
standard, which we must design as carefully as if they could not
be overridden, since many people will want to use them, partly
since they will carry standard semantic connotations which
authordefined macros won't (unless they transform into our own
macros as an intermediate step).
For the same reasons as expressed above on the other issue, I'm
now sure that I don't support any operators which look like
identifiers as part of the standard (default) set of macros. I
think that
y = 1 + {\integral \of sin(x) \wrt x} * cos(x)
is acceptable enough to be well worth the reduced confusion to new
users trying to understand what's an operator and how things bind.
This doesn't mean I disagree with allowing authordefined macros
which let "y = 1 + integral of sin(x) wrt x * cos(x)" work  in fact
I favor having authordefined macros be as powerful as possible.
Note also that nothing prevents a particular WYSIWYG expression editor
from allowing you to edit HTMLMath in a sourcetext form but without
having to see or type the \s preceding certain operators.