Appendix E: Links and references
Every external link used across the book, grouped, plus credits.
Odin (official)
- Home: https://odin-lang.org/
- Install guide: https://odin-lang.org/docs/install/
- Language overview: https://odin-lang.org/docs/overview/
- FAQ: https://odin-lang.org/docs/faq/
- Package/core-library docs: https://pkg.odin-lang.org/
core:fmt: https://pkg.odin-lang.org/core/fmt/core:os: https://pkg.odin-lang.org/core/os/core:bufio: https://pkg.odin-lang.org/core/bufio/core:strings: https://pkg.odin-lang.org/core/strings/core:strconv: https://pkg.odin-lang.org/core/strconv/core:math/rand: https://pkg.odin-lang.org/core/math/rand/core:slice: https://pkg.odin-lang.org/core/slice/core:unicode/utf8: https://pkg.odin-lang.org/core/unicode/utf8/core:sys/windows: https://pkg.odin-lang.org/core/sys/windows/base:runtime(part of the overview and package docs above)or_returnand multiple return values: https://odin-lang.org/docs/overview/#or_returnwhenconditional compilation: https://odin-lang.org/docs/overview/#when-statement- Dynamic arrays: https://odin-lang.org/docs/overview/#dynamic-arrays
- Maps: https://odin-lang.org/docs/overview/#maps
- GitHub: https://github.com/odin-lang/Odin
olslanguage server: https://github.com/DanielGavin/ols
Terminal and text references
- ANSI escape code (Wikipedia, credited; no single official source exists for the de facto VT100/ANSI subset terminals implement): https://en.wikipedia.org/wiki/ANSI_escape_code
- Unicode box-drawing character block (Wikipedia, credited): https://en.wikipedia.org/wiki/Box-drawing_character
Going deeper on Odin
- Understanding the Odin Programming Language by Karl Zylinski: https://odinbook.com/, the book to read next for the whole language, well past my deliberately gentle scope here.
Sibling volumes
- Yo Odin: https://nofuss.co.za/yo_odin/, the same house style, building a WebAssembly arcade game from scratch down to the browser boundary.
- Odin't Know That: https://nofuss.co.za/odint_know_that/, the same house style, building a native desktop game with
vendor:raylib.
Both are the natural next step once you've finished this book and want to add graphics, sound and a real-time loop to what you now know.
Credits
Thanks to Ginger Bill and the Odin community for the language I wrote this book about.