On 21.08.2014 23:42, Joseph Wright wrote:
> On 20/08/2014 01:23, Allred, Sean wrote:
>> I've drawn up a syntax proposal
>> <https://gist.github.com/vermiculus/d8ac080f3f8c7ec2bed6#file-idea-org> (as
>> an Org file) on GitHub:
> One thing I think to consider is the lesson of LaTeX(2e) in that a small
> number of positional-based mandatory arguments work well as a user.
> That's something I'd certainly expect to see in any new code too.
I agree but this is a document interface question and quite independent
of the designer layer. There is no reason, whatsoever, that the
transition from gui layer to designer layer couldn't turn positional
arguments (and or a mixture of 2e type optionals) into anything on the
designer layer, be it mandatory positional arguments or key/val pairs
> The issue with mixing up mandatory and optional arguments in an
> object/template set up is that this then looks less clear (how many
> arguments must a TeX-like document-level interface require?).
be careful with that: even the mandatory template args (that are now
positional ones) do not translate to mandatory args on the user
interface, there they might as well be optional and defaults are
generated when passing them to the template so there isn't really much
in terms or relationship of "mandatory" between the two layers.
> certainly the number of truly *required* arguments will remain small,
> and while the case that a design should not be limited by TeX is quite
> true, and the same time a design interface that fundamentally fails to
> translate to a TeX-based user layer is a problem too.
The number of required args will indeed be small which is why I think
the designer layer could implement them as mandatory positional args
despite the inherited limitation of 9. However, given that this would be
a one-time parsing effort between two layers I lean towards key/val here
too as it will make the designer layer easier to read.
Neither way I see that this fundamentally fails to translate a TeX-based