Lesson 9 of 16

Modules & Functions

defmodule

Elixir code is organized into modules. Use defmodule to define one:

defmodule Math do
  def square(x) do
    x * x
  end
end

IO.puts(Math.square(4))   # 16

Named Functions

def defines a public function inside a module. You call it with Module.function().

Short functions can use the inline do: syntax:

defmodule Math do
  def cube(x), do: x * x * x
end

IO.puts(Math.cube(3))   # 27

Your Turn

Define a Math module with:

  1. square(x) — returns x squared
  2. cube(x) — returns x cubed

Print Math.square(4) → 16 and Math.cube(3) → 27

JS Transpiler loading...
Loading...
Click "Run" to execute your code.