LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

Options: Use Classic View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Joseph Wright <[log in to unmask]>
Thu, 6 Jan 2011 08:18:37 +0000
text/plain (28 lines)
On 06/01/2011 07:45, Will Robertson wrote:
> Oh! I was confused -- for some reason it was in my head that using \the before \glueexpr would strip it of its "plus minus" components. But this is not the case, of course.
>
>      \the\glueexpr 1pt plus 1pt minus 1pt + 2pt plus -1pt minus 1pt\relax
>
> So I agree with you that adding \tex_the:D before \dim_eval and \skip_eval (and \muskip_eval which doesn't yet exist I think but it probably should) is the best idea.

I've gone back and forward through this, and I think in the end this is 
the best plan. In the end, expl3 should be designed 'on its own merits', 
and that may mean that some mixed plain TeX\expl3 cases are a little 
awkward. For what we want, an expandable \int_eval:n makes most sense, 
and by logical extension \dim_eval:n and \skip_eval:n should also be 
expandable.

What we do need to do is to make sure that this is clear in the 
documentation, as Philipp has pointed out. Something like

   After two expansions, \int_eval:n yields a <integer donation> not an
   <internal integer>. As a a result, it will require suitable
   termination if used in a \TeX-style integer assignment.

and a similar statement for dim and skip cases.

(BTW, I have some thoughts on muskips, but I think that will keep until 
we need them in LaTeX3!)
-- 
Joseph Wright

ATOM RSS1 RSS2