Zig
Website: ziglang.org
Proiectat de: Andrew Kelley
Paradigme de programare: Multi-paradigm — imperative, concurrent, procedural, functional
Zig este un limbaj imperativ, cu scop general, tipic, compilat, conceput de Andrew Kelley.
Este destinat să fie un înlocuitor al limbajului de programare C, cu obiectivele de a fi și mai mic și mai simplu de programat, oferind, de asemenea, caracteristici moderne, noi optimizări și o varietate de mecanisme de siguranță, în timp ce nu este la fel de solicitantă pentru siguranța în timp, așa cum se vede în altele limbi.
Este distinct de limbi precum GO, Rust și Carbon, care au obiective similare, dar vizează și spațiul C ++.
Îmbunătățirile simplității limbajului se referă la controlul fluxului, apeluri funcționale, importuri de bibliotecă, declarații variabile și suport Unicode.
În plus, limba nu folosește macro -uri sau instrucțiuni de preprocesor.
Caracteristicile adoptate din limbile moderne includ adăugarea de tipuri generice de compilare-timp, permițând funcțiilor să funcționeze la o varietate de date, împreună cu un set mic de noi directive de compilator pentru a permite accesul la informațiile despre aceste tipuri folosind reflecția.
Un alt set de completări la Zig este destinat să îmbunătățească siguranța codului.
La fel ca C, Zig nu include colectarea gunoiului și manipularea memoriei este manuală.
Pentru a ajuta la eliminarea erorilor potențiale care apar în astfel de sisteme, include tipuri de opțiuni și sintaxă simplă pentru utilizarea acestora.
Un cadru de testare este, de asemenea, conceput în limbă.