5 ms·
> feels like a proper 21st century C language with Wirth's design ethos. While Odin is a modern and capable language, it belongs to the "C-alternative" school
by Rochus 10mo ago
> feels like a proper 21st century C language with Wirth's design ethos.
While Odin is a modern and capable language, it belongs to the "C-alternative" school (alongside Zig) rather than the "Wirthian" school (Pascal, Modula-2, Oberon). Odin, by design, retains manual memory management and allows pointer arithmetic. Oberon has a GC and very restricted pointer use. Odin's "joy" and "practicality" come from adding many features that Wirth would have considered "unnecessary complexity".
- kazinator 10mo agoISO Modula 2 has manual allocation and deallocation: NEW and DISPOSE. The ISO module SYSTEM provides pointer arithmetic with "ADR" manipulation. Argubly, though, ISO Modula 2 is not exactly a Wirthian language any more but "Standardian".
- AnimalMuppet 10mo agoEven Pascal had a way of allocating things on the heap, though I forget the syntax.
- leecommamichael 10mo agoI see what you're saying, and it's true that C's design guides Odin's in a large way. A more precise way to word things may have been "inspired by" rather than "with" Wirth's design ethos. In Odin's case, I do think there's quite a lot of design area reduced in not having a GC, which is no small amount of complexity to skip.