Erlang é uma linguagem de programação funcional e concorrente, projetada para construir sistemas tolerantes a falhas e distribuídos. Desenvolvida na Ericsson em 1986 por Joe Armstrong, Mike Williams e Robert Virding, Erlang foi construída para alimentar centrais telefônicas que exigiam 99,9999999% de disponibilidade ("nove noves"). Roda na máquina virtual BEAM e introduziu o modelo de Atores de concorrência na engenharia de software mainstream.
As características definidoras de Erlang são processos leves (milhões podem rodar simultaneamente), passagem de mensagens (sem memória compartilhada entre processos) e hot code swapping (atualizar sistemas em execução sem pará-los). A biblioteca OTP (Open Telecom Platform) fornece padrões testados em batalha para construir supervisores tolerantes a falhas, máquinas de estado e aplicações distribuídas.
Para que é usado o Erlang?
Erlang alimenta infraestrutura de telecomunicações (os sistemas da Ericsson lidam com 40% do tráfego móvel global), sistemas de mensagens (WhatsApp foi construído em Erlang e atendia 2 bilhões de usuários com uma equipe de engenharia minúscula), ferramentas de colaboração em tempo real, sistemas de processamento de pagamentos e bancos de dados distribuídos como CouchDB e Riak. Elixir, construído sobre BEAM, estendeu o alcance de Erlang para o desenvolvimento web.
Erlang para iniciantes
Erlang exige uma mudança de mentalidade — não há loops (use recursão), não há variáveis mutáveis, e a concorrência é através de passagem de mensagens em vez de threads. Mas essas restrições produzem software notavelmente robusto. Aprender Erlang aprofunda sua compreensão de concorrência, tolerância a falhas e sistemas distribuídos de maneiras que poucas outras linguagens conseguem. Use o compilador online de Erlang do myCompiler para experimentar com pattern matching, processos e comportamentos OTP.
Erlang vs outras linguagens
Comparado ao Go para concorrência, o modelo de atores de Erlang fornece isolamento de falhas mais forte (um processo que falha não afeta os outros), enquanto as goroutines de Go têm menor overhead mas compartilham memória. Comparado ao Elixir, Erlang tem uma sintaxe mais verbosa, mas Elixir roda na mesma VM BEAM com uma sintaxe mais moderna inspirada em Ruby. Para tolerância a falhas em sistemas distribuídos, Erlang/BEAM permanece incomparável.
Por que usar um compilador Erlang online?
Um compilador Erlang online, também chamado de sandbox Erlang ou playground BEAM, permite compilar e executar código Erlang diretamente no seu navegador sem instalar o runtime Erlang. Isso é ideal para aprender o pattern matching de Erlang, entender o modelo de atores de concorrência, experimentar com comportamentos OTP e explorar conceitos de programação funcional sem configuração local complexa.
O IDE online de Erlang do myCompiler fornece o runtime completo Erlang/OTP. Você pode criar processos, usar passagem de mensagens, fazer pattern matching em tuplas e listas, e usar módulos OTP padrão. Salve e compartilhe programas Erlang via URL — completamente gratuito.
Por que Erlang é tão popular?
A influência de Erlang ultrapassa em muito sua base de usuários diretos. O modelo de concorrência da VM BEAM inspirou linguagens como Elixir, Gleam e o modelo de atores do Akka em Scala. O uso de Erlang pelo WhatsApp para atender 2 bilhões de usuários com 50 engenheiros se tornou lendário na indústria. As árvores de supervisão do framework OTP são um padrão comprovado para construir sistemas distribuídos confiáveis. Para quem constrói sistemas que nunca podem parar, o modelo de Erlang permanece o padrão ouro.
Oportunidades de carreira com Erlang
Expertise em Erlang é especializada, mas altamente valorizada para funções de engenheiro de sistemas distribuídos, engenheiro de telecomunicações, engenheiro backend em empresas que usam BEAM (Ericsson, WhatsApp, Discord) e desenvolvedor Elixir (já que Elixir e Erlang compartilham o runtime BEAM). A crescente popularidade de Elixir para desenvolvimento web aumentou significativamente a demanda por engenheiros proficientes em BEAM.