
Elixir Language
Since
2012
- Present
Elixir is unique for combining the scalability and concurrency of Erlang with an expressive syntax, metaprogramming, and excellent tooling, making it ideal for building distributed systems.
Learn It
- – Getting Started with Elixir hexdocs.pm
- – Introduction to Mix & OTP hexdocs.pm
- – Metaprogramming hexdocs.pm
- – Naming Convetions hexdocs.pm
- – Typespec Reference hexdocs.pm
- – Protocols hexdocs.pm
- – Anti-Patterns hexdocs.pm
- – Enum Cheatsheet hexdocs.pm
- – Library Guidelines hexdocs.pm
- – The BEAM Book blog.stenmans.org
- – BEAM Wisdoms beam-wisdoms.clau.se
- – Erlang's Not About Processes & Messaging stevana.github.io
Secure It
- – Secure Coding and Deployment Hardening Guidelines security.erlef.org
- – Web Application Security Best Practices for BEAM languages security.erlef.org
- – Exposed EPMD: A Hidden Security Risk for RabbitMQ and the BEAM Ecosystem erlef.org
- – Erlang distribution RCE and a cookie bruteforcer insinuator.net
- – Erlang distribution weaknesses and tooling github.com
- Current Release Elixir 18
- Official Pages Elixir Site Docs Kernel Docs Logger Docs ExUnit Docs EEx Docs IEx Docs ExDoc On Wikipedia
- Tools mix (build) hex (pm)
- Repository github.com/elixir-lang
- Forums Elixir Forum /r/elixir
- Learn Elixir Books Joe's Paper Robert's Paper
-
Selected Videos
Security & QA Tools
MixAudit
Scan projects for known Elixir security vulnerabilities.
Dialyxir
Static analysis tool that identifies software discrepancies.
Credo
Static analysis tool focused on code consistency and teaching.
Sobelow
Security-focused static analysis for the Phoenix Framework.
ex_check
Run multiple code analysis & testing tools in a single step.
Functionality
1.
Core
#
Explore Elixir's standard library modules such as Kernel, Enum, List, File and more.
2.
Documentation
#
Generate documentation for Elixir projects.
3.
Logging
#
Track the events of interest that occurr in your systems using the logging functionality.
4.
Testing
#
Write tests for your systems using the unit testing framework for Elixir.
5.
Templating
#
The embedded Elixir allows you to embed Elixir code inside a
string in a robust way.
6.
Interactive Shell
#
Elixir's interactive shell allows you to run Elixir code interactively.
Core :: Standard Library
Kernel
Data Types
Processes & Applications
Protocols
Code & Macros
Exceptions
- ArgumentError
- ArithmeticError
- BadArityError
- BadBooleanError
- BadFunctionError
- BadMapError
- BadStructError
- CaseClauseError
- Code.LoadError
- CompileError
- CondClauseError
- Enum.EmptyError
- Enum.OutOfBoundsError
- ErlangError
- File.CopyError
- File.Error
- File.LinkError
- File.RenameError
- FunctionClauseError
- IO.StreamError
- Inspect.Error
- JSON.DecodeError
- Kernel.TypespecError
- KeyError
- MatchError
- MismatchedDelimiterError
- MissingApplicationsError
- OptionParser.ParseError
- Protocol.UndefinedError
- Regex.CompileError
- RuntimeError
- SyntaxError
- System.EnvError
- SystemLimitError
- TokenMissingError
- TryClauseError
- URI.Error
- UndefinedFunctionError
- UnicodeConversionError
- Version.InvalidRequirementError
- Version.InvalidVersionError
- WithClauseError