Tracks
/
Elm
Elm
/
Ejercicios
/
Tracks on Tracks on Tracks
Tracks on Tracks on Tracks

Tracks on Tracks on Tracks

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 de la siguiente manera:

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

La forma más común de agregar 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 un array de lenguajes de programación que quieres aprender en Exercism. Tienes seis tareas, y todas tienen que ver con arrays.

1. Crea un array nuevo

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

newList
    --> []

2. Define un array existente

Por ahora tienes una hoja de papel donde anotaste los lenguajes que quieres aprender: Elm, Clojure y Haskell. Define la constante existingList para representar este array.

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

3. Agrega un lenguaje nuevo a un array

A medida que exploras Exercism y encuentras lenguajes más interesantes, quieres agregarlos a tu array. Implementa la función addLanguage para agregar 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 es incómodo. Implementa la función countLanguages para contar cuántos lenguajes 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 en realidad está ordenado al revés. Implementa la función reverseList para invertir tu array.

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

6. Verifica si el array es emocionante

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

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

Implementa la función excitingList para verificar si un array de lenguajes es emocionante:

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

¿Todo listo para empezar Tracks on Tracks on Tracks?

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