programming:elixir:hello_world
This is an old revision of the document!
Table of Contents
Hello world !
IO.puts("Hello world!") # Same as IO.puts but do not add a new line at the end IO.write("Hello world !")
Interactive Elixir Session
iex
Help
h
Kernel is Elixir's default environment
In Elixir, (almost) everything is a function
Reading values
name = IO.gets("Salut, comment tu t'appelles ? ") IO.write("Salut " <> name)
Atom
An atom type represents a fixed constant. The atom value is simply its own name.
# All atoms are preceded with a : variable = :an_atom
Cond
Cond follows the first path that evaluates to true. If no path evaluates to true, an error is raised by the runtime.
cond do x > 10 -> :this_might_be_the_way y < 7 -> :or_that_might_be_the_way true -> :this_is_the_default_way end
_ (Underscore)
When there is a _ instead of a variable or a value, it means the value will be ignored and any value will be accepted
{_, denominator} = Float.ratio(0.25) # => {1, 4} # the variable `denominator` is bounded to the value 4
[1, _, 3] = [1, "toto", 3] # => [1, "toto", 3]
For
number = IO.gets("Salut, entre un nombre : ") |> String.trim() |> String.to_integer() for i <- 1..number do IO.puts("#{i}") end
In elixir, values are not modified. Values are transformed on output.
Example :
name = "Toto" if (name == "Toto") do IO.puts("Inside condition before name being changed: " <> name) name = "Robin" IO.puts("Inside condition after name being changed: " <> name) end IO.puts("Outside condition after name being changed: " <> name)
Output :
Inside condition before name being changed: Toto Inside condition after name being changed: Robin Outside condition after name being changed: Toto
Example with date :
d1 = ~D[2023-04-25] IO.puts(d1) IO.puts(Date.add(d1, 5)) IO.puts(d1)
Output :
2023-04-25 2023-04-30 2023-04-25
programming/elixir/hello_world.1682515599.txt.gz · Last modified: 2023/04/26 13:26 by ateixeira