• Elixir - Getting Started
  • Elixir - Getting Started
  • 1. Introduction
    • 1.1. Installation
    • 1.2. Interactive mode
    • 1.3. Running scripts
    • 1.4. Asking questions
  • 2. Basic types
    • 2.1. Basic arithmetic
    • 2.2. Booleans
    • 2.3. Atoms
    • 2.4. Strings
    • 2.5. Anonymous functions
    • 2.6. (Linked) Lists
    • 2.7. Tuples
    • 2.8. Lists or tuples?
  • 3. Basic operators
    • 3.1. Operator table
  • 4. Pattern matching.
    • 4.1. The match operator
    • 4.2. Pattern matching
    • 4.3. The pin operator
  • 5. case, cond and if
    • 5.1. case
    • 5.2. Expressions in guard clauses
    • 5.3. cond
    • 5.4. if and unless
    • 5.5. do/end blocks
  • 6. Binaries, strings and char lists
    • 6.1. UTF-8 and Unicode
    • 6.2. Binaries (and bitstrings)
    • 6.3. Char lists
  • 7. Keywords and maps
    • 7.1. Keyword lists
    • 7.2. Nested data structures
    • 7.3. Maps
  • 8. Modules
    • 8.1. Compilation
    • 8.2. Scripted mode
    • 8.3. Named functions
    • 8.4. Function capturing
    • 8.5. Default arguments
  • 9. Recursion
    • 9.1. Loops through recursion
    • 9.2. Reduce and map algorithms
  • 10. Enumerables and Streams
    • 10.1. Enumerables
    • 10.2. Eager vs Lazy
    • 10.3. The pipe operator
    • 10.4. Streams
  • 11. Processes
    • 11.1. spawn
    • 11.2. Links
    • 11.3. send and receive
    • 11.4. Tasks
    • 11.5. State
  • 12. IO and the file system
    • 12.1. The IO module
    • 12.2. The File module
    • 12.3. The Path module
    • 12.4. Processes and group leaders
    • 12.5. iodata and chardata
  • 13. alias, require and import
    • 13.1. alias
    • 13.2. require
    • 13.3. import
    • 13.4. use
    • 13.5. Understanding Aliases
    • 13.6. Module nesting
    • 13.7. Multi alias/import/require/use
  • 14. Module attributes
    • 14.1. As annotations
    • 14.2. As constants
    • 14.3. As temporary storage
  • 15. Structs
    • 15.1. Defining structs
    • 15.2. Accessing and updating structs
    • 15.3. Structs are bare maps underneath
  • 16. Protocols
    • 16.1. Protocols and structs
    • 16.2. Implementing Any
    • 16.3. Built-in protocols
    • 16.4. Protocol consolidation
  • 17. Comprehensions
    • 17.1. Generators and filters
    • 17.2. Bitstring generators
    • 17.3. The :into option
  • 18. Sigils
    • 18.1. Regular expressions
    • 18.2. Strings, char lists and words sigils
    • 18.3. Interpolation and escaping in sigils
    • 18.4. Custom sigils
  • 19. try, catch and rescue
    • 19.1. Errors
    • 19.2. Throws
    • 19.3. Exits
    • 19.4. After
    • 19.5. Variables scope
  • 20. Typespecs and behaviours
    • 20.1. Types and specs
    • 20.2. Behaviours
Powered by GitBook

Elixir - Getting Started

Typespecs and behaviours

  1. Types and specs
    1. Function specifications
    2. Defining custom types
    3. Static code analysis
  2. Behaviours
    1. Defining behaviours
    2. Adopting behaviours