I'm making a calendar (basically improvements to
https://wiki.dlang.org/Component_programming_with_ranges) and I'm
getting a lot of `cannot deduce function from argument types`
errors when using range-based mapping code.
Here's my current code: https://pastebin.com/TqAkggEw
My testing: `rdmd --eval='import calendar; dateList!(a => a.year
> 2013)(2013).chunkBy!myMonth.chunks(3).map!(r =>
r.map!formatMonth.array().blockMonths("
").join("\n")).join("\n\n").writeln();'`
My errors:
```
template std.array.array cannot deduce function from argument
types !()(MapResult!(formatMonth, Take!(ChunkByImpl!(myMonth,
Until!(__lambda2, Recurrence!(__lambda2, Date, 1LU), void),
candidates are:
std.array.array(Range)(Range r) if (isIterable!Range &&
!isNarrowString!Range && !isInfinite!Range)
std.array.array(Range)(Range r) if (isPointer!Range &&
isIterable!(PointerTarget!Range) && !isNarrowString!Range &&
!isInfinite!Range)
std.array.array(String)(scope String str) if
(isNarrowString!String)
instantiated from here: MapResult!(__lambda3,
Chunks!(ChunkByImpl!(myMonth, Until!(__lambda2,
Recurrence!(__lambda2, Date, 1LU), void
instantiated from here: map!(Chunks!(ChunkByImpl!(myMonth,
Until!(__lambda2, Recurrence!(__lambda2, Date, 1LU), void
```
Please, can you get this code to work?
The commented out function formatYear needs to work properly. The
rdmd command-line simply emulates it.