Hello, friends.

The following lines are written by someone whose LaTeX3 knowledge (and 
let alone TeX in general) is very limited. Nevertheless, I'd like to 
share some thoughts on the GUI subject. :)

I too believe separation is possible, as long as the contract between 
layers is well-established. Seeing Frank's diagrams on his papers and 
keynotes, we can learn that the L3 team is aiming at making this 
contract to be fulfilled.

I'm not a fan of GUI's since IMHO you might end up damaging two things 
at once: your presentation layer and the underlying language. Anyway, 
I'm probably biased :) but I'm concerned on how the mapping between them 
would happen. To quote two principles of compiler design that I think 
important to the discussion:

1. a compiler must preserve the meaning of the program to be compiled.
2. a compiler must somehow enhance the program to be compiled.

A direct mapping from a graphical model to a code implementation is very 
interesting, but we might end up with a poor generated code, and this 
might compromise the whole project IMHO. :(

I'm talking from a bad experience I had with biblatex styles and a GUI I 
wrote. Everything was fine at first, but suddenly, the generated code 
was a delicious but indigestible spaghetti.

Of course, in a perfect world we would have an optimization box (aka the 
EG box :)) that would enhance the model and provide the "right" way of 
doing things. That's why I'd favour templating instead of a full GUI 
thingy like LyX. :)

I have a couple of systems that export things to LaTeX and the way I do 
this is via templating. Roughly speaking, you merge data with model and 
get the document. Along these lines, we could have a n-layered 
templating framework, with one template for each layer of "data" and 
with a well-established interface between them.

Maybe a hybrid tool that allows users fill the blanks while relying on 
templates is a good way of making people more close to L3: customers get 
what they want and a good code is available. :)

But that's just my humble opinion. :) Maybe if you could provide some 
sketches on what you were thinking, we could work on them.

Cheers,

Paulo

Em 27-01-2014 16:02, Sean Allred escreveu:
> Hello everybody,
>
> I recently asked a question on TeX.SX about potential graphical
> interfaces for document authors/designers with the new layering system
> of LaTeX3, but Joseph pointed out that it was probably more suited for
> this list.  I reproduce it below:
>
>> With the separation of document authorship, design, and
>> implementation, is a graphical tool for the end-user within reach?
>>
>> LyX tries to do this today, but LaTeX2e is not well-designed for such
>> an approach.  In essence, this is what LaTeX3 tries to fix: authors
>> must not be concerned with how their document looks in contest with
>> the actual content of their work.  While LaTeX2e did successfully
>> separate markup from implementation, it could not cleanly separate the
>> *design* from its implementation (and everyone and their mother has a
>> word to say about design---this isn't going to change).  The layers of
>> LaTeX3 are designed to separate the implementation/coding from the
>> design from the content.  The amazing work so far on LaTeX3 is proof
>> enough that many people believe this separation is possible---myself
>> included.
>>
>> Given this ideal of separation, will it be feasible for there to be
>> environments in which to author and design LaTeX documents in a way
>> that will put the power of LaTeX and `expl3` in high demand?
>
> So there you have it---given that the entire LaTeX3 system (looking also
> at `xtemplate`) seems to be going toward an system that has entirely
> different interfaces for more well-defined roles, has a truly graphical
> front-end (*not* a front-end such as LyX) been brought up?
>
> The `expl3` underworkings of the system must still be used directly as
> text---it doesn't make sense any other way---but there should be no
> reason an author should see this.  The simplicity of `xtemplate`s
> interface would allow for easy parsing, and graphical interfaces to
> objects/templates might be feasible.
>
> I think that this, if done properly and with a learning curve that is
> more like a learning *flat-line*, will put forth a lot of demand for
> LaTeX systems and `expl3` programmers, who in turn will create more and
> more modules that are available for use over CTAN in some standardized
> format (a la TDS).
>
> Thanks for your time,
> Sean
>