Fanboy
Recentemente migrei para o mundo Mac com a compra de um MacBook Pro. Embora seja um equipamento caro, ao se comparar com outros notebooks com a mesma capacidade de hardware ele chega até a ser mais barato. Compare com um Sony Vaio com as mesmas especificações. Sendo assim, preferi investir num Mac que geralmente atinge melhor valor de revenda do que um PC.
Erlang
Erlang é uma linguagem de programação funcional criada pela Ericsson em 1987 que tem foco em concorrência, sistemas distribuídos e tolerância a falhas. Ultimamente vêm se tornando muito conhecida graças a seus recursos de concorrência e ao foco da computação em paralelismo ao invés de mais ciclos de processamento para escalabilidade.
Para prosseguir com meus breves estudos de Erlang, resolvi instalá-lo no Mac. Cheguei a pensar em instalar ele numa máquina virtual VMware ou Parallels, mas isso envolveria a aquisição destes softwares. Além disso eu não estaria aproveitando 100% do hardware para testar a capacidade do Erlang.
Bom, vamos ao que interessa.
Requisitos
- Source do Erlang em http://erlang.org/download.html – Utilizei a versão R13A (17 Março 2009) – Recomendo baixar também a documentação em formato man.
- Apple Xcode 3 em http://developer.apple.com/technology/xcode.html
Compilar e instalar
Eu criei uma pasta dentro do home do meu usuário e deixei lá dentro tudo o que precisei para compilar o Erlang.
Os comandos abaixo estão de acordo com as versões que utilizei. Caso utilize uma versão diferente, faça as devidas alterações nos nomes de arquivos e diretórios. Caso descubra alguma particularidade da versão, fique à vontade para comentar no final deste post.
$ tar xvzf otp_src_R13A.tar.gz $ cd otp_src_R13A $ ./configure --enable-hipe --enable-smp-support --enable-threads $ make $ sudo make install
Para testar o Erlang:
$ erl
Você verá algo assim:
Erlang R13A (erts-5.7) [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false] Eshell V5.7 (abort with ^G) 1>
Para sair pressione Ctrl-C e depois escolha a opção (a) e pressione ENTER.
BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded
(v)ersion (k)ill (D)b-tables (d)istribution
a
O caminho padrão de instalação (prefix) é /usr/local. Caso queira utilizar outro prefixo, é necessário utilizar a opção –prefix no comando configure.
Documentação
Para instalar a documentação em formato man, utilize o seguinte comando:
$ sudo tar xvzf otp_doc_man_R13A.tar.gz -C /usr/local/share
Para testar a documentação:
$ man erl
Testando
Para testar se o básico está funcionando, crie um arquivo chamado hello.erl com o código abaixo. A palavra werld é um trocadilho de world com erlang:
-module(hello).
-export([hello_werld/0]).
hello_werld()->
io:format("Hello WErld ~n").
Para compilar e executar o teste:
$ erl -compile hello $ erl -noshell -s hello hello_werld -s init stop
That’s all folks…