Rutas
/
Elm
Elm
/
Ejercicios
/
Pistas sobre pistas sobre pistas
Pistas sobre pistas sobre pistas

Pistas sobre pistas sobre pistas

Ejercicio de aprendizaje

Introducción

Listas

Una List en Elm es una colección inmutable de cero o más valores del mismo tipo.

Las listas se pueden definir así:

empty = []
singleValue = [ 5 ]
threeValues = [ "a", "b", "c" ]

La forma más común de añadir un elemento a una lista es mediante el operador :: (cons):

twoToFour = [ 2, 3, 4 ]
oneToFour = 1 :: twoToFour --> [ 1, 2, 3, 4 ]

Las listas se manipulan con funciones y operadores definidos en el módulo List o mediante coincidencia de patrones

describe : List String -> String
describe list =
    case list of
        [] ->
            "Empty list"

        [ "hello" ] ->
            "Singleton list with: hello"

        x :: xs ->
            "Non-empty list with head: " ++ x

describe []                   --> "Empty list"
describe [ "hello" ]          --> "Singleton list with: hello"
describe [ "hello", "world" ] --> "Non-empty list with head: hello"

Instrucciones

En este ejercicio vas a escribir código para llevar un registro de los lenguajes de programación que quieres aprender en Exercism. Tienes seis tareas, y todas ellas consisten en trabajar con arrays.

1. Crea un array nuevo

Para llevar un registro de los lenguajes que quieres aprender, necesitarás crear un array nuevo. Define la constante newList, que contiene un array nuevo y vacío.

newList
    --> []

2. Define un array existente

Actualmente tienes un papel en el que has anotado los lenguajes que quieres aprender: Elm, Clojure y Haskell. Define la constante existingList para representar ese array.

existingList
    --> [ "Elm", "Clojure", "Haskell" ]

3. Añade un lenguaje nuevo a un array

A medida que exploras Exercism y encuentras lenguajes más interesantes, quieres añadirlos a tu array. Implementa la función addLanguage para añadir un lenguaje nuevo al principio de tu array.

addLanguage "TypeScript" [ "JavaScript", "CoffeeScript" ]
    --> [ "TypeScript", "JavaScript", "CoffeeScript" ]

4. Cuenta los lenguajes del array

Contar los lenguajes a mano resulta incómodo. Implementa la función countLanguages para contar el número de lenguajes que hay en tu array.

countLanguages [ "C#", "Racket", "Rust", "Ruby" ]
    --> 4

5. Invierte el array

¡En algún momento te das cuenta de que tu array está ordenado al revés! Implementa la función reverseList para invertir tu array.

reverseList [ "Prolog", "C", "Idris", "Assembly" ]
    --> [ "Assembly", "Idris", "C", "Prolog" ]

6. Comprueba si el array te hace ilusión

Aunque te encantan todos los lenguajes, Elm ocupa un lugar especial en tu corazón. Por eso, un array de lenguajes te hace mucha ilusión si:

  • El primer elemento del array es Elm.
  • O el segundo elemento del array es Elm y el array contiene tres lenguajes o menos.

Implementa la función excitingList para comprobar si un array de lenguajes te hace ilusión:

excitingList [ "Nim", "Elm" ]
    --> True
Editar en GitHub El enlace se abre en una ventana o pestaña nueva
Elm Exercism

¿Listo para empezar Pistas sobre pistas sobre pistas?

Regístrate en Exercism para aprender y dominar Elm con 28 conceptos110 ejercicios y mentoría humana real, todo gratis.