LATEX-L Archives

Mailing list for the LaTeX3 project


Options: Use Forum View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Bruno Le Floch <[log in to unmask]>
Reply To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Thu, 2 Feb 2012 13:24:05 -0500
text/plain (40 lines)
Hello Lars,

The Church Boolean discussion is not forgotten, just on the
back-burner with so many things at the same time. It seemed to bring
some performance improvements, but there were some awkward parts to it
in the way I initially tried to implement them. In your last email on
the topic a few months back, you had a better approach some working
code, which I didn't get to benchmark carefully. I definitely need to
get back to boolean expressions, since at the moment
(...)&&(...)||(...)&&(...) treats && and || with the same priority,
which is wrong. Perhaps that will mean switching to Church booleans,
perhaps not: there are a lot of issues to consider, including
bootstrapping expl3, having a nice interaction with (future) fp
expression, no breaking change, etc.

> PS: Since I'm posting anyway, I suppose I should mention this too in case
> anyone is interested: After my autumn experiments with Church booleans, I
> went on to implement a fully expandable package for <integer> to <balanced
> text> mappings using 2-3-trees. I didn't quite finish it before getting
> sidetracked by other projects (in this case, actual research), but insertion
> of entries is there and works. Next would have been popping off entries;
> together the two would suffice for making a prioriqueue, which I would
> imagine can be useful in places.

I'm interested in what you have to say about 2-3 trees. I implemented
sorting based on splay trees, which I think I will also use for
Unicode character property lookup in l3regex eventually. None of that
code is in the svn yet.

What do you mean by converting one <integer> to a <balanced text>?
Could you give a couple of examples if you have time?

Sorry I didn't get back to you earlier: writing the ~4000 lines of
l3str+l3regex, plus some combined work with Joseph on xparse took me
most of the past 4 months.