Internal Explanations
This section contains explanations of rationale of implementation details of Accelerate, explanations of concepts and complex components, and guidelines for contributing to the project.
It is intended to developers who want to contribute to the project. It provides explanations of the rationale behind implementation details and explains complex components and how they work together. For detailed documentation of the classes and how to use them, see the Internal Reference section.
Coding Conventions
This article describes the coding conventions Accelerate uses. Following these conventions makes the code base feel like a consistent whole.
Translating a Program or Library
This article describes the steps that Accelerate takes to translate a program from source code to output or how it translates a library.
Body Elements and Expressions
This article explains the Body and Expression class hierarchies: How to use them, and how to implement subclasses.
Ownership and Lifetimes
Accelerate has complex relationships between its data structures. This article explains the lifetimes and ownership relationships of the main data structures.
Ideas for Later
This article collects ideas for improvements.