LATEX-L Archives

Mailing list for the LaTeX3 project


Options: Use Forum View

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

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

Print Reply
Joseph Wright <[log in to unmask]>
Reply To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Mon, 19 Sep 2011 13:18:51 +0100
text/plain (41 lines)
On 19/09/2011 08:14, Kevin Godby wrote:
> I'm inclined to agree with Philipp.  Skimming through the existing
> LaTeX 2e packages, it looks like a lot of \newlength lines are
> followed immediately by setting a default value.  In some cases,
> commands are provided to modify the length and in other cases, the
> document author is expected to \setlength them in their preamble.
> Most of the cases that I spot-checked were non-constant values.

As Frank has commented, this is very much how LaTeX2e works but not
necessarily what we'd expect to be dominant for LaTeX3.

> I'm not sure what the LaTeX 3 plans are for the keyval stuff is,
> though.  How would you handle this situation using the LaTeX 3 coding
> style?

For design-level stuff, the template system should be taking a lot of
the work on, while for more flexible stuff there is l3keys. Both are
keyval-based, and separate out 'define' and 'set' stages.

> On the topic of constants:  Aside from the c_ prefix indicating to the
> reader/author that the value is to be constant, is there anything that
> prevents one from changing the value?  How much overhead would it be
> to have the LaTeX 3 macros check for the c_ prefix and throw an error
> if you try to modify the value?

Currently, we don't check this, and the overhead would be I think too
big for production code. I'm hoping we can go down the route of a set of
'debug' DocStrip guards to generate a slow-but-checking version of
LaTeX3 for testing purposes. Something of this idea is seen in the
'check-declarations' option for loading expl3.

> As for the iow_open question, I think that most languages will
> overwrite the existing file by default.  If you want to provide an
> option for appending to the file, I'd create an ioa_open:N macro.

This one seems clear: the arguments for a _new function here are
reasonable. Expect an update to the SVN this week (possibly today,
depends on how busy I am).
Joseph Wright