Odin
Una alternativa a C que enfatiza el diseño orientado a datos, el flujo de control explícito y la simplicidad.
27 pasos en 1 tours, desde lo básico hasta programas completos.
Los tours
- Primera versión
- 2016
- Creado por
- Bill Hall (gingerBill)
- Tipado
- Estático y explícito; tres operadores de declaración llevan la conversación
- Los fragmentos siguen
- dev-2026-02
- Extensiones de archivo
- .odin
Para qué sirve
Odin es un lenguaje de sistemas moldeado por el trabajo de gráficos en tiempo real: orientado a datos por temperamento, compatible con C por diseño y pragmático sobre lo que la gente de juegos y herramientas de verdad usa. Los arreglos fijos soportan swizzle como el código de shaders, las matrices vienen en el lenguaje, los bit_set son de primera clase, y la colección vendor trae bindings de raylib, SDL, Vulkan y compañía en la caja.
El lenguaje conserva la legibilidad de Go sin recolector de basura: una sola palabra de bucle, errores como valores explícitos en vez de excepciones, y ningún flujo de control oculto en ninguna parte. La memoria se maneja a través de un context implícito que cada procedimiento carga consigo — cambia el allocator en un solo punto y todo lo que cuelga debajo lo sigue, con un allocator temporal para borradores que barres de una vez.
El usuario insignia es JangaFX, cuyo EmberGen — VFX volumétrico en tiempo real, usado en estudios de cine y juegos — está escrito en Odin; el diseñador del lenguaje trabaja ahí, y el lenguaje se templa con esa presión de producción. Es un mundo más chico que el de Rust o Go, pero enfocado: gente que construye software interactivo y quiere la franqueza de C sin su ceremonia.
De dónde viene
Bill Hall — gingerBill — empezó Odin en julio de 2016, al principio como demostración de que un C mejor era posible sin volverse C++. Las influencias tempranas se ven y se reconocen: la claridad de Pascal, la ortografía de Go, la contención de Wirth y la cultura de diseño orientado a datos del desarrollo de juegos, antes que la cultura de abstracción del software empresarial.
El lenguaje creció en público a través de años de lanzamientos dev mensuales y constantes en vez de ceremonia de versiones, con el compilador autocontenido sobre LLVM y una biblioteca estándar partida en core (estructuras de datos, algoritmos, SO) y vendor (bindings de terceros curados). El sistema de context, los tipos distinct y los grupos de procs explícitos llegaron como respuestas deliberadas a los filos de C.
JangaFX construyó EmberGen sobre Odin desde 2019, dándole al lenguaje un ancla comercial y a su diseñador un trabajo diario que lo pone a prueba. El Odin de hoy sigue pre-1.0 en el número pero probado en producción en la práctica, con una comunidad que valora que el lenguaje quepa entero en una sola cabeza.
Cómo se siente teclearlo
Odin se teclea alrededor de sus tres operadores de declaración: := para declarar e inferir, un : solo para declarar con tipo, y :: para atar constantes y procedimientos por igual — el doble dos puntos cae todo el tiempo. Las llaves son a lo Go y sin puntos y comas, case no necesita break, y los identificadores corren en snake_case con tipos en PascalCase. Los racimos característicos son :: y := y el .Nombre de los enums implícitos; el resto son palabras minúsculas a ritmo parejo con los verbos de porcentaje de core:fmt en las cadenas.
27 pasos en 1 tours, desde lo básico hasta programas completos.