In part of our ongoing alternative game development programming languages series, today we are looking at the ODIN programming language. ODIN is a low level data oriented programming language inspired by PASCAL and C with many features making it ideal for game development. The ODIN language is an open source development released under the BSD-3 license. The core principles of the ODIN programming language are:
- Simplicity and readability
- Minimal: there ought to be one way to write something
- Striving for orthogonality
- Programs are about transforming data into other forms of data
- Code is about expressing algorithms—not the type system
- There is embedded knowledge and wisdom in older programming languages
- The entire language specification should be possible to be memorized by a mere mortal
One of the key advantages of the ODIN language for game developers is that out of the box it has bindings for all major graphics APIs including OpenGL, Vulkan, WebGL and DirectX 11 & 12. Additionally several popular game development frameworks such as SDL and RayLib have ODIN bindings as well. Another game development friendly aspect of ODIN is your fine tune control over both memory allocation and layout. Another impressive aspect of the ODIN language is, unlike many alternative languages, it does have one major shipped piece of commercial software, the Real-Time Fluid simulation software EmberGEN, developed using it.
You can learn more about the ODIN programming language in the video below.