1234567891011121314151617181920212223 |
- discard """
- output: "2.0"
- """
- {.warning[TypelessParam]: off.}
- import sugar
- # bug #3329
- proc foldRight[T,U](lst: seq[T], v: U, f: (T, U) -> U): U =
- result = v
- for x in lst:
- result = f(x, result)
- proc mean[T: SomeNumber](xs: seq[T]): T =
- xs.foldRight(0.T, (xBAZ: auto, yBAZ: auto) => xBAZ + yBAZ) / T(xs.len)
- when true:
- let x = mean(@[1.float, 2, 3])
- echo x
|