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
Condense Mail Headers

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

Print Reply
Mime-Version: 1.0 (Apple Message framework v935.3)
Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes
Date: Wed, 2 Sep 2009 10:53:06 +0930
Reply-To: Mailing list for the LaTeX3 project <[log in to unmask]>
From: Will Robertson <[log in to unmask]>
In-Reply-To: <[log in to unmask]>
Content-Transfer-Encoding: 7bit
Sender: Mailing list for the LaTeX3 project <[log in to unmask]>
Parts/Attachments: text/plain (54 lines)
On 02/09/2009, at 7:10 AM, Frank Mittelbach wrote:

> for that reason I think the current scheme for defaults is about  
> right. if so,
> then being able to alter the default of a template would still have  
> its place
> and I think it would be a valid addition to a future implementation,  
> but it
> would only be used on layer 1 when setting up document classes, ie  
> prior to
> definining instances and there it would help to better structure the
> design. For example, by setting the defaults for fonts just once all  
> near to
> each other, rather than repeating them over and over again when  
> specifying the
> instances.
>
> But it would not be usable or intended to make changes to a design  
> in a
> document preamble.

Hi Frank,

Based on how I visualise instances "freezing" the moment they are  
instantiated, the behaviour you describe above is exactly how I  
imagined template defaults behaving.

I think I need to clarify in my head how templates are treated and  
instantiated in the actual typesetting of a document. Does this order  
of execution look about right to you?

A.   expl3 and any other programming things are loaded (layer 3)
B.   Templates are defined somewhere (layer 2)
C1.  Class file: define document structure -- what template types and  
instances are to be used (define layer 0)
C2.  Class file: load template definitions
C3.  Class file: map document commands to instances (define layer -1)
C4.  Class file: set template defaults and instantiate templates  
(layer 1)
C5.  (Check that the instances required by the document structure  
exist and that no additional instances have been created.)
D.   Document configuration: final chance for instances to be  
redefined/edited
E.   Document typesetting: only local modifications possible are made  
available through layer -1

The order of steps C1-C5 doesn't really matter. I can see a little bit  
of redundancy in them but that follows from the discussion on trying  
to tease them apart as much as possible.

I'm not sure if this clears things up for anyone, including me :)

Will

ATOM RSS1 RSS2