An Entity of Type: language, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

Zig is an imperative, general-purpose, statically typed, compiled system programming language designed by Andrew Kelley. The language is designed for "robustness, optimality and maintainability", supporting compile-time generics, reflection and evaluation, cross-compilation and manual memory management. A major goal of the language is to improve upon the C language, while also taking inspiration from Rust, among others. Zig has many features for low-level programming, notably packed structs (structs without padding between fields), arbitrary-width integers and multiple pointer types.

Property Value
dbo:abstract
  • Zig ist eine seit 2016 von Andrew Kelley entwickelte Programmiersprache mit objektorientierten, imperativen sowie deklarativen Sprachelementen. Sie lehnt sich äußerlich an C und TypeScript an, ohne damit sprachlich kompatibel zu sein. Der Compiler kann die Bibliotheken von C/C++ direkt importieren sowie Header-Dateien für diese Sprache bei der Kompilierung generieren. Die direkt ausführbaren Binärdateien werden in der Ursprungsimplementation durch ein LLVM-Backend erzeugt. Die Sprache zeigt durch das "comptime" Attribut auf, wie durch Auswertung von Ausdrücken zur Kompilierzeit generische Typen einfacher geschrieben werden können, und dabei laufzeitoptimierter Code entsteht. Bei der Fehlerbehandlung und Parallelausführung lehnt es sich an Go an. Im Gegensatz zu anderen Erweiterungen von C können neue und alte Module frei gemischt werden und erlauben so eine graduelle Umstellung. Die Laufzeitbibliothek wurde nicht erweitert – es genügt eine libc-Implementierung. (de)
  • Zig est un langage de programmation compilé impératif polyvalent, typé statiquement, conçu par Andrew Kelley. Le langage est conçu pour la «robustesse», l'«optimalité» et la «maintenabilité», prenant en charge les génériques et la réflexion au moment de la compilation, la compilation croisée et la . Un objectif majeur du langage est de concurrencer (et d'améliorer) C, tout en s'inspirant également de Rust, entre autres. Zig possède de nombreuses fonctionnalités pour la programmation de bas niveau, notamment des types composés (struct) avec zéro padding, des entiers de taille arbitraire et différents types de pointeurs. Le compilateur, originellement écrit en C++, a lentement été réécrit en Zig pour être aujourd'hui disponible dans sa version entièrement implémentée en Zig, nommée Stage 2. Il utilise LLVM 11 comme back-end , prenant en charge plusieurs de ses cibles natives, bien que d'autres back-ends sont en développement. Le compilateur est un logiciel libre et open source distribué sous la licence MIT . Le compilateur Zig fournit la possibilité de compiler du C et du C++, similaire à Clang en utilisant respectivement la commande "zig cc" et "zig c++". Le langage de programmation Nim prend en charge l'utilisation de zig cc comme compilateur C. (fr)
  • Zig is an imperative, general-purpose, statically typed, compiled system programming language designed by Andrew Kelley. The language is designed for "robustness, optimality and maintainability", supporting compile-time generics, reflection and evaluation, cross-compilation and manual memory management. A major goal of the language is to improve upon the C language, while also taking inspiration from Rust, among others. Zig has many features for low-level programming, notably packed structs (structs without padding between fields), arbitrary-width integers and multiple pointer types. Zig is not just a new language, Zig also ships with a C/C++ compiler, and Zig can be used with either or both languages. Since version 0.10 the (new default) Zig compiler is written in Zig, i.e. it's a self-hosting compiler, and that's the major new feature of the new release (the older legacy bootstrapping compiler, written in C++, is still an option but will not be in 0.11). The default backend (i.e. the optimizer) is still LLVM (now version 15, legacy uses version 13), and LLVM is written in C++. Zig (i.e. the compiler, not generated code from it) with LLVM is 169 MiB, vs without LLVM 4.4 MiB. When compiling with the new Zig compiler much less memory is used (the older, now legacy, compiler uses 3.5x more memory), and it compiles a bit faster. Faster executable code is usually complied with the new compiler (i.e. its LLVM code generation is better), and it fixes many bugs, but there are also improvements for the older legacy compiler in version 0.10. The self-hosted linker is tightly coupled with the self-hosted compiler. The new version also adds some experimental (tier-3) support for AMD GPUs (there's also some lesser support for Nvidia GPUs and for PlayStation 4 and 5). The older bootstrapping ("stage1") compiler is written in Zig and C++, using LLVM 13 as a back-end, supporting many of its native targets. The compiler is open source under the MIT License. The Zig compiler exposes the ability to compile C and C++ similarly to Clang with the commands "zig cc" and "zig c++", providing many headers including libc and libcxx for many different platforms, allowing Zig's cc and c++ sub-commands to act as cross compilers out of the box. Plus the operating systems (mostly desktop ones) officially supported (and documented), (minimal) applications can and have been made for Android (with Android NDK, and programming for iOS also possible). Zig doesn't have its own official package manager (non-official ones exist), but a standard one has a milestone for 0.12. Zig development is funded by the Zig Software Foundation (ZSF), a non-profit corporation with Andrew Kelley as president, which takes in donations and hires multiple full-time employees. (en)
  • Zigは、アンドリュー・ケリーによって設計された命令型の汎用の静的型付けのコンパイル型システムプログラミング言語である。この言語は「堅牢性、最適性及び保守性」向けに設計されており、コンパイル時のジェネリクス、リフレクション、クロスコンパイル及びをサポートしている。この言語の主な目標は、C言語と競合すると同時にこれを改善し、Rustなどから着想を得ることである。 Zigにはパックされた構造体、多倍長整数、複数のポインタ型などの低レベルプログラミングのための多くの機能がある。 リファレンス実装のコンパイラはZig及びC++で記述されており、LLVMをバックエンドとして使用し、LLVMがサポートするターゲットの多くをサポートしている。コンパイラはフリーかつオープンソースで、MITライセンスの条件に基づいて配布されている。Zigのコンパイラはzig cc及びzig c++をそれぞれ使用することによって、Clangと同様にC言語及びC++をコンパイルすることができる。Nimプログラミング言語はC言語のコンパイラとしてzig ccを使用することをサポートしている。 (ja)
  • Zig è un linguaggio di programmazione imperativo general purpose. Ideato come alternativa moderna al C e parzialmente ispirato a Rust, Zig include diverse funzionalità a basso livello (come puntatori, packed structs, interi di dimensione arbitraria). Zig è un linguaggio compilato e fa uso di tipizzazione statica, con inferenza di tipi, tipi generici, e riflessione. Il compilatore Zig è software libero distribuito sotto licenza MIT. È un compilatore self-hosting, essendo implementato in Zig e C++, e usa LLVM come back-end. Il compilatore Zig permette anche la generazione di codice C e C++ ( supporta l'uso di Zig come back-end per la generazione di codice in questi linguaggi). (it)
  • Zig é uma linguagem de programação de multiparadigma voltado para sistemas e compilável, embora seja de propósito geral, estaticamente tipada, projetada por Andrew Kelley. A linguagem é projetada para "robustez, otimização e facilidade de manutenção", suportando genéricos em tempo de compilação e reflexão, compilação cruzada e gerenciamento manual de memória. Um dos principais objetivos da linguagem é competir (e melhorar) a linguagem C , ao mesmo tempo que se inspira em Rust, entre outros. Zig tem muitos recursos para programação de baixo nível, notavelmente como: packed struct (estrutura de variáveis struct com preenchimento de zero entre os campos), inteiros de largura arbitrária e vários tipos de ponteiro. O compilador é escrito em Zig e C++ (etapa 1), usando LLVM como back-end, suportando muitos de seus alvos nativos. O compilador é um software livre e de código aberto sob a licença MIT . O compilador Zig expõe a capacidade de compilar C e C++, semelhante ao Clang, usando os comandos zig cc e zig c++, respectivamente. A linguagem de programação Nim suporta o uso de zig cc como um compilador C. O desenvolvimento Zig é financiado pela Zig Software Foundation (ZSF), uma corporação sem fins lucrativos comandado por Andrew Kelley como presidente, que recebe doações e contrata vários empregados a tempo inteiro. (pt)
  • Zig — это императивный, статически типизированный, компилируемый язык программирования общего назначения. Язык был спроектирован для «создания надёжного, оптимального и переиспользуемого ПО» (англ. maintaining robust, optimal and reusable software). Язык поддерживает обобщённое программирование и рефлексию во время компиляции, кросс-компиляцию и . Главная цель языка — конкурировать c (и стать лучше) C, и в то же время быть более простым, чем C++, Rust и другие. Разработка Zig поддерживается некоммерческой организацией Zig Software Foundation, основанная в 2020 году автором языка Andrew Kelley. Язык имеет много средств для низкоуровневого программирования, особенно: упакованные структуры (структуры с нулевым выравниванием между полями), целочисленные типы произвольной длины (вплоть до 65535 бит), несколько типов указателей. На момент версии 0.10.0 Zig по умолчанию использует новый компилятор, написанный на самом языке Zig, однако временно остаётся возможность использовать старый компилятор на C++. В качестве основного бэкэнда компилятора используется LLVM, однако существуют другие бэкенды разной готовности. Компилятор лицензирован под свободной лицензией MIT. Компилятор имеет возможность компилировать C и C++ программы с помощью команд «zig cc» и «zig c++». Язык программирования Nim поддерживает использование компилятора Zig как C компилятора. (ru)
  • Zig是一個命令式、通用、静态型別、编译的系統程式語言。 以「強健性、最佳性以及可維護性」為核心理念。 它支援編譯時泛型與反射、交叉編譯以及手動記憶體管理。 目標為改進 C语言 ,同時參考從 Rust 和其他語言。Zig 有許多低階程式設計的功能,例如緊緻結構(成員間沒有填充的結構)、任意大小的整數以及多指針型別。 Zig 最初的編譯器是用 Zig 和 C++ 編寫而成,以 LLVM 13 為後端 。這個編譯器使用 MIT許可證 授權。Zig 編譯器和 Clang 類似,能編譯 C 與 C++(使用「zig cc」以及「zig c++」指令),也為不同的平台提供標頭檔,包括 C標準函式庫 和 C++標準函式庫,因此 Zig 的 cc 與 c++ 子命令能直接作為交叉編譯器。 Zig 的開發由 Zig 軟體基金會 (ZSF) 資助,該資金會是一家非營利公司,由 Andrew Kelley 擔任總裁,也有雇傭一些全職員工,同時接受捐款。 (zh)
dbo:influencedBy
dbo:license
dbo:releaseDate
  • 2016-02-08 (xsd:date)
dbo:thumbnail
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 61049743 (xsd:integer)
dbo:wikiPageLength
  • 11906 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1121519504 (xsd:integer)
dbo:wikiPageWikiLink
dbp:designer
  • Andrew Kelley (en)
dbp:fileExt
  • .zig, .zir (en)
dbp:influencedBy
  • C, C++, LLVM IR, Go, Rust, JavaScript (en)
dbp:license
dbp:logo
  • Zig logo 2020.svg (en)
dbp:name
  • Zig (en)
dbp:operatingSystem
dbp:paradigms
dbp:platform
dbp:released
  • 2016-02-08 (xsd:date)
dbp:typing
dbp:wikiPageUsesTemplate
dcterms:subject
rdf:type
rdfs:comment
  • Zigは、アンドリュー・ケリーによって設計された命令型の汎用の静的型付けのコンパイル型システムプログラミング言語である。この言語は「堅牢性、最適性及び保守性」向けに設計されており、コンパイル時のジェネリクス、リフレクション、クロスコンパイル及びをサポートしている。この言語の主な目標は、C言語と競合すると同時にこれを改善し、Rustなどから着想を得ることである。 Zigにはパックされた構造体、多倍長整数、複数のポインタ型などの低レベルプログラミングのための多くの機能がある。 リファレンス実装のコンパイラはZig及びC++で記述されており、LLVMをバックエンドとして使用し、LLVMがサポートするターゲットの多くをサポートしている。コンパイラはフリーかつオープンソースで、MITライセンスの条件に基づいて配布されている。Zigのコンパイラはzig cc及びzig c++をそれぞれ使用することによって、Clangと同様にC言語及びC++をコンパイルすることができる。Nimプログラミング言語はC言語のコンパイラとしてzig ccを使用することをサポートしている。 (ja)
  • Zig是一個命令式、通用、静态型別、编译的系統程式語言。 以「強健性、最佳性以及可維護性」為核心理念。 它支援編譯時泛型與反射、交叉編譯以及手動記憶體管理。 目標為改進 C语言 ,同時參考從 Rust 和其他語言。Zig 有許多低階程式設計的功能,例如緊緻結構(成員間沒有填充的結構)、任意大小的整數以及多指針型別。 Zig 最初的編譯器是用 Zig 和 C++ 編寫而成,以 LLVM 13 為後端 。這個編譯器使用 MIT許可證 授權。Zig 編譯器和 Clang 類似,能編譯 C 與 C++(使用「zig cc」以及「zig c++」指令),也為不同的平台提供標頭檔,包括 C標準函式庫 和 C++標準函式庫,因此 Zig 的 cc 與 c++ 子命令能直接作為交叉編譯器。 Zig 的開發由 Zig 軟體基金會 (ZSF) 資助,該資金會是一家非營利公司,由 Andrew Kelley 擔任總裁,也有雇傭一些全職員工,同時接受捐款。 (zh)
  • Zig ist eine seit 2016 von Andrew Kelley entwickelte Programmiersprache mit objektorientierten, imperativen sowie deklarativen Sprachelementen. Sie lehnt sich äußerlich an C und TypeScript an, ohne damit sprachlich kompatibel zu sein. Der Compiler kann die Bibliotheken von C/C++ direkt importieren sowie Header-Dateien für diese Sprache bei der Kompilierung generieren. Die direkt ausführbaren Binärdateien werden in der Ursprungsimplementation durch ein LLVM-Backend erzeugt. (de)
  • Zig est un langage de programmation compilé impératif polyvalent, typé statiquement, conçu par Andrew Kelley. Le langage est conçu pour la «robustesse», l'«optimalité» et la «maintenabilité», prenant en charge les génériques et la réflexion au moment de la compilation, la compilation croisée et la . Un objectif majeur du langage est de concurrencer (et d'améliorer) C, tout en s'inspirant également de Rust, entre autres. (fr)
  • Zig is an imperative, general-purpose, statically typed, compiled system programming language designed by Andrew Kelley. The language is designed for "robustness, optimality and maintainability", supporting compile-time generics, reflection and evaluation, cross-compilation and manual memory management. A major goal of the language is to improve upon the C language, while also taking inspiration from Rust, among others. Zig has many features for low-level programming, notably packed structs (structs without padding between fields), arbitrary-width integers and multiple pointer types. (en)
  • Zig è un linguaggio di programmazione imperativo general purpose. Ideato come alternativa moderna al C e parzialmente ispirato a Rust, Zig include diverse funzionalità a basso livello (come puntatori, packed structs, interi di dimensione arbitraria). Zig è un linguaggio compilato e fa uso di tipizzazione statica, con inferenza di tipi, tipi generici, e riflessione. (it)
  • Zig é uma linguagem de programação de multiparadigma voltado para sistemas e compilável, embora seja de propósito geral, estaticamente tipada, projetada por Andrew Kelley. A linguagem é projetada para "robustez, otimização e facilidade de manutenção", suportando genéricos em tempo de compilação e reflexão, compilação cruzada e gerenciamento manual de memória. Um dos principais objetivos da linguagem é competir (e melhorar) a linguagem C , ao mesmo tempo que se inspira em Rust, entre outros. (pt)
  • Zig — это императивный, статически типизированный, компилируемый язык программирования общего назначения. Язык был спроектирован для «создания надёжного, оптимального и переиспользуемого ПО» (англ. maintaining robust, optimal and reusable software). Язык поддерживает обобщённое программирование и рефлексию во время компиляции, кросс-компиляцию и . Главная цель языка — конкурировать c (и стать лучше) C, и в то же время быть более простым, чем C++, Rust и другие. Разработка Zig поддерживается некоммерческой организацией Zig Software Foundation, основанная в 2020 году автором языка Andrew Kelley. (ru)
rdfs:label
  • Zig (Programmiersprache) (de)
  • Zig (langage) (fr)
  • Zig (linguaggio di programmazione) (it)
  • 지그 (프로그래밍 언어) (ko)
  • Zig (プログラミング言語) (ja)
  • Zig (linguagem de programação) (pt)
  • Zig (язык программирования) (ru)
  • Zig (programming language) (en)
  • Zig (zh)
owl:sameAs
prov:wasDerivedFrom
foaf:depiction
foaf:isPrimaryTopicOf
foaf:name
  • Zig (en)
is dbo:influenced of
is dbo:programmingLanguage of
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is dbp:influenced of
is dbp:programmingLanguage of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License