<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: LaTeX3: Key points</title>
	<atom:link href="http://www.texdev.net/2009/01/19/latex3-key-points/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.texdev.net/2009/01/19/latex3-key-points/</link>
	<description>Coding in the TeX world</description>
	<lastBuildDate>Mon, 08 Mar 2010 14:08:06 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Joseph Wright</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-2246</link>
		<dc:creator>Joseph Wright</dc:creator>
		<pubDate>Tue, 16 Feb 2010 09:52:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-2246</guid>
		<description>Hello Patrick,

Sorry it&#039;s taken a few days to get back on this: busy times. 

There are a lot of different things that people want from typesetting systems. One of them is, as you say, highly structured data processing. That makes sense at a publisher working from a database (which is what a lot of journals do), and support at least from LaTeX needs to be better. As you say, ConTeXt does handle this. My own view is that TeX is the wrong way to do things here: a parser for XML is much easier to write in other ways, with output to the typesetting end from that process. Of course, this would be helped by a more structured LaTeX typesetting system.

However, other people use LaTeX differently. There are a lot of people who want to be able simply to type documents and have them look good without any database back end. I can only speak for myself, but there is no way I&#039;d favour typing documents in XML over typing them in some kind of more flexible markup (LaTeX , markdown, HTML, etc.). For those people XML is not directly relevant.

One idea that has been suggested is that LaTeX (as an input syntax) should be converted first to XML then to a typesetting language. That still needs a more structured LaTeX, and I suspect is far from trivial. I&#039;m not ruling it out, thought.

One question is always the amount of time available. The ConTeXt team have put a lot of commercial effort in, and they&#039;ve still not moved to a pure XML interior (or indeed a TeX-free parser). So I&#039;m not sure that LaTeX is likely to either: I think Hans and Taco will have considered this.

Joseph</description>
		<content:encoded><![CDATA[<p>Hello Patrick,</p>
<p>Sorry it&#8217;s taken a few days to get back on this: busy times. </p>
<p>There are a lot of different things that people want from typesetting systems. One of them is, as you say, highly structured data processing. That makes sense at a publisher working from a database (which is what a lot of journals do), and support at least from LaTeX needs to be better. As you say, ConTeXt does handle this. My own view is that TeX is the wrong way to do things here: a parser for XML is much easier to write in other ways, with output to the typesetting end from that process. Of course, this would be helped by a more structured LaTeX typesetting system.</p>
<p>However, other people use LaTeX differently. There are a lot of people who want to be able simply to type documents and have them look good without any database back end. I can only speak for myself, but there is no way I&#8217;d favour typing documents in XML over typing them in some kind of more flexible markup (LaTeX , markdown, HTML, etc.). For those people XML is not directly relevant.</p>
<p>One idea that has been suggested is that LaTeX (as an input syntax) should be converted first to XML then to a typesetting language. That still needs a more structured LaTeX, and I suspect is far from trivial. I&#8217;m not ruling it out, thought.</p>
<p>One question is always the amount of time available. The ConTeXt team have put a lot of commercial effort in, and they&#8217;ve still not moved to a pure XML interior (or indeed a TeX-free parser). So I&#8217;m not sure that LaTeX is likely to either: I think Hans and Taco will have considered this.</p>
<p>Joseph</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Patrick Gundlach</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-2225</link>
		<dc:creator>Patrick Gundlach</dc:creator>
		<pubDate>Wed, 10 Feb 2010 08:06:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-2225</guid>
		<description>IMO LaTeX3 and (pure) ConTeXt are not going in the right direction. As Will pointed out, writing things with backslashes is error prone (\LaTeX\) and having unstructured \section{...} in your document is a one way. The backends are only good for programmers or people that know how to ask a programmer for help. So the direction should be XML (or some other kind of structured content).

Instead of writing LaTeX3 which is only another interface for unstructured, error prone input, we should provide XML interfaces for high quality typesetting. ConTeXt has (I&#039;ve hardly used it) the ability to have XML-only documents. And I am currently writing an XML only typesetting system.</description>
		<content:encoded><![CDATA[<p>IMO LaTeX3 and (pure) ConTeXt are not going in the right direction. As Will pointed out, writing things with backslashes is error prone (\LaTeX\) and having unstructured \section{&#8230;} in your document is a one way. The backends are only good for programmers or people that know how to ask a programmer for help. So the direction should be XML (or some other kind of structured content).</p>
<p>Instead of writing LaTeX3 which is only another interface for unstructured, error prone input, we should provide XML interfaces for high quality typesetting. ConTeXt has (I&#8217;ve hardly used it) the ability to have XML-only documents. And I am currently writing an XML only typesetting system.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joseph Wright</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-56</link>
		<dc:creator>Joseph Wright</dc:creator>
		<pubDate>Wed, 21 Jan 2009 17:47:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-56</guid>
		<description>My example was perhaps not the best.  Better would have been \edef (there is no \@nameedef in LaTeX: I don&#039;t know about ConTeXt).  The more general point is that this applies across LaTeX3 (rather too many places to go through them all).  

You are quite right about documentation.  That seems to me to be something that the LaTeX team are aware of.  The current &quot;source3.pdf&quot; file is a start (for the low-level stuff), but I&#039;d agree that both LaTeX2e and ConTeXt suffer from the lack of an &quot;official&quot; book (or at least book-as-PDF) on the programming side of things.

I&#039;d also agree that there will always be a somewhat blurred line when new functions open up new possibilities for design.  On that, I have not idea how the team will tackle things.

For using LaTeX3, the only part that is currently usable is the low level programming stuff.  That seems to be reasonably robust, and the team are working on an automated test system at the moment.  But as yet there is not enough &quot;on top&quot; of that to see how things will work.  For example, if you look at my xnotes2bib package (my notes2bib package re-implemented in LaTeX3), only the low-level stuff is in LaTeX3: the higher level stuff is still LaTeX2e.

The final point you make is of course the biggest issue of all.  On that, &quot;critical mass&quot; is important, and it&#039;s not clear that LaTeX3 can get that.  But LaTeX2e can&#039;t go on for ever.  So at some point something has to give if the LaTeX team do not deliver (we all move to ConTeXt, we all have to use Word =&gt; Quark/InDesign, something else as yet unknown).</description>
		<content:encoded><![CDATA[<p>My example was perhaps not the best.  Better would have been \edef (there is no \@nameedef in LaTeX: I don&#8217;t know about ConTeXt).  The more general point is that this applies across LaTeX3 (rather too many places to go through them all).  </p>
<p>You are quite right about documentation.  That seems to me to be something that the LaTeX team are aware of.  The current &#8220;source3.pdf&#8221; file is a start (for the low-level stuff), but I&#8217;d agree that both LaTeX2e and ConTeXt suffer from the lack of an &#8220;official&#8221; book (or at least book-as-PDF) on the programming side of things.</p>
<p>I&#8217;d also agree that there will always be a somewhat blurred line when new functions open up new possibilities for design.  On that, I have not idea how the team will tackle things.</p>
<p>For using LaTeX3, the only part that is currently usable is the low level programming stuff.  That seems to be reasonably robust, and the team are working on an automated test system at the moment.  But as yet there is not enough &#8220;on top&#8221; of that to see how things will work.  For example, if you look at my xnotes2bib package (my notes2bib package re-implemented in LaTeX3), only the low-level stuff is in LaTeX3: the higher level stuff is still LaTeX2e.</p>
<p>The final point you make is of course the biggest issue of all.  On that, &#8220;critical mass&#8221; is important, and it&#8217;s not clear that LaTeX3 can get that.  But LaTeX2e can&#8217;t go on for ever.  So at some point something has to give if the LaTeX team do not deliver (we all move to ConTeXt, we all have to use Word => Quark/InDesign, something else as yet unknown).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aditya Mahajan</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-55</link>
		<dc:creator>Aditya Mahajan</dc:creator>
		<pubDate>Wed, 21 Jan 2009 17:23:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-55</guid>
		<description>I have rarely seen \expandafter\def\csname MyMacro \endcsname being used. In LaTeX, one normally uses \@namedef{MyMacro} (spelling?). In ConTeXt, \setvalue{MyMacro}. But I agree that a consistent interface is easier to use. The trouble with both LaTeX and ConTeXt is that there is little documentation of the programming extensions that they provide. To be fair, the documentation is present for both, but it is hard to find. To be successful, LaTeX3 will need to provide something similar to the TeXbook, for new users to understand the programming interface.

What is the distinction between functionality and design. Suppose I am writing a LaTeX class/ConTeXt module for a journal, which requires the user to specify keywords. Suppose the default class does not provide a keyword environment. Is adding keyword env part of the style or new functionality? 

The thing that worries me most about LaTeX3 is how well it will be tested before it is released. ConTeXt has more of a rolling release philosophy, and right now there are quite a few users who are actually using Luatex+MKIV. So, bugs get caught and corrected. LaTeX3 needs to move to a stage where users can use it.

The other concern is whether the big TeX publishers (like IEEE, SIAM, Springer, AMS) change to LaTeX3 in their workflow. This is right now a problem with ConTeXt. Which means, even if I like ConTeXt, but know that the paper that I am working on will finally need to be submitted in LaTeX2e, I will use LaTeX2e. The same will be true of LaTeX3.</description>
		<content:encoded><![CDATA[<p>I have rarely seen \expandafter\def\csname MyMacro \endcsname being used. In LaTeX, one normally uses \@namedef{MyMacro} (spelling?). In ConTeXt, \setvalue{MyMacro}. But I agree that a consistent interface is easier to use. The trouble with both LaTeX and ConTeXt is that there is little documentation of the programming extensions that they provide. To be fair, the documentation is present for both, but it is hard to find. To be successful, LaTeX3 will need to provide something similar to the TeXbook, for new users to understand the programming interface.</p>
<p>What is the distinction between functionality and design. Suppose I am writing a LaTeX class/ConTeXt module for a journal, which requires the user to specify keywords. Suppose the default class does not provide a keyword environment. Is adding keyword env part of the style or new functionality? </p>
<p>The thing that worries me most about LaTeX3 is how well it will be tested before it is released. ConTeXt has more of a rolling release philosophy, and right now there are quite a few users who are actually using Luatex+MKIV. So, bugs get caught and corrected. LaTeX3 needs to move to a stage where users can use it.</p>
<p>The other concern is whether the big TeX publishers (like IEEE, SIAM, Springer, AMS) change to LaTeX3 in their workflow. This is right now a problem with ConTeXt. Which means, even if I like ConTeXt, but know that the paper that I am working on will finally need to be submitted in LaTeX2e, I will use LaTeX2e. The same will be true of LaTeX3.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joseph Wright</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-54</link>
		<dc:creator>Joseph Wright</dc:creator>
		<pubDate>Wed, 21 Jan 2009 08:18:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-54</guid>
		<description>Mahajan, thanks for the very detailed comment, which I think deserves and equally detailed reply!  First off, I should say that there are some parts of the ConTeXt user interface that I&#039;m not so keen on.  So I&#039;d like the option of LaTeX3 at some point :-)

On the coding syntax/naming, I&#039;d agree that including things about the arguments of a function in the function name is unusual.  I was a bit sceptical myself at first, but I think this is useful due to the nature of the TeX language.  An obvious example is expansion.  With plain TeX, you need to do things like \def\MyMacro but \expandafter\def\csname MyMacro\endcsname to do a name definition.  Using LaTeX3, the same is done with \def:Npn\MyMacro and \def:cpn{MyMacro}.  Leaving aside the &quot;pn&quot; part (which may change), the \def:N versus \def:c idea is one I like. 

Th point about a consistent language is that in LaTeX2e and ConTeXt you use a mix of TeX primitives and format macros to programme. The LaTeX3 idea is that *everything* is given a LaTeX interface (and name). The primitives tend to have syntax inconsistent with higher-level functions, and you are still left needing to learn two languages (TeX + LaTeX or TeX + ConTeXt).

On the \usemodule point, you are correct that I missed this possibility out.  The LaTeX3 team are very keen to *really* separate functions and design.  The problem with \usemodule is that there is no separation: a module can provide new functionality or alter design settings.  LaTeX2e does better than LaTeX2.09 on this, but is still very poor.  I&#039;d expect LaTeX3 to do much better.

Writing the code is obviously a problem (after all, LaTeX3 was started before LaTeX2e came out!).  I suspect that LaTeX3 will be bigger than ConTeXt (given the general &quot;we need everything in the LaTeX Companion as a starting point&quot; design brief).

On Lua, I&#039;m not sure what will happen.  At present there are no plans to require Lua for LaTeX3, at least partly because it will take years to propagate around. (I&#039;ve recently had problems with a publisher where the e-TeX extensions are not available.)  I&#039;d think that this may change: I&#039;d like to see Lua used if available (I&#039;ve suggested that LaTeX3.5 might be an idea for that).

Finally, there are no guarantees for LaTeX3.  At some point, if the team cannot deliver, people will move to ConTeXt, no question.  I&#039;m certainly trying to improve my ConTeXt skills.</description>
		<content:encoded><![CDATA[<p>Mahajan, thanks for the very detailed comment, which I think deserves and equally detailed reply!  First off, I should say that there are some parts of the ConTeXt user interface that I&#8217;m not so keen on.  So I&#8217;d like the option of LaTeX3 at some point <img src='http://www.texdev.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>On the coding syntax/naming, I&#8217;d agree that including things about the arguments of a function in the function name is unusual.  I was a bit sceptical myself at first, but I think this is useful due to the nature of the TeX language.  An obvious example is expansion.  With plain TeX, you need to do things like \def\MyMacro but \expandafter\def\csname MyMacro\endcsname to do a name definition.  Using LaTeX3, the same is done with \def:Npn\MyMacro and \def:cpn{MyMacro}.  Leaving aside the &#8220;pn&#8221; part (which may change), the \def:N versus \def:c idea is one I like. </p>
<p>Th point about a consistent language is that in LaTeX2e and ConTeXt you use a mix of TeX primitives and format macros to programme. The LaTeX3 idea is that *everything* is given a LaTeX interface (and name). The primitives tend to have syntax inconsistent with higher-level functions, and you are still left needing to learn two languages (TeX + LaTeX or TeX + ConTeXt).</p>
<p>On the \usemodule point, you are correct that I missed this possibility out.  The LaTeX3 team are very keen to *really* separate functions and design.  The problem with \usemodule is that there is no separation: a module can provide new functionality or alter design settings.  LaTeX2e does better than LaTeX2.09 on this, but is still very poor.  I&#8217;d expect LaTeX3 to do much better.</p>
<p>Writing the code is obviously a problem (after all, LaTeX3 was started before LaTeX2e came out!).  I suspect that LaTeX3 will be bigger than ConTeXt (given the general &#8220;we need everything in the LaTeX Companion as a starting point&#8221; design brief).</p>
<p>On Lua, I&#8217;m not sure what will happen.  At present there are no plans to require Lua for LaTeX3, at least partly because it will take years to propagate around. (I&#8217;ve recently had problems with a publisher where the e-TeX extensions are not available.)  I&#8217;d think that this may change: I&#8217;d like to see Lua used if available (I&#8217;ve suggested that LaTeX3.5 might be an idea for that).</p>
<p>Finally, there are no guarantees for LaTeX3.  At some point, if the team cannot deliver, people will move to ConTeXt, no question.  I&#8217;m certainly trying to improve my ConTeXt skills.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aditya Mahajan</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-53</link>
		<dc:creator>Aditya Mahajan</dc:creator>
		<pubDate>Tue, 20 Jan 2009 22:37:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-53</guid>
		<description>I have extensively used both LaTeX and ConTeXt, but have not kept up to date with LaTeX3. I agree with Marcin: ConTeXt already solves the problem. Specifically, taking your points

1. It has a well designed and consistent document coding system. Now with lua in the picture, a lot of stuff is *much* easier. We may not need an explicit auxillary file anymore! 

2. I doubt you can get a larger kernel than ConTeXt ;)

3. ConTeXt does not plan to do this. I am not sure how useful it is. Most programming languages to not specify the airity of the function in the function name.

4. I guess this is true for almost all markup based language (except CSS, which is a mess).

5. ConTeXt already has excellent support for XML. Now all the XML parsing is done using lpeg (a lua) library, and you can specify both tree and stream based rules.

6. ConTeXt does grid layout and column sets. However, making any change in the output routine still requires a lot of work. (There is a module called streams, which makes things a bit easier. But changing the output routine is never going to be easy in ConTeXt).

I disagree with you on the aims of ConTeXt. You can have ConTeXt modules which are similar to LaTeX classes and packages. If you want a design for a journal, write a module for that. The same way you do in LaTeX. Ok, in LaTeX most of the time someone else has written the package for you. But someone has to do it. Someone will have to do it in LaTeX3. 

A module can do any ad-doc thing that the module writer wants. Just like LaTeX packages. There are fewer ConTeXt modules, simply because Hans can code faster than you can request features.

I believe that the only thing that provides backward compatibility is plain TeX. If backward compatibility means that an old document compiles correctly, then to a large extent, both latex and context are b/c. If b/c means that you get the same output, the neither is. Sure, the latex kernel seldom changes, but you will alsways use some packages in latex, and packages change all the time. There goes b/c. In fact, Hans is very particular about b/c. Often there are ways to do things more cleanly, but he has refused to change many things saying that it would affect b/c. 

It is really sad that LaTeX3 will not support lua. There are many deficiencies in TeX (e.g., automatic linebreaking of equations, syntax highlighing for verbatim text, sorting for bibliography, index, and table of contents) which are much easier to do in lua than in plain TeX. At least, once luatex is out, these things could be done via latex packages.</description>
		<content:encoded><![CDATA[<p>I have extensively used both LaTeX and ConTeXt, but have not kept up to date with LaTeX3. I agree with Marcin: ConTeXt already solves the problem. Specifically, taking your points</p>
<p>1. It has a well designed and consistent document coding system. Now with lua in the picture, a lot of stuff is *much* easier. We may not need an explicit auxillary file anymore! </p>
<p>2. I doubt you can get a larger kernel than ConTeXt <img src='http://www.texdev.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>3. ConTeXt does not plan to do this. I am not sure how useful it is. Most programming languages to not specify the airity of the function in the function name.</p>
<p>4. I guess this is true for almost all markup based language (except CSS, which is a mess).</p>
<p>5. ConTeXt already has excellent support for XML. Now all the XML parsing is done using lpeg (a lua) library, and you can specify both tree and stream based rules.</p>
<p>6. ConTeXt does grid layout and column sets. However, making any change in the output routine still requires a lot of work. (There is a module called streams, which makes things a bit easier. But changing the output routine is never going to be easy in ConTeXt).</p>
<p>I disagree with you on the aims of ConTeXt. You can have ConTeXt modules which are similar to LaTeX classes and packages. If you want a design for a journal, write a module for that. The same way you do in LaTeX. Ok, in LaTeX most of the time someone else has written the package for you. But someone has to do it. Someone will have to do it in LaTeX3. </p>
<p>A module can do any ad-doc thing that the module writer wants. Just like LaTeX packages. There are fewer ConTeXt modules, simply because Hans can code faster than you can request features.</p>
<p>I believe that the only thing that provides backward compatibility is plain TeX. If backward compatibility means that an old document compiles correctly, then to a large extent, both latex and context are b/c. If b/c means that you get the same output, the neither is. Sure, the latex kernel seldom changes, but you will alsways use some packages in latex, and packages change all the time. There goes b/c. In fact, Hans is very particular about b/c. Often there are ways to do things more cleanly, but he has refused to change many things saying that it would affect b/c. </p>
<p>It is really sad that LaTeX3 will not support lua. There are many deficiencies in TeX (e.g., automatic linebreaking of equations, syntax highlighing for verbatim text, sorting for bibliography, index, and table of contents) which are much easier to do in lua than in plain TeX. At least, once luatex is out, these things could be done via latex packages.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Will Robertson</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-51</link>
		<dc:creator>Will Robertson</dc:creator>
		<pubDate>Tue, 20 Jan 2009 09:59:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-51</guid>
		<description>Dropped the link, oops. Try again:

http://permalink.gmane.org/gmane.comp.tex.latex.latex3/1366</description>
		<content:encoded><![CDATA[<p>Dropped the link, oops. Try again:</p>
<p><a href="http://permalink.gmane.org/gmane.comp.tex.latex.latex3/1366" rel="nofollow">http://permalink.gmane.org/gmane.comp.tex.latex.latex3/1366</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Will Robertson</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-50</link>
		<dc:creator>Will Robertson</dc:creator>
		<pubDate>Tue, 20 Jan 2009 09:58:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-50</guid>
		<description>Joseph also asked for comments on the LaTeX3 list; until I start my own writings on LaTeX3 on a website somewhere, I&#039;ll have to reply in that medium:
  

Here&#039;s what I wrote:

* * *

Hi Joseph,

I think I&#039;ve mentioned to you before that our thinking here is very  
closely aligned; in my opinion you&#039;ve done a good job covering the  
&quot;big vague issues&quot; that I expect LaTeX3 to address in time.

The most interesting part for me is your point #2 -- designing an  
improved, consistent interface for functionality that spans what&#039;s  
described in The LaTeX Companion and then some.

I think I might have mentioned it before but I think it would be a  
good idea to examine projects like Gellmu and see if we can coerce or  
pervert the existing LaTeX document syntax into validating XML; I  
believe that we can make it easier to write LaTeX by hand (since I  
assume that people will always want to do this) by decreasing the  
number of &quot;special characters&quot; and by eliminating the space-gobbling  
macro that takes no arguments (which is useful for macro writers but  
error-prone for document authors). (E.g., forcing users to write  
something like `\LaTeX;` rather than `\LaTeX{}` or `\LaTeX\ ` or  
`{\LaTeX}`.)

I don&#039;t have much to say about LaTeX3 vs. ConTeXt besides the fact  
that I&#039;ve hardly used ConTeXt, and it does seem like many of the goals  
of the LaTeX project have already been implemented in ConTeXt; it&#039;s  
possibly only critical mass that prevents it being a worthy successor  
to LaTeX2e. On the other hand, I think it&#039;s good for us to approach  
similar problems independently to explore different possibilities. As  
Joseph commented, I hope that ConTeXt Mk IV and LaTeX3 could be  
complements rather than direct competitors to each other.

Staying on this point for a second, one big philosophical different  
between the two is that once the LaTeX3 document model is designed it  
will no doubt remain rigidly backwards compatible for many many years,  
whereas ConTeXt may continue to evolve and continue to break backwards  
compatibility to various degrees (although this may well not be the  
case after Mk IV is complete).

Hypothetically speaking, I might expect a strict LaTeX3 document class  
to be eligible for becoming an ISO standard, whereas ConTeXt is not  
being designed, as far as I know, to naturally fit into this sort of  
model of rigidity.

Meanwhile, better get back to work so that I can spend some other time  
on the expl3 code so we can start working on all these things that we  
keep talking about :)

Will</description>
		<content:encoded><![CDATA[<p>Joseph also asked for comments on the LaTeX3 list; until I start my own writings on LaTeX3 on a website somewhere, I&#8217;ll have to reply in that medium:</p>
<p>Here&#8217;s what I wrote:</p>
<p>* * *</p>
<p>Hi Joseph,</p>
<p>I think I&#8217;ve mentioned to you before that our thinking here is very<br />
closely aligned; in my opinion you&#8217;ve done a good job covering the<br />
&#8220;big vague issues&#8221; that I expect LaTeX3 to address in time.</p>
<p>The most interesting part for me is your point #2 &#8212; designing an<br />
improved, consistent interface for functionality that spans what&#8217;s<br />
described in The LaTeX Companion and then some.</p>
<p>I think I might have mentioned it before but I think it would be a<br />
good idea to examine projects like Gellmu and see if we can coerce or<br />
pervert the existing LaTeX document syntax into validating XML; I<br />
believe that we can make it easier to write LaTeX by hand (since I<br />
assume that people will always want to do this) by decreasing the<br />
number of &#8220;special characters&#8221; and by eliminating the space-gobbling<br />
macro that takes no arguments (which is useful for macro writers but<br />
error-prone for document authors). (E.g., forcing users to write<br />
something like `\LaTeX;` rather than `\LaTeX{}` or `\LaTeX\ ` or<br />
`{\LaTeX}`.)</p>
<p>I don&#8217;t have much to say about LaTeX3 vs. ConTeXt besides the fact<br />
that I&#8217;ve hardly used ConTeXt, and it does seem like many of the goals<br />
of the LaTeX project have already been implemented in ConTeXt; it&#8217;s<br />
possibly only critical mass that prevents it being a worthy successor<br />
to LaTeX2e. On the other hand, I think it&#8217;s good for us to approach<br />
similar problems independently to explore different possibilities. As<br />
Joseph commented, I hope that ConTeXt Mk IV and LaTeX3 could be<br />
complements rather than direct competitors to each other.</p>
<p>Staying on this point for a second, one big philosophical different<br />
between the two is that once the LaTeX3 document model is designed it<br />
will no doubt remain rigidly backwards compatible for many many years,<br />
whereas ConTeXt may continue to evolve and continue to break backwards<br />
compatibility to various degrees (although this may well not be the<br />
case after Mk IV is complete).</p>
<p>Hypothetically speaking, I might expect a strict LaTeX3 document class<br />
to be eligible for becoming an ISO standard, whereas ConTeXt is not<br />
being designed, as far as I know, to naturally fit into this sort of<br />
model of rigidity.</p>
<p>Meanwhile, better get back to work so that I can spend some other time<br />
on the expl3 code so we can start working on all these things that we<br />
keep talking about <img src='http://www.texdev.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Will</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joseph Wright</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-49</link>
		<dc:creator>Joseph Wright</dc:creator>
		<pubDate>Mon, 19 Jan 2009 22:18:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-49</guid>
		<description>My take is that ConTeXt and LaTeX have different aims.  ConTeXt is rather more like plain TeX, in the sense that each document is independent. So ConTeXt is great for arbitrary document design: if you&#039;re creating a one-off book, there are good arguments for using ConTeXt. On the other hand, LaTeX is more concerned with &quot;reusable&quot; document design, hence the document class idea.  So I&#039;d see the two as more complementary than in direct competition. Also in the aim vein, the ConTeXt development model (small team, everything done by them) would probably not work so well if everyone using LaTeX made the switch. Being able to contribute code in an ad hoc sense is one of the reasons LaTeX is popular (although more control would be very welcome here!).
I can&#039;t say that I know enough about writing &quot;serious&quot; works outside of science to comment on how easy or difficult it is in LaTeX2e. My own experience writing chemistry reports (papers are done in Word) is that the kernel still needs to be supplemented to work well. So I&#039;d say that the LaTeX3 kernel will need to be a lot bigger to be useful without lots of bolt ons, for all subject areas. I&#039;d be interested to know what the &quot;top issues&quot; are.
On the back-compatibility issue, it&#039;s not stated anywhere officially, but it seems pretty clear that LaTeX3 won&#039;t work with LaTeX2e documents without editing. So I&#039;d say that the message is as understood for LaTeX as for ConTeXt. As to Lua, it doesn&#039;t look like LaTeX3 will use it in the kernel, but I&#039;d hope that the team will be a bit more proactive in planning beyond LaTeX3 once it is released.  I&#039;d hope for &quot;3.5&quot; work to start as 3 is finalised, and to use Lua.  But that might just be me!</description>
		<content:encoded><![CDATA[<p>My take is that ConTeXt and LaTeX have different aims.  ConTeXt is rather more like plain TeX, in the sense that each document is independent. So ConTeXt is great for arbitrary document design: if you&#8217;re creating a one-off book, there are good arguments for using ConTeXt. On the other hand, LaTeX is more concerned with &#8220;reusable&#8221; document design, hence the document class idea.  So I&#8217;d see the two as more complementary than in direct competition. Also in the aim vein, the ConTeXt development model (small team, everything done by them) would probably not work so well if everyone using LaTeX made the switch. Being able to contribute code in an ad hoc sense is one of the reasons LaTeX is popular (although more control would be very welcome here!).<br />
I can&#8217;t say that I know enough about writing &#8220;serious&#8221; works outside of science to comment on how easy or difficult it is in LaTeX2e. My own experience writing chemistry reports (papers are done in Word) is that the kernel still needs to be supplemented to work well. So I&#8217;d say that the LaTeX3 kernel will need to be a lot bigger to be useful without lots of bolt ons, for all subject areas. I&#8217;d be interested to know what the &#8220;top issues&#8221; are.<br />
On the back-compatibility issue, it&#8217;s not stated anywhere officially, but it seems pretty clear that LaTeX3 won&#8217;t work with LaTeX2e documents without editing. So I&#8217;d say that the message is as understood for LaTeX as for ConTeXt. As to Lua, it doesn&#8217;t look like LaTeX3 will use it in the kernel, but I&#8217;d hope that the team will be a bit more proactive in planning beyond LaTeX3 once it is released.  I&#8217;d hope for &#8220;3.5&#8243; work to start as 3 is finalised, and to use Lua.  But that might just be me!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcin</title>
		<link>http://www.texdev.net/2009/01/19/latex3-key-points/comment-page-1/#comment-48</link>
		<dc:creator>Marcin</dc:creator>
		<pubDate>Mon, 19 Jan 2009 20:52:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.texdev.net/?p=112#comment-48</guid>
		<description>That&#039;s pretty interesting.

The question is, however, why reinvent the wheel - Hans has already written ConTeXt...

And more seriously: exactly as you stated, the real problem is: what are the design goals of LaTeX?  Currently (as of 2e), LaTeX is fundamentally flawed: it *claims* to be a &quot;document preparation system&quot;, but in fact it *is* a &quot;scientific paper preparation system&quot;.  It would be ok with me if it were clearly stated - but it&#039;s not.  Instead, LaTeX has numerous hacks and dirty tricks allowing it to produce other kinds of documents (mostly implemented as packages).  This results in a feeling that &quot;you can do everything in LaTeX, but you get a feeling that it&#039;s somehow awkward&quot;.  Yes it is - because usually it&#039;s just the wrong tool (unless you write a paper on maths, when it&#039;s very nice).

But maybe I&#039;m wrong.  Maybe it would be refreshing to have some real competition.  Maybe LaTeX3 will be redesigned so heavily that it will really be a &quot;document preparation system&quot;.

Remeber, however, that ConTeXt has two things LaTeX doesn&#039;t (or am I wrong?): they have lua and apparently they have cured themselves from the &quot;backward-compatibility-syndrome&quot; (with MkIV).  This might make ConTeXt a very tough competitor...</description>
		<content:encoded><![CDATA[<p>That&#8217;s pretty interesting.</p>
<p>The question is, however, why reinvent the wheel &#8211; Hans has already written ConTeXt&#8230;</p>
<p>And more seriously: exactly as you stated, the real problem is: what are the design goals of LaTeX?  Currently (as of 2e), LaTeX is fundamentally flawed: it *claims* to be a &#8220;document preparation system&#8221;, but in fact it *is* a &#8220;scientific paper preparation system&#8221;.  It would be ok with me if it were clearly stated &#8211; but it&#8217;s not.  Instead, LaTeX has numerous hacks and dirty tricks allowing it to produce other kinds of documents (mostly implemented as packages).  This results in a feeling that &#8220;you can do everything in LaTeX, but you get a feeling that it&#8217;s somehow awkward&#8221;.  Yes it is &#8211; because usually it&#8217;s just the wrong tool (unless you write a paper on maths, when it&#8217;s very nice).</p>
<p>But maybe I&#8217;m wrong.  Maybe it would be refreshing to have some real competition.  Maybe LaTeX3 will be redesigned so heavily that it will really be a &#8220;document preparation system&#8221;.</p>
<p>Remeber, however, that ConTeXt has two things LaTeX doesn&#8217;t (or am I wrong?): they have lua and apparently they have cured themselves from the &#8220;backward-compatibility-syndrome&#8221; (with MkIV).  This might make ConTeXt a very tough competitor&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
