Carbon: Conhecendo a nova linguagem do Google
Um substituto para o C++?
No final de julho deste ano, o Google anunciou sua nova linguagem de programação de software, o Carbon. As notícias que seguiram foram sobre como o Carbon do Google está tentando ser um sucessor do C++.
Frustrados com a lenta evolução do C++, engenheiros do Google lançaram uma nova linguagem de programação de código aberto “experimental”, chamada Carbon, como possível sucessora do venerável mas antigo C++.
Analisando a maneira como as BigTechs moldam as linguagens de programação, podemos notar que essas empresas inovam para o seu próprio benefício: assim como a Microsoft construiu o Typescript para atualizar o JavaScript, e o Kotlin foi criado para reforçar as fraquezas em Java, o Carbon poderia servir como uma linguagem sucessora para o C++, que ofereceria um ponto de partida fácil para desenvolvedores para uma linguagem mais recente que aborda conceitos de desenvolvimento modernos, como segurança de memória e generics.
A documentação oficial declara que o Carbon “ foi projetado em torno da interoperabilidade com C++, bem como adoção e migração em larga escala para bases de código e desenvolvedores C++ existentes ”.
Ao longo desse artigo eu vou explicar como podemos instalar e executar a versão experimental do Carbon em uma máquina local.
Após a instalação você poderá buscar na sua documentação oficial as principais características dessa linguagem e executar testes.
Primeiramente, veremos os seguintes passos para configurar o ambiente:
- Homebrew
- Bazel
- LLVM
- Clonar repositório da linguagem Carbon
- Executar o Explorer
Você pode encontrar esse mesmo passo a passo em inglês neste link.
Aqui, vou apenas adicionar um pouco de contexto e uma breve explicação para aqueles que abordaram a linguagem e as suas ferramentas pela primeira vez.
As principais ferramentas usadas pelo Carbon:
1. Homebrew
Homebrew é um gerenciador de pacotes que pode já estar instalado em seu computador. Execute o comando pra conferir se você já o tem instalado:
brew --version
Se não for esse o caso, você pode instalar o Homebrew no macOS, Linux e Windows (através do WSL).
2. Bazel
O Bazel é uma ferramenta de compilação e teste de código aberto que oferece suporte escalonável a projetos multilíngue e multiplataforma.
De acordo com a documentação, “ Bazel é o sistema de construção padrão da Carbon. O Bazelisk é recomendado para instalar o Bazel ”.
Execute o comando abaixo para instalar o Bazel:
brew install bazelisk
3. LLVM
Você pode ver o LLVM como uma máquina virtual de baixo nível, mas “LLVM tem pouco a ver com máquinas virtuais tradicionais”. O LLVM é usado para compilar e vincular o Carbon como parte de sua compilação.
Execute o seguinte comando para instalar o LLVM:
brew install llvm
Esteja ciente de que no macOS (não no Linux), você deve executar o seguinte comando para atualizar o PATH:
export PATH="$(brew --prefix llvm)/bin:${PATH}"
4. Clonar linguagem de Carbon
Execute os seguintes comandos em uma pasta apropriada.
Eles clonarão e baixarão o código da linguagem Carbon localmente.
git clone https://github.com/carbon-language/carbon-lang
cd carbon-lang
5. Execute o Explorer
Finalmente, estamos prontos para construir e executar o explorer.
O código a seguir executa a ferramenta de compilação do Bazel para que ela acione o código do explorador:
bazel run //explorer -- ./explorer/testdata/print/format_only.carbon
O explorador executa o código original no arquivo no local designado:
./explorer/testdata/print/format_only.carbon
A extensão .carbon é necessária para que o compilador saiba que o arquivo contém linguagem Carbon.
Eventualmente, você deve obter um “Hello World” como o seguinte.
Analisando sua sintaxe:
Se você estiver familiarizado com o C, C++ ou linguagens semelhantes, também estará familiarizado com a sintaxe do Carbon.
O Carbon ainda é experimental e algumas coisas podem mudar. A própria documentação afirma: “Observe que o Carbon não está pronto para uso”. No entanto, alguns princípios de design são menos propensos a mudar.
Vamos começar analisando o código que acabamos de compilar, ele se encontra no arquivo: format_only.carbon
package ExplorerTest api;fn Main() -> i32 { var s: auto = "Hello world!";
Print(s);
return 0;
}
- A palavra-chave package declara pacotes.
Este arquivo contribui para a biblioteca padrão. - A palavra-chave fn declara funções.
O trecho de código fn Main() -> i32 {...} declara uma função chamada Main. O tipo de retorno de Main é i32, ou seja, um inteiro de 32 bits. Essa função Main retorna o valor zero. - A palavra-chave var introduz uma declaração de variável.
No código acima, s é o nome da variável, seguido por dois pontos : e o tipo auto é usado para inferir o tipo de variável automaticamente. - É possível declarar constantes usando a palavra-chave let.
Embora isso possa ser confuso para desenvolvedores vindos de JavaScript, será tranquilo para desenvolvedores vindos de Swift. - Finalmente, você pode adicionar comentários adicionando duas barras //.
Com este arquivo simples podemos ter uma visão geral da sintaxe do Carbon.




Comentários
Postar um comentário