TECH 으로 돌아가기
TECH HACKER NEWS 1주 전 5분 읽기 72 READS

예제로 배우는 Zig — C를 대체하겠다는 그 언어, 직접 만져보기

예제로 배우는 Zig — C를 대체하겠다는 그 언어, 직접 만져보기

무슨 일이냐면요

요즘 시스템 프로그래밍 언어 얘기가 나오면 거의 Rust가 주인공이잖아요. 그런데 그 옆에서 조용히, 하지만 꾸준히 팬을 늘려가는 언어가 하나 있어요. 바로 Zig입니다. 이번에 'Zig by Example'이라는 학습 자료가 공개됐는데요, 이게 뭐냐면 짧은 예제 코드 하나하나에 주석을 달아서 "이 코드는 이렇게 동작해요"를 보여주는 방식의 튜토리얼이에요. Go를 배워본 분이라면 'Go by Example'을 떠올리시면 딱 맞습니다. 문법책처럼 개념을 줄줄 설명하는 게 아니라, 돌아가는 코드를 보면서 손으로 익히는 스타일이거든요.

Zig가 대체 뭔데요?

Zig는 한마디로 "C를 현대적으로 다시 만든 언어"예요. C는 50년 가까이 된 언어인데 아직도 운영체제, 임베디드, 게임 엔진 같은 바닥 영역을 지배하고 있죠. 빠르고 가볍거든요. 그런데 C는 너무 옛날 언어라서 메모리 실수가 잦고, 빌드 시스템도 제각각이라 골치가 아파요. Zig는 그 C의 장점(빠름, 단순함, 하드웨어에 가까움)은 그대로 가져오면서 불편한 점을 싹 정리했어요.

핵심 특징 몇 가지만 짚어볼게요.

업계에서 어디쯤 있냐면

Rust랑 자주 비교되는데, 둘은 철학이 좀 달라요. Rust는 "컴파일러가 메모리 안전을 강제로 보장해줄게"라는 쪽이라 빌림 검사기(borrow checker)라는 까다로운 관문을 통과해야 해요. 안전한 대신 배우기가 가파르죠. Zig는 "안전장치를 좀 주긴 하는데, 통제권은 너한테 줄게"라는 쪽이에요. 그만큼 단순하고 직관적이지만 실수의 책임도 개발자한테 더 있는 거죠.

실제로 화제가 된 사례도 있어요. 자바스크립트 런타임 Bun이 Zig로 작성됐는데, Node.js보다 빠른 속도로 주목받았죠. 이게 Zig가 "장난감 언어가 아니라 진짜 제품을 만들 수 있다"는 걸 보여준 셈이에요.

한국 개발자에게

당장 실무에 Zig를 도입하라는 얘기는 아니에요. 아직 1.0 정식 버전도 안 나왔고, 버전 올라갈 때마다 문법이 바뀌기도 하거든요. 다만 백엔드만 하다 보면 "메모리가 어떻게 잡히고 풀리는지"를 추상화 뒤에 숨겨놓고 살게 되는데, Zig 예제를 몇 개 따라 쳐보는 것만으로도 그 감각을 다시 잡을 수 있어요. C는 진입장벽 때문에 망설여졌다면, Zig는 훨씬 부드러운 입구가 되어줄 거예요. 'Zig by Example'처럼 돌아가는 코드부터 보는 자료는 그런 첫 발 떼기에 딱이고요.

마무리

Zig는 "C의 단순함은 사랑하지만 C의 불편함은 싫은" 사람들을 위한 언어예요. 예제로 슥 훑어보면서 시스템 프로그래밍의 감을 되찾아보는 건 어떨까요? 여러분은 Rust와 Zig 중 어느 철학에 더 끌리시나요?


🔗 출처: Hacker News

SOURCE · HACKER NEWS
원문 전체 보기 → https://github.com/boringcollege/zig-by-example
SHARE
처리 중...