> > example.  This would make the content of the \translator block more
> > consistent with itself.  There is a new inconsistency in the use of
> > semicolons.  Inside a \paper, you must now use a semicolon after an
> > assignment.  And it's also now sometimes necessary to have semicolons
> > after a "}" character.  This could be very confusing.  At the top
> 
> I've been thinking about a distinction between simple and compound
> expressions for assignments.  The simple ones need ;, the compound
> ones don't.

Hmmm.  What is a simple expression?  Right now, translator assignments
are "simple", which doesn't fit my intuition.  (They require a
semicolon.)  This is perhaps the most shocking change in the semicolon
behavior.  It took me a while to realize that
   foo = 1.0
was acceptible with no semicolon.  But it somehow seemed more natural for
   foo = \notes{ . . . }
to be acceptible with no semicolon.  It seems odd that
   foo = \translator{ . . . };
needs that semicolon.  

So is this the planned behavior:

Semicolons are needed precisely in the following locations:
       after "simple" assignments
       after keywords that require them

What is the gain of requiring semicolons after simple assignments? 


Note that convert-mudela doesn't add the semicolons that are now needed
with mudela 1.0.6.  For example, I always used to write 
   \paper{linewidth=-1.0}
and this is now an error which is not fixed by convert-mudela.  

> 
> > What happens if I define a translator without giving it a name?  Does
> > it just vanish, or have no effect?  
> 
> I am not sure.  Try it!

Well, of course I tried it before asking the above.  And there is no
obvious effect.  But there may be hidden effects of some sort.  

If possible, it might be nice for a warning to appear if someone does
\translator with no name and without assigning it to an identifier.  
In other words, forgetting the name seems to be a mistake that leads
to the wrong behavior with no warning. 


I just discovered the \> \< and \! commands.  I'm a bit puzzled,
though.  Is \! just the same as \spandynamic{1 2} which is the same as
\cr and \decr?  Why does

     \notes{ a \< b \cr }

work but
   
     \notes{ a \< b \! }

give a parse error?  


Reply via email to