import { curry } from '@typed/lambda' /** * Slice chunks out of a list * @param from :: int * @param to :: int * @param list :: [a] * @returns :: [a] */ export const slice = curry((from: number, to: number, list: ArrayLike): A[] => Array.from(list).slice(from, to), ) as { (from: number, to: number, list: ArrayLike): A[] (from: number, to: number): (list: ArrayLike) => A[] (from: number): { (to: number, list: ArrayLike): A[] (to: number): (list: ArrayLike) => A[] } }