The language standard
The language standard
Read the definition of the i language by chapter or from the command line.
The language standard is the definition of i. Read its introduction for scope and qualifications, then use the numbered chapters for the rules of a topic. The compiler is still being developed and does not yet implement every rule in the standard.
The command line can show the standard’s version:
i spec --version Version: 1.0; Date: 2026-11-14 Use i spec --toc for the table of contents, i spec 2.1 for a numbered section and its subsections, or i spec --search words to find sections. i spec --help lists the options. The generated pages split the source standard at chapter headings; subsection anchors use the section number.
| Chapter | Subject |
|---|---|
| Introduction | Scope and status of the definition |
| 0 | How to read this document |
| 1 | Words and symbols |
| 2 | Modules |
| 3 | Type syntax |
| 4 | Types |
| 5 | Names and scope |
| 6 | Expressions |
| 7 | Patterns |
| 8 | Bit arrays |
| 9 | Effects |
| 10 | The host boundary |
| 11 | Run-time behavior |
| 12 | Built-in names |
| 13 | The module i/core |
| 14 | Macros and the Lisp surface |
| Appendix A | Choices |
| Appendix B | The binary interface |
| Appendix C | String grammar |