**Question**

**Answer**

1 of 6

What is an Elixir Atom?

It is an Elixir data type whose value is its own name.

**Question**

**Answer**

1 of 6

What is an Elixir Atom used for?

They are most often used to indicate the result of an operation either as the first value of a tuple or as a standalone result. `:ok`

is often used to indicate a successful operation or `:error`

if something went wrong.

```
{:ok, result} = some_function()
:ok = some_other_function()
```

**Question**

**Answer**

1 of 6

What is special about the `true`

, `false`

and `nil`

as it relates to atoms?

These are all actually atoms. Elixir allows you to skip typing the colon (:) for these atoms. Ex:

```
true == :true
=> true
nil == :nil
=> true
false == :false
=> true
```

**Question**

**Answer**

1 of 6

If you need to use whole numbers which Elixir data type would you reach for `Integer`

or `Float`

?

`Integer`

. `Float`

is used for fractional numbers.

**Question**

**Answer**

1 of 6

The `Kernel`

and `Integer`

module each define integer functions. What functions does `Kernel`

define?

`abs/1`

, `div/2`

, `min/2`

, `max/2`

, `rem/2`

. These are all arithmetic based functions.

**Question**

**Answer**

1 of 6

What functions does the `Integer`

module define?

`is_env`

and `is_odd`

. These are most often used as Guards in Elixir.

```
Integer.is_even(12)
=> true
Integer.is_odd(12)
=>
```