Hi,
Dear Hans,
I understand that you personally don't find expl3 compelling and that there may
be strong technical reasons against supporting it in ConTeXt, particularly if
the direction of ConTeXt is to expose most higher-level interfaces through Lua.
I doubt it's only me but anyway, I'm not sure what you mean with high
level interfaces here. Most macro based interfaces are just 'tex'
interfaces but indeed all those are also available from lua. Users are
free to use and mix these. One can actually wonder if hiding primitive
tex behind some layer isn't a mesage in its own, like: don't use tex the
language, which then also removed some charm. We like to keep that
visible and on-board. There are some low level helpers but users rarely
need these. Then there is of course the 'pure tex' interface, primitives
and such. That repertoire is larger than in other engines and thereby
less is needed between pure tex and high level interfaces. No need for
many _ and : in helpers.
Even so, I think it could be interesting to tackle a few representative tasks
in ConTeXt using both expl3 and Lua and discuss the comparison at a ConTeXt
meeting. Even if expl3 itself had little to offer ConTeXt, comparing the two
approaches -- their design philosophies, trade-offs, and underlying ideas --
seems interesting in its own right and, who knows, might even inspire some
future developments in ConTeXt.
A I mentioned, interfaces like expl (from what I've seen) are of little
use to context and basically drive us back in time. The design
philosophies between context and latex are different anyways, they have
little in common. I honestly don't want to discuss trade-offs and
underlying ideas (tex politics) and/or functionality.
With respect to future developments, we moved away from mkii, via mkiv
and arrived at where we always wanted to be in mkxl (also performance
wise). It's not like we have plans for big fundamental changes, we're
more into improving and exploring new things (like in metapost) and
these don't demand new paradigms. We have some ideas but these are then
a mix between user level functionality and core engine functionality,
some intermediate layer is not part of that thinking,
(it's kind of hard to explain how we see things I guess)
Hans
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : [email protected] /
https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
webpage : https://www.pragma-ade.nl / https://context.aanhet.net (mirror)
archive : https://github.com/contextgarden/context
wiki : https://wiki.contextgarden.net
___________________________________________________________________________________