Primeiros Passos com a Linguagem de Programação Zig

Um dos principais objetivos do Zig é melhorar a Linguagem C


Primeiros Passos com a Linguagem de Programação Zig

Zig é uma linguagem de programação de sistema compilada, de uso geral , 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 de memória manual .

Um dos principais objetivos da linguagem é melhorar a linguagem C , ao mesmo tempo que se inspira em Rust , entre outros.

O compilador de estágio 1 é escrito em Zig e C++ ,usando LLVM 11 como back-end, suportando muitos de seus alvos nativos.

O compilador é open source sob a licença MIT .

O compilador Zig expõe a capacidade de compilar C e C++ de forma semelhante ao Clang com os comandos “zig cc” e “zig c++” .


Instalação

Zig está disponível para quase todos os sistemas operacionais e distribuições Linux, veja abaixo como instalar com o seu gerenciador de pacotes.

Para GNU/Linux:

emerge dev-lang/zig # Gentoo, Funtoo,...
sudo pacman -S zig # Arch Linux, Artix, ...
sudo xbps-install -Su zig # Void Linux 
sudo dnf install zig # Fedora, Red Hat, ...
nix-env -i zig # NixOS
# Ubuntu e qualquer distro que possui o snap instalado
snap install zig --classic --beta 

Para Windows

choco install zig # Utilizando Chocolatey
scoop install zig # Utilizando o Scoop
pacman -S mingw-w64-x86_64-zig # Utilizando o msys2

Para macOS:

brew install zig # Utilizando o Homwbrew
port install zig # Utilizando o MacPorts

Você também pode compilar o código fonte do repositório ou instalar manualmente um binário somente para seu usuário sem usar sudo ou root:

Nesse exemplo vamos fazer o download daqui da versão 0.8.1 da branch master/main para arquitetura x86_64.

wget https://ziglang.org/builds/zig-linux-x86_64-0.9.0-dev.1678+7747bf07c.tar.xz
tar Jxvf zig-linux-x86_64-0.9.0-dev.1678+7747bf07c.tar.xz
rm zig-linux-x86_64-0.9.0-dev.1678+7747bf07c.tar.xz
mkdir -p ~/.local/bin
mv ~/zig-linux-x86_64-0.9.0-dev.1678+7747bf07c ~/.local/bin/zig
echo 'alias zig="${HOME}/.local/bin/zig/zig"' >> ~/.bashrc
source ~/.bashrc
zig version


Primeiros Passos

Criando um Hello, world!

vim main.zig

const std = @import("std");

pub fn main() !void {
    const stdout = std.io.getStdOut().writer();
    try stdout.print("Hello, {s}!\n", .{"world"});
}

Compilando:

zig build-exe main.zig

E rode o binário com o mesmo nome do arquivo, nesse caso: ./main, a saída será: Hello, world!.

Comentários em Zig é similar à C++ , usando // comentário .

Zig possui diversas particularidades para utilizar tipos estáticos e entre outros, para mais detalhes e documentação visite https://ziglang.org/documentation/master/ .


programacao


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo


Crie Aplicativos Gráficos para Linux e Windows com C++

Aprenda C++ Moderno e crie Games, Programas CLI, GUI e TUI de forma fácil.

Saiba Mais

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!


caso queira entrar em contato conosco, envie-nos um e-mail.