- 1. Introduction
- 1.1. Quick start
- 2. Basics
- 2.1. Comments
- 2.2. Booleans and numbers
- 2.3. Strings
- 2.4. Tuples and lists
- 2.5. Assignments
- 2.6. Pattern matching
- 2.7. Functions
- 2.8. Result and optional types
- 2.9. Expression blocks
- 2.10. Panic and assert
- 2.11. Custom types
- 2.12. Modules and imports
- 2.13. Generics
- 3. Advanced Gleam
- 3.1. Todo
- 3.2. Bit strings
- 3.3. Escape sequences
- 3.4. Tail call optimisation
- 3.5. Phantom types
- 3.6. Labelled arguments
- 3.7. Labelled fields
- 3.8. Dict
- 3.9. Pairs
- 3.10. Sets
- 3.11. Option
- 3.12. Order
- 3.13. Iterators
- 3.14. Opaque types
- 3.15. Queue
- 3.16. Erlang and Javascript interop
- 3.17. Testing and gleeunit
- 3.18. Bytes and string builders
- 3.19. Base64
- 3.20. Regex
- 3.21. URI
- 4. Ecosystem
- 4.1. Installing custom packages
- 4.2. Creating and publishing a package
- 4.3. Gleam docker images
- 4.4. IO: simplifile
- 4.5. Filepath: filepath
- 4.6. Ranges: ranger
- 4.7. Datetime: birl
- 4.8. Ad-hoc error type: snag
- 4.9. Json: gleam_json
- 4.10. Cryptography: gleam_crypto