On 22/07/2013 09:06, Michiel Helvensteijn wrote: > On Mon, Jul 22, 2013 at 9:43 AM, Joseph Wright > <[log in to unmask]> wrote: > >> Certainly see a point here, but on the other hand I'm not a fan of >> encouraging more and more data structures. Writing a full data structure >> module is non-trivial: in most cases, I'd expect people to be using >> combinations of the existing ones in an ad-hoc fashion for their purpose. > > That doesn't sound like someone who is creating a programming language. :-) > > Abstraction is the word. There are so many useful data structures out > there that you haven't even touched upon in the libraries yet. Graphs, > trees, priority queues, sets, multisets, tables, ... One can never > predict what a programming language will be used for. Certainly true, hence waiting with interest to see what Bruno has in mind about 'objects'. I was thinking more that if we look at other languages there are a limited number of data types, and for specialist applications you still have to use whatever 'base' types are available. Now, we of course really only have macros and TeX's build-in registers, but if we are allowed a little leeway then we come to the kernel-defined data types we already have. I've no real experience of other languages, though, so perhaps I miss something. What does one do in say C if the data structures available are not suitable? (I didn't think you could even add keywords in most languages, so adding data types seems tricky.) [BTW, I'd hope expl3 is used for 'typesetting', broadly :-) Bruno may want to pilot the Mars rover in TeX, but ...] > If you see a future in expl3 you should expect it to grow, and outside > developers to be a part of that. If you don't provide these kinds of > facilities, others will. That's the nature of TeX. Just look at > etoolbox, etc. Being more flexible will probably give you more control > in the long run. Grow certainly, but the question is at least in part whether that's at the programmers tools side or on the real business of TeX: typesetting and appropriate tools. -- Joseph Wright