On Saturday, 21 May 2016 at 08:57:57 UTC, Johan Engelen wrote:
On Saturday, 21 May 2016 at 06:18:05 UTC, poliklosio wrote:
I have an Idea of reproducible, less-than-exponential time
mangling, although I don't know how actionable.
Leave mangling as is, but pretend that you are mangling
something different, for example when the input is
foo!(boo!(bar!(baz!(int))), bar!(baz!(int)), baz!(int))
pretend that you are mangling
foo!(boo!(bar!(baz!(int))), #1, #2)
Where #1 and #2 are special symbols that refer to stuff that
was **already in the name**, particularly:
#1: bar!(baz!(int))
#2: baz!(int)
See
http://forum.dlang.org/post/szodxrizfmufqdkpd...@forum.dlang.org
So if I understand correctly, you tried implementing something
like this, but it didn't help much even with size of mangled
names. Are you sure you were testing on the pathological case
(exponential stuff), rather than a bad one? Assuming your
experiment is correct, something interesting is happening, and I
will be observing you guys finding out what it is. :)