3 ms·
I'm the creator of the Odin programming language and I originally tried to approach it by fixing C. And my conclusion was that C could not be fixed. I made my
by gingerBill 1y ago
I'm the creator of the Odin programming language and I originally tried to approach it by fixing C. And my conclusion was that C could not be fixed.
I made my own standard library to replace libc. The lack of safety is hard to do when you don't have a decent enough type system. C's lack of a proper array type is a good example of this.
Before making Odin, I tried making my own C compiler with some extensions, specifically adding proper arrays (slices) with bounds checking, and adding `defer`. This did help things a lot, but it wasn't enough. C still had fundamentally broken semantics in so many places that just "fixing" the problems of C in C was not enough.
I didn't want to make Odin initially, but it was the conclusion I had after trying to fix something that cannot be fixed.
- nasretdinov 1y agoI feel like Odin is the closest to "normal C", especially in its simplicity, which is often undervalued. If C was easily fixable it probably would've been done already anyway...
- bondant 1y agoDo you know if there are some professional games that have been made with Odin and released on steam or on game consoles?
- karl_zylinski 1y agoI (the author of the article) also made a kooky game called CAT & ONION: https://store.steampowered.com/app/2781210/CAT__ONION/ https://store.steampowered.com/app/2781210/CAT__ONION/ It's a short game made in Odin, but I spent a lot of effort in polishing it so that it would be a pleasant little strange experience. It was the first commercial game made in Odin. Some games made by other people: Solar Storm (turn-based artillery game): https://store.steampowered.com/app/2754920/Solar_Storm/ https://store.steampowered.com/app/2754920/Solar_Storm/ 2deez (fighting game, not yet released): https://store.steampowered.com/app/3583000/2Deez/ https://store.steampowered.com/app/3583000/2Deez/
- ghfhghg 1y agoNot a game but the impressive VFX software embergen is written in Odin iirc.
- uecker 1y agoI am quite happy with what you can do with C's types already today: https://godbolt.org/z/njzazY4n6 https://godbolt.org/z/njzazY4n6 This is (almost *) bounds safety with -fsanitize=bounds *) with some pending some compiler improvements it will be perfect (edit: updated godbolt link)