Zig یک زبان برنامهنویسی اپنسورس است که طبق ادعای سایت رسمی این زبان، با اهدافی همچون قدرت بالا، بهینه بودن و همچنین واضح بودن سورسکد به صورت متنباز عرضه شده است.
آشنایی با قابلیتهای شاخص زبان Zig
Zig، همچون زبان C، قابلیت مدیریت دستی حافظه را در اختیار دولوپر میگذارد که همین یک فیچر، زیگ را از بسیاری از زبانهای برنامهنویسی جدید متمایز میسازد و آن در صَف زبانهای قدیمیتری همچون سی قرار میدهد. از جمله دیگر فیچرهای این زبان اپنسورس میتوان به موارد زیر اشاره کرد:
- زبانی سبک با سینتکسی ساده
- مدیریت روان ارورها
- پشتیبانی از کانکارنسی
- برخوردار از قابلیتهای به اصطلاح ReleaseFast و ReleaseSafe به منظور عرضهٔ سریع و ایمن اپلیکیشن
- برخوردار از دیتا استراکچرهای اصطلاحاً جِنِریک
به عنوان نمونه سورسکد نوشته شده با زبان Zig، برنامهٔ معروف Hello World به صورت زیر خواهد بود:
const std = @import("std");
pub fn main() !void {
// If this program is run without stdout attached, exit with an error.
var stdout_file = try std.io.getStdOut();
// If this program encounters pipe failure when printing to stdout, exit
// with an error.
try stdout_file.write("Hello, world!\n");
}
در پایان لازم به ذکر است که به گفتهٔ سایت رسمی این زبان، Zig به منزلهٔ رقیبی برای زبان C محسوب میشود و این در حالی است که Zig Standard Library هیچگونه دیپندنسی به لایبرری libc ندارد.