35 lines
1.2 KiB
Markdown
35 lines
1.2 KiB
Markdown
|
# Hints
|
||
|
|
||
|
## General
|
||
|
|
||
|
- Use the built-in [(linked) list type][list].
|
||
|
|
||
|
## 1. Define a function to return an empty language list
|
||
|
|
||
|
- The function needs to return `[]`.
|
||
|
|
||
|
## 2. Define a function to add a language to the list
|
||
|
|
||
|
- An element can be prepended to a list using `|`.
|
||
|
|
||
|
## 3. Define a function to remove a language from the list
|
||
|
|
||
|
- Elixir [provides a function][tl] to return a list with the first item removed.
|
||
|
|
||
|
## 4. Define a function to return the first item in the list
|
||
|
|
||
|
- Elixir [provides a function][hd] to get the first item from a list.
|
||
|
|
||
|
## 5. Define a function to return how many languages are in the list
|
||
|
|
||
|
- Elixir [provides a function][length] to count the length of a list.
|
||
|
|
||
|
## 6. Define a function to determine if the list includes a functional language
|
||
|
|
||
|
- Your function should return a boolean value indicating whether `"Elixir"` is a member of the list. Elixir [provides a function][in] to test list membership.
|
||
|
|
||
|
[list]: https://elixir-lang.org/getting-started/basic-types.html#linked-lists
|
||
|
[hd]: https://hexdocs.pm/elixir/Kernel.html#hd/1
|
||
|
[tl]: https://hexdocs.pm/elixir/Kernel.html#tl/1
|
||
|
[length]: https://hexdocs.pm/elixir/Kernel.html#length/1
|
||
|
[in]: https://hexdocs.pm/elixir/Kernel.html#in/2
|