DevotionGeo
The Odin Programming Language
The Odin programming language is designed with the intent of creating an alternative to C with the following goals:
- simplicity
- high performance
- built for modern systems
- joy of programming
Example Code
package main
import "core:fmt"
main :: proc() {
program := "+ + * đ - /";
accumulator := 0;
for token in program {
switch token {
case '+': accumulator += 1;
case '-': accumulator -= 1;
case '*': accumulator *= 2;
case '/': accumulator /= 2;
case 'đ': accumulator *= accumulator;
case: // Ignore everything else
}
}
fmt.printf("The program \"%s\" calculates the value %d\n",
program, accumulator);
}
Language Features
- Built-in types: strings, array, slices, dynamic arrays, maps, 128-bit integers, endian-specific integers
- Multiple return arguments
- Consistent value declaration syntax
- Parametric polymorphism
-
Compile time conditions (
whenstatements) and stress where there is not full blown compile time execution deferstatementusingstatement- The implicit
contextsystem and memory allocator system - Explicit procedure overloading
(Copied from the homepage).
Most Liked
OvermindDL1
Interesting⌠How does it compare to Zig that seems to have the same goals?
3
DevotionGeo
I didnât use it yet, but the first thing I noticed is syntactical similarity to Go, the short variable declaration operator, defer keyword, absence of parenthesis around conditions in conditionals, even names of the packages and methods like fmt.printf.
3
kokolegorille
I also thought it looked like go
How to choose between go, rust or zig? 
3
Popular General Dev topics
A thread that every forum needs!
Simply post a link to a track on YouTube (or SoundCloud or Vimeo amongst others!) on a separate line an...
New
:smiling_imp:
What is your preferred syntax style and why?
Perhaps we can add examples and use the code below as a simple reference poi...
New
No chair. I have a standing desk.
This post was split into a dedicated thread from our thread about chairs :slight_smile:
New
Hello! Itâs Jay Wengrow, author of A Common-Sense Guide to Data Structures and Algorithms. My book now has a supplemental website, where ...
New
TLDR
Hacking 30 Mobile Apps and their APIs with consent of some of the major providers in the area.
100% success rate in hacking the AP...
New
What shell(s) do you use, why do you use them, and how do you have them configured?
Note, this is about shellâs, not terminals, terminal...
New
Hello Fellow developers,
I have been trying to wrap my head around How difficult would it have been to be a dev 20-30 years ago?
I have...
New
Not trying to add more mess here but, reddit has ELI5 but i wanted to know if itâs okay to ask Elixir-specific (or outside of it) in a si...
New
Chris Seaton, the creator of TruffleRuby has died. It appears from suicide :cry:
He left this note on Twitter on the weekend:
And one...
New
Iâm developing a web-based application that uses Java servlets to make RPC calls.
Iâm searching for a solid technique to dispatch and ha...
New
Other popular topics
Reading something? Working on something? Planning something? Changing jobs even!?
If youâre up for sharing, please let us know what youâ...
New
Machine learning can be intimidating, with its reliance on math and algorithms that most programmers don't encounter in their regular wor...
New
Free and open source software is the default choice for the technologies that run our world, and itâs built and maintained by people like...
New
I am asking for any distro that only has the bare-bones to be able to get a shell in the server and then just install the packages as we ...
New
In case anyone else is wondering why Ruby 3 doesnât show when you do asdf list-all ruby :man_facepalming: do this first:
asdf plugin-upd...
New
Oh just spent so much time on this to discover now that RancherOS is in end of life but Rancher is refusing to mark the Github repo as su...
New
zig/http.zig at 7cf2cbb33ef34c1d211135f56d30fe23b6cacd42 ¡ ziglang/zig.
General-purpose programming language and toolchain for maintaini...
New
Will Swiftiesâ war on AI fakes spark a deepfake porn reckoning?
New
Iâm able to do the âartisticâ part of game-development; character designing/modeling, music, environment modeling, etc.
However, I donât...
New
If youâre getting errors like this:
psql: error: connection to server on socket â/tmp/.s.PGSQL.5432â failed: No such file or directory ...
New
Categories:
Sub Categories:
- All
- In The News (11197)
- Dev Chat
- Questions (36)
- Resources (122)
- Blogs/Talks (27)
- Jobs (3)
- Events (15)
- Code Editors (59)
- Hardware (60)
- Reviews (5)
- Sales (16)
- Design & UX (5)
- Marketing & SEO (2)
- Industry & Culture (14)
- Ethics & Privacy (19)
- Business (4)
- Learning Methods (7)
- Content Creators (7)
- DevOps & Hosting (12)
Popular Portals
- /elixir
- /rust
- /wasm
- /ruby
- /erlang
- /phoenix
- /keyboards
- /python
- /js
- /rails
- /security
- /go
- /swift
- /vim
- /java
- /clojure
- /emacs
- /haskell
- /typescript
- /svelte
- /onivim
- /kotlin
- /c-plus-plus
- /crystal
- /tailwind
- /react
- /gleam
- /ocaml
- /elm
- /flutter
- /vscode
- /html
- /ash
- /deepseek
- /zig
- /opensuse
- /centos
- /php
- /scala
- /react-native
- /lisp
- /sublime-text
- /textmate
- /nixos
- /debian
- /agda
- /deno
- /django
- /kubuntu
- /nodejs
- /arch-linux
- /ubuntu
- /spring
- /revery
- /manjaro
- /lua
- /julia
- /diversity
- /quarkus
- /laravel









