[[분류:프로그래밍 언어]] [include(틀:다른 뜻1, other1=Poppy의 정규 5집 앨범, rd1=Zig(음반))] [include(틀:토막글)] [include(틀:프로그래밍 언어)] ||<-2>
'''{{{+3 지그}}}[br]Zig''' || ||<-2> [[파일:zig-logo-dark.svg|width=80%&theme=light]][[파일:zig-logo-light.svg|width=80%&theme=dark]] || || '''제작자''' ||Andrew Kelley || || '''출시''' ||[[2016년]] [[2월 8일]] || || '''버전''' ||0.11.0 || || '''라이선스''' ||[[MIT 라이선스]] || ||<-2> [[https://ziglang.org/|[[파일:홈페이지 아이콘.svg|width=22]]]] | [include(틀:GitHub 로고,링크=ziglang/zig,크기=22)] | [[https://discord.gg/zig|[[파일:디스코드 아이콘.svg|width=22]]]] || [목차] [clearfix] == 개요 == {{{const std = @import("std"); pub fn main() void { std.debug.print("Hello, world!\n"); } }}} [[C언어]]와의 호환성을 중시하는 다목적 [[프로그래밍 언어]]. [[Rust(프로그래밍 언어)|Rust]]로부터 상당한 문법적 영향을 받았으나 러스트의 핵심 개념이라고 할 수 있는 컴파일 타임에서의 메모리 체크를 포기하고 개발자가 직접 메모리를 관리하도록 하는 것이 특징이다.[* 정확히는 디버그 모드로 실행하면 런타임 체크가 이루어지며, 그때 버그를 잡아낼 수 있다.] C와 [[C++]]에 친화적이기 때문에 C헤더 파일을 그대로 include해 사용할 수 있다거나 별도의 [[FFI]] 없이 C/C++ 빌드 시스템이나 라이브러리를 사용하는 것도 가능하다. 사실 zig 자체가 완전한 C 컴파일러이기도 하다. 그 외에도 [[컴파일러|크로스 컴파일]]을 중점으로 두는 등의 장점이 있다. 그 외 {{{u8}}} 등의 타입 이름은 [[Rust(프로그래밍 언어)|Rust]]의 영향을 받았다. 일반적인 벤치마크에서 러스트보다 살짝 빠르지만, 러스트보다 느린 경우도 있다. [[https://programming-language-benchmarks.vercel.app/rust-vs-zig|벤치마크]] 다만 메모리 사용률이 러스트에 비해 절반 정도에 불과할 만큼 차이가 난다는 장점이 있다. == 여담 == [[JavaScript]] 런타임 중 하나인 [[bun]]이 해당 언어로 개발되었다. ferris를 마스코트로 가지고 있는 [[Rust(프로그래밍 언어)|Rust]]와 달리 도마뱀을 마스코트로 가지고 있다. == 관련 링크 == * [[https://discord.gg/zig|Zig 언어 공식 디스코드]] * [[https://discord.ziglang.kr|Zig 한국 사용자 디스코드]]