- Odin é uma linguagem de programação que vem evoluindo há 10 anos desde seu primeiro commit em 2016, e está preparando sua primeira versão estável oficial com o nome Odin 2027
- O principal critério para o lançamento oficial é uma especificação completa da linguagem seguida pelo compilador, definida como uma condição inegociável para o Odin 2027
- Os recursos previstos incluem assembly inline, pacote HTTP, suporte a TLS, biblioteca core Objective-C, suporte a iOS e Android, melhorias no pacote de imagens e um pacote para leitura/escrita de zip
- O cronograma mira um Release Candidate no Natal de 2026 e o lançamento oficial em janeiro de 2027, mantendo o fluxo atual de releases nightly e monthly
- Até o lançamento oficial, o foco será em estabilidade, fortalecimento da biblioteca core, conformidade com a especificação e incorporação de relatórios de bugs, em vez de grandes novos recursos
Roteiro para o Odin 2027
- Desde o primeiro commit em 2016, Odin cresceu ao longo de 10 anos: começou como um projeto de hobby e passou a ser usado em software comercial da JangaFX, como linguagem principal em várias empresas e em jogos lançados no Steam
- O primeiro lançamento oficial, equivalente à versão 1.0, usará o nome Odin 2027
- Em vez do tradicional
1.0, foi escolhido um esquema de nomenclatura baseado em datas - Versões baseadas em datas facilitam perceber rapidamente há quanto tempo a versão em uso está desatualizada
- A ideia é oferecer atualizações mais regulares, mantendo o cronograma atual de releases nightly e monthly
- Em vez do tradicional
- O requisito essencial para o lançamento oficial é uma especificação completa
- O compilador deve seguir essa especificação
- Isso foi definido como um item inegociável para o Odin 2027
Recursos previstos e cronograma de lançamento
- Para usuários que precisam de controle de baixo nível, será adicionado assembly inline
- Isso permitirá controle preciso sobre a geração de código de máquina dentro do Odin
- A biblioteca core será expandida para ampliar o escopo do que vem incluído por padrão
- O aguardado pacote HTTP será incluído
- Suporte a TLS também será oferecido, e o suporte a TLS escrito nativamente será adicionado após o lançamento principal
- Para usuários Apple, uma biblioteca core Objective-C será trazida nativamente para dentro do Odin
- Suporte a iOS e Android também será incluído
- Serão adicionadas melhorias ao pacote de imagens e um pacote com suporte a leitura/escrita de arquivos zip
- O cronograma tem como meta um Release Candidate no Natal de 2026 e o lançamento oficial em janeiro de 2027
- Até lá, o foco será na estabilização, em vez de inserir grandes novos recursos de última hora
- Fortalecimento da biblioteca core
- Conformidade com a especificação
- Validação dos itens do roteiro
- Testes por meio de builds monthly e nightly e incorporação de relatórios de bugs
- O vídeo completo foi editado no futuro editor de vídeo Blick, escrito em Odin
1 comentários
Opiniões no Lobste.rs
Dei uma mexida rápida, e Odin é uma daquelas linguagens que vão ficando mais agradáveis quanto mais você usa.
É raro uma linguagem equilibrar tão bem pragmatismo e design cuidadoso; entre as linguagens recentes, parece que muitas ficam devendo em um dos dois, ou ficam presas a um recurso específico, ou acabam meio indefinidas ao tentar implementar “tudo”.
O gingerBill também é muito bom em expressar seu raciocínio por trás das decisões, e pessoalmente acho que essa é uma habilidade que eu preciso muito desenvolver mais.
Quando vi Odin pela primeira vez, alguns anos atrás, pensei: “uau, parece Go sem as coisas que eu odeio em Go”, mas as pessoas ao meu redor diziam que era só mais uma linguagem pretensiosa e que não duraria, então eu deveria ignorá-la.
Fico muito feliz que todo mundo estivesse errado, e agora estou animado para experimentar por conta própria.
Odin já vinha sendo bastante estável havia alguns anos, então é ótimo ver Bill e a equipe finalmente caminhando para a 1.0.
Isso serve como o sinal necessário de que ela é adequada para uso em produção quando grandes empresas avaliam alternativas.
Com isso, o nível também sobe para outros projetos em desenvolvimento da família C, como Jai, C3, Zig, Hare.
Hoje em dia, criadores de linguagens parecem conseguir transmitir com bastante clareza, por meio da mídia ao redor, a sensação de conviver com seu produto.
Gleam, seu ecossistema e suas notas de versão são atraentes e acessíveis; Zig é uma linguagem sensata e pouco pretensiosa, e as entrevistas do u/andrewrk passam uma impressão parecida.
Ainda não experimentei Odin, mas só por esse vídeo dá para esperar que seja uma linguagem que mantenha um alto padrão de produto e entregue resultados satisfatórios.
Nunca usei Odin, mas depois de ver o vídeo fiquei com vontade de tentar.
A biblioteca padrão é quase “batteries included”, e eles também vendorizam muitas ferramentas de alta qualidade que as pessoas usam.
Eu não pretendia usá-la por muito tempo, mas acabei ficando um bom período com ela; para algo “pré-1.0”, é bastante estável.
Um carisma enorme.
Eu já vinha acompanhando Odin havia um tempo, e acho que vou brincar um pouco com ela daqui para frente.
É curioso como o livro de Pascal aparece bem destacado no vídeo.
Pela sintaxe, não parece tanto, mas sempre enxerguei Odin como uma linguagem da família Pascal.
Na verdade, no comecinho de Odin, ela ficou assim por cerca de uma semana.
É interessante como muita gente julga uma linguagem quase só pela sintaxe de declaração. Mesmo que essa forma sintática específica tenha pouquíssimo impacto na semântica, ela pode atrair as pessoas ou afastá-las completamente.
Pessoalmente, acho que o uso de
:e=em Odin é o mais conciso e confortável entre as alternativas. Mas, por não ser o formato mais comum, pode afastar algumas pessoas que estranham.