static map as a type function
H. S. Teoh
hsteoh at quickfur.ath.cx
Thu Sep 24 05:38:07 UTC 2020
On Thu, Sep 24, 2020 at 03:04:46AM +0000, Stefan Koch via Digitalmars-d wrote:
> On Thursday, 24 September 2020 at 02:42:00 UTC, Paul Backus wrote:
> > On the other hand, if you can fix recursive template bloat somehow
> > (tail-call elimination?), you get good performance *and* nice code.
> > It's the best of both worlds.
> good performance yes.
> But where is the nice code, when you are confined to recursive
What we need is imperative syntactic sugar that lowers to recursive
templates under the hood. (After all, in theory, every Turing-complete
language is just syntactic sugar over lambda calculus. :-P)
That, plus implement template optimization schemes to lower the cost of
recursive templates. The template analogue of tail-call optimization is
a good first step, for example. Another good direction to investigate
is instantiation elimination: i.e., defer the actual instantiation of a
template (with its associated costs of copying the AST and substituting
arguments, generating symbols, etc.) until it's determined to be
Many open minds should be closed for repairs. -- K5 user
More information about the Digitalmars-d