Re: guardIfConstant, the constant sniffer combinator

2019-04-11 Thread Remi Forax
- Mail original - > De: "John Rose" > À: "Da Vinci Machine Project" > Cc: "valhalla-dev" > Envoyé: Jeudi 11 Avril 2019 00:08:07 > Objet: Re: guardIfConstant, the constant sniffer combinator > This is very similar to a "growabl

Re: guardIfConstant, the constant sniffer combinator

2019-04-10 Thread John Rose
This is very similar to a "growable switch" combinator, which would call the provider for each distinct selector value. A key difference is that non-constant values go through the fallback, where a "growable switch" doesn't need a fallback, since the provider MH is always free to just return a

guardIfConstant, the constant sniffer combinator

2019-04-10 Thread Remi Forax
The problem is the following, with the java compiler intrinsic of amber, String.format() is optimized using invokedynamic in the case the format (the first argument) is constant (and some other conditions on the format), this is great, perf are like 25x in simple benchmarks, and that all