----- Original Message ----
From: Frank Mittelbach <
[log in to unmask]>
To:
[log in to unmask]Sent: Sunday, April 6, 2008 2:22:21 PM
Subject: Re: LaTeX3 Plans and objectives
Paul,
>
Is
there
some
document
somewhere
which
lays
out
the
objectives
of
the
new
>
system?
I
have
long
had
some
notions
which
I
believe
will
improve
>
functionality.
Before
making
them,
I
would
like
to
see
that
plans
for
the
>
system.
my
all
means
make
them
please.
as
to
your
question:
objectives
for
LaTeX3
have
been
layed
out
in
various
places,
however
they
somewhat
changed
over
times.
My
view
is
that
of
a
three
tier
architecture
separating
-
programming
layer
-
configuration
layer
-
presentation
layer
That
is
what
we
have
been
working
on
for
a
long
time
(far
too
long
as
many
people
think)
and
and
over
the
last
years
for
a
number
of
reasons
more
as
a
research
activity
rather
than
with
the
immediate
goal
of
producing
a
new
system
"next
year".
Part
of
the
reason
for
that
is
that
we
came
to
the
conclusion
that
you
need
something
very
different
from
the
evolution
path
of
LaTeX2.9
->
LaTeX2e
to
get
any
significant
improvements.
Be
it
as
it
may
(as
this
is
a
different
discussion)
here
is
a
bit
more
detail
on
the
different
layers
mentioned
above.
Not
a
bad
overview
on
all
three
layers
(though
in
specific
details
somewhat
dated)
is
http://www.latex-project.org/papers/tug99.pdfProgramming
Layer
=================
provide
a
underlying
programming
language
which
works
on
the
"TeX"
engine
(or
rather
its
most
common
successors)
but
is
significantly
more
structured
and
useful
than
current
days
extensions
of
"plain
TeX"
including
the
LaTeX
kernel
which
is
just
a
mess
of
nonexistent
interfaces
(largely).
To
that
end
we
came
up
with
expl3
in
a
number
of
incarnations
and
although
it
is
still
changing
we
now
feel
that
it
has
turned
into
a
useful
basis.
best
source
to
look
at
it
is
http://www.latex-project.org/svnroot/experimental/trunk/l3in2e/e.g.
run
source3.tex
(guess
i
should
add
a
pdf
version
of
that
into
the
directory)
There
is
also
a
TUB
paper
on
expl3.
Configuration
Layer
===================
the
core
of
the
configuration
layer
is
the
concept
of
templates
which
is
implemented
through
the
template.sty
package
found
at
http://www.latex-project.org/svnroot/experimental/trunk/xpackages/xbasesee
also
for
example
http://www.latex-project.org/papers/template-notes.pdfand
as
already
mentioned
above
http://www.latex-project.org/papers/tug99.pdfThe
strength
of
the
configuration
layer
is
that
it
provides
mechanisms
to
build
high-level
configurable
(by
key/val
structures)
objects
to
enable
design
work
to
become
more
a
matter
of
configuration
by
declaration
than
configuration
by
coding
(as
it
is
required
in
2e
in
99%
of
the
cases).
But
to
make
this
a
reality
a
suitable
number
of
such
high-level
objects
needs
building
beforehand
which
is
something
where
still
a
lot
is
missing
or
not
finished.
Presentation
Layer
==================
The
basic
idea
for
the
presentation
layer
was
that
we
didn't
want
to
have
one,
or
rather
that
we
wanted
to
have
a
separation
that
allows
you
to
stick
different
representation
layers
on
top.
What
we
implemented
as
an
example
layer
is
the
xparse
interface
what
is
a
kind
of
LaTeX2e+
in
that
it
supports
the
typical
LaTeX
constructs
for
document
level
commands
with
some
generalizations.
That
is
found
as
part
of
http://www.latex-project.org/svnroot/experimental/trunk/xpackages/xbaseand
again
already
discussed
in
http://www.latex-project.org/papers/tug99.pdfBut
notice
that
this
interface
is
and
was
meant
to
be
an
example
and
as
such
one
of
the
more
simpler
ones.
The
example
given
by
Will
in
his
reply
to
you
(i.e.,
a
more
elaborate
key/val
syntax
on
the
document
level)
could
be
build
as
well
without
changes
to
the
other
layers.
Personally
that
is
the
layer
that
I'm
not
getting
involved
with
(at
least
not
currently)
as
my
interest
lies
in
the
Configuration
Layer.
This
is
not
to
say
this
work
here
wouldn't
be
equally
important
just
that
it
will
not
be
mine
most
likely.
regards
frank