Hacker News new | ask | show | jobs
by nunull 3866 days ago
> head extracts the first element of a list, which must be non-empty.

Those functions operate on lists. I think it should read as follows.

    const head = (xs) => xs[0];
    const last = (xs) => xs[xs.length-1];
    const tail = (xs) => xs.slice(1);
    const init = (xs) => xs.slice(0, -1);
Am I missing something?
1 comments

For some reason, the original author decided the arguments themselves were the "list" to operate on which is indeed a bit weird and non idiomatic.