import { curry } from '@typed/lambda'
/**
* Take `n` number of values from the beginning of a list
* @param n :: int
* @param list :: [a]
* @returns :: [a]
*/
export const take = curry((n: number, list: ReadonlyArray) =>
list.slice(0, n < 0 ? Infinity : n),
) as {
(n: number, list: ReadonlyArray): A[]
(n: number): (list: ReadonlyArray) => A[]
}