Zig linguaggio di programmazione | |
---|---|
Autore | Andrew Kelley |
Data di origine | 8 febbraio 2016[1] |
Ultima versione | 0.13.0 (6 giugno 2024) |
Utilizzo | general purpose |
Paradigmi | imperativo procedurale, funzionale |
Tipizzazione | statica, forte |
Estensioni comuni | .zig |
Influenzato da | C, C++, LLVM IR, Go, Rust, JavaScript |
Implementazione di riferimento | |
Licenza | Licenza MIT |
Sito web | ziglang.org/ |
Zig è un linguaggio di programmazione imperativo general purpose.
Ideato come alternativa moderna al C[2][3][4][5][6][7] e parzialmente ispirato a Rust,[8][9] Zig include diverse funzionalità a basso livello (come puntatori,[10] packed structs, interi di dimensione arbitraria[11]). Zig è un linguaggio compilato e fa uso di tipizzazione statica, con inferenza di tipi, tipi generici, e riflessione.[12]
Il compilatore Zig è software libero distribuito sotto licenza MIT.[13] È un compilatore self-hosting, essendo implementato in Zig e C++, e usa LLVM come back-end.[14][15][16][17] Il compilatore Zig permette anche la generazione di codice C e C++[18] (Nim supporta l'uso di Zig come back-end per la generazione di codice in questi linguaggi).[19]
<ref>
: non è stato indicato alcun testo per il marcatore note1
<ref>
: non è stato indicato alcun testo per il marcatore note3
<ref>
: non è stato indicato alcun testo per il marcatore note4
<ref>
: non è stato indicato alcun testo per il marcatore note5
<ref>
: non è stato indicato alcun testo per il marcatore note6
<ref>
: non è stato indicato alcun testo per il marcatore note8
<ref>
: non è stato indicato alcun testo per il marcatore note9
<ref>
: non è stato indicato alcun testo per il marcatore note10
<ref>
: non è stato indicato alcun testo per il marcatore note11
<ref>
: non è stato indicato alcun testo per il marcatore note13
<ref>
: non è stato indicato alcun testo per il marcatore note12
<ref>
: non è stato indicato alcun testo per il marcatore note7
<ref>
: non è stato indicato alcun testo per il marcatore note18
<ref>
: non è stato indicato alcun testo per il marcatore note14
<ref>
: non è stato indicato alcun testo per il marcatore note15
<ref>
: non è stato indicato alcun testo per il marcatore note16
<ref>
: non è stato indicato alcun testo per il marcatore note17
<ref>
: non è stato indicato alcun testo per il marcatore note19
<ref>
: non è stato indicato alcun testo per il marcatore note20