Content deleted Content added
Submitting using AfC-submit-wizard |
Declining submission: v - Submission is improperly sourced and neo - Submission is about a neologism not yet shown to meet notability guidelines (AFCH 0.9.1) |
||
Line 1:
{{AFC submission|d|v|u=Xplane80|ns=118|decliner=Artem.G|declinets=20211121183548|reason2=neo|ts=20211118005047}} <!-- Do not remove this line! -->
{{AFC comment|1=of 9 refs 6 are from odin website, and 2 are youtube videos [[User:Artem.G|Artem.G]] ([[User talk:Artem.G|talk]]) 18:35, 21 November 2021 (UTC)}}
----
{{Short description|Programming language}}
{{Draft topics|software|computing}}
{{AfC topic|other}}
{{Infobox programming language
| name = Odin
Line 17 ⟶ 22:
| platform = [[x86-64]], [[ARM architecture|ARM]], [[WebAssembly]]
| operating system = [[Cross-platform]]
| license = [[BSD_licenses#3-clause|3-clause BSD]].<ref>https://github.com/odin-lang/Odin/blob/master/LICENSE</ref>
| file ext = .odin
| website = {{URL|//odin-lang.org/}}
| influenced by = [[Pascal (programming language)|Pascal]], [[C (programming language)|C]], [[Go (programming language)|Go]], [[Oberon-2]], [[Newsqueak]], [[JAI_(programming_language)|Jai]], [[GLSL]]<ref>https://odin-lang.org/docs/faq/</ref>
}}
'''Odin''' is an [[imperative programming|imperative]], [[General-purpose programming language|general-purpose]], [[statically typed]], [[distinctly typed]], [[compiled programming language|compiled]] [[system programming language]] designed by [[Ginger Bill]]<ref>https://www.youtube.com/watch?v=2YLA4ajby00</ref>
The language is designed for "high performance, modern systems, and built-in [[Data-oriented_design|data-oriented]] data types", supports [[compile-time]] [[parametric polymorphism]], [[Type introspection|runtime reflection]], [[cross-compilation]], [[manual memory management]], [[array programming]], and [[AoS_and_SoA|SOA]] data types.<ref>https://www.youtube.com/watch?v=iCqW_RepcW0</ref><ref>https://odin-lang.org/docs/overview/</ref>
Line 92 ⟶ 97:
</syntaxhighlight>
The language also features "swizzling" of arrays, similar to the operation in shader languages like GLSL.<ref>https://www.khronos.org/opengl/wiki/Data_Type_(GLSL)#Swizzling</ref>
<syntaxhighlight lang="go">
|