- Introduction
- User guide
- 1. Getting started
- 1.1. Installing Catala on your machine
- 1.1.1. Linux/Mac/WSL
- 1.1.2. Windows
- 1.1.3. Nightly and development installations
- 1.2. Creating your first Catala program
- 2. Tutorial : computing your taxes
- 2.1. Basic blocks of a Catala program
- 2.1.1. Hands-on exercise
- 2.2. Conditional definitions and exceptions
- 2.3. Lists and scopes
- 2.4. Variable states and dynamic scope calls
- 3. Walkthrough: setting up a Catala project
- 3.1. Directory structure and configuration
- 3.2. Project building and deployment
- 3.3. Test and continuous integration workflow
- 3.4. Agile development with lawyers and programmers
- 4. FAQ: How to code the law?
- 4.1. General questions
- 4.2. Catala-specific questions
- Reference guide
- 5. The Catala language
- 5.1. Literate programming
- 5.2. Types, values and operations
- 5.3. Scopes, functions and constants
- 5.4. Definitions and exceptions
- 5.5. Expressions
- 5.6. Modules
- 5.7. Standard library
- 5.8. Extra features
- 5.8.1. Attributes
- 5.8.2. External modules
- 5.8.3. JSON support
- 6. The clerk build system
- 6.1. Project configuration file
- 6.2. Commands and workflow