Elixir Functions | Table O Contents
Place the introducing line of text ie.) the ‘tagline’ here …
- Elixir Functions | Table O Contents
Note. The Flammarion Logo Badge in the page header above is an .svg image file set to the dimensions of 5% width, auto height, and zoom. Go ahead and test the zoom-out feature by hovering over the badge to engage the expansion of the image from your desktop.
First Subtitle
Hint. Place the intro paragraph ie.) the ‘hypothesis’ here …
More to come …
Anonymous Functions
Assigning (10) to X
Rule. Use dot notation to call an anonymous function, as follows:
iex> anon.(10)
Yields …
iex> 11
Anonymous or Lambda Functions in Elixir
How to Create an Anonymous Function aka a Lambda function in Elixir
From the Elixir inter-active or iex shell`, type the following command:
iex> anon = fn(x) -> × + 1 end
;where anon is the immutable name given the immutable variable or const that references the anonymous function using the fn keyword to designate a function with a single argument of x and the anonymous single-bar fat arrow that points to the work that must be performed anonymously, a simple equation of the given argument x plus the numeral 1 followed by an end command to terminate the process and display the result.
Named Functions
Rule. Use question mark notation to call a named function if the desired result is a boolean true or false only, as follows:
iex> def namedFunc?(y) do
Returns …
iex> TopMod.namedFunc?(y)
Note. Use the command defp when defining and restricting a function to the scope of its module only
Lambda (Anonymous) Functions in Elixir
From the Elixir inter-active or iex shell`, type the following command:
iex> anon = fn(x) -> × + 1 end
Named Functions (two)
Whereas, Named functions are created inside any module.
Modules
A module is a collection of One (1) or more relatable functions.
Defmodule Macro
To assign a name to a module, use the defmodule construct to create a module, as follows:
defmodule TopMod do
Named Functions (dupe)
Rule. Use question mark notation to call a named function if the desired result is a boolean true or false only, as follows:
iex> def namedFunc?(y) do
Returns …
iex> TopMod.namedFunc?(y)
Note. Use the command defp when defining and restricting a function to the scope of its module only
Source Code
Note. Source code in Elixir can be executed from a file established in the src subdirectory of your app.
File Name
Set the file name to the same name as its parent module with either one of two extensions … .ex or .exs
Then, copy the contents of your module into your new ModuleName.ex.
Note. The type of Elixir source code file does differ between .ex and .exs.
How to Create an Anonymous Function aka a Lambda function in Elixir (dupe)
;where anon is the immutable name given the immutable variable or const that references the anonymous function using the fn keyword to designate a function with a single argument of x and the anonymous single-bar fat arrow that points to the work that must be performed anonymously, a simple equation of the given argument x plus the numeral 1 followed by an end command to terminate the process and display the result
Calling Functions
The format or protocol to call a function in Elixir is, as follows:
Module Name.Function Name(Argument)
Note. Try to shy away from calling functions on objects and data and instead get used to calling functions with the module name, as follows:
For example,
greeting = "Hello There"
String.upcase(greeting)
;where greeting is the name of a default immutable variable assigned with the string “Hello There”
;where the built-in module String can be chained via dot notation to expose one or more named functions ie.) upcase to be operated upon with the argument() enclosing the parameter greeting, as follows:
`(greeting)`
Note. Recall the parameter greeting is the name of an immutable variable that points to the contents of greeting ie.) “Hello There”.
Calling Functions (dupe)
The format or protocol to call a function in Elixir is, as follows:
Module Name.Function Name(Argument)
Note. Try to shy away from calling functions on objects and data and instead get used to calling functions with the module name, as follows:
For example,
greeting = "Hello There"
String.upcase(greeting)
;where greeting is the name of a default immutable variable assigned with the string “Hello There”
;where the built-in module String can be chained via dot notation to expose one or more named functions ie.) upcase to be operated upon with the argument() enclosing the parameter greeting, as follows:
`(greeting)`
Note. Recall the parameter greeting is the name of an immutable variable that points to the contents of greeting ie.) “Hello There”.
Jekyll Server
Note. Detailed instructions on how to view this file locally using a Jekyll server are included in the accompanying Gemfile for the project.
In short, type the following command statement from a Terminal window when set to the docs subdirectory.
jekyll serve --watch --baseurl "" -o
Last Subtitle
More to come …
Note. The above synopsis was derived from an article written by Blank Author [1].
Support
Please support the co-workers who aggregate the Source Links for our projects.
Patreon
Like what you see in this project? If so, then support the authors and machine-elves who aggregate the source links and pages for our projects via Patreon.