Implementa operaciones básicas de arrays.
En los lenguajes funcionales, las operaciones de arrays como length, map y reduce son muy comunes.
Implementa una serie de operaciones básicas de arrays, sin usar funciones existentes.
El número exacto y los nombres de las operaciones que debes implementar dependerán del track, para evitar conflictos con nombres existentes, pero las operaciones generales que implementarás incluyen:
append (dados dos arrays, agrega todos los elementos del segundo array al final del primero);concatenate (dada una serie de arrays, combina todos los elementos de todos los arrays en un solo array aplanado);filter (dado un predicado y un array, devuelve el array de todos los elementos para los que predicate(item) es True);length (dado un array, devuelve el número total de elementos que contiene);map (dada una función y un array, devuelve el array de los resultados de aplicar function(item) a todos los elementos);foldl (dadas una función, un array y un acumulador inicial, fold (reduce) cada elemento en el acumulador desde la izquierda);foldr (dadas una función, un array y un acumulador inicial, fold (reduce) cada elemento en el acumulador desde la derecha);reverse (dado un array, devuelve un array con todos los elementos originales, pero en orden inverso).Ten en cuenta que el orden en el que se pasan los argumentos a las funciones fold (foldl, foldr) es importante.
Regístrate en Exercism para aprender y dominar Racket con 84 ejercicios y mentoría humana real, todo gratis.
Disfruta de una introducción práctica a la recursión, explora las alternativas imperativas y funcionales a Operaciones con arrays, y profundiza en la recursión de cola y las funciones acumuladoras.