Template currying
Yuxuan Shui via Digitalmars-d
digitalmars-d at puremagic.com
Thu May 5 23:30:27 PDT 2016
On Friday, 6 May 2016 at 06:26:14 UTC, Yuxuan Shui wrote:
> On Friday, 6 May 2016 at 06:18:22 UTC, Yuxuan Shui wrote:
>> On Thursday, 5 May 2016 at 23:33:07 UTC, Yuxuan Shui wrote:
>>> On Thursday, 5 May 2016 at 23:19:59 UTC, Yuxuan Shui wrote:
>>>> [...]
>>>
>>> See this example:
>>>
>>> int a(alias f)(){return f(3);}
>>> int b(int z, T)(T c){return c;}
>>> void main() {
>>> a!(b!1)();
>>> }
>>>
>>> It'd really nice if this just works, or if there's something
>>> called Curry which I can use like this:
>>>
>>> a!(Curry!(b, 1))
>>
>> Wait, I just realized that this example works in 2.071, but
>> not in 2.068.2. What has changed?
>
> Apply{Left, Right} is add in 2.071 as well, and I didn't see
> them mentioned in the ChangLog...
Oh, sorry, that doesn't work. My mistake.
And ApplyLeft doesn't work for that example either (I thought it
would). Looks like it's a bit more difficult to implement
Curry!() than I thought.
More information about the Digitalmars-d
mailing list