Há uns meses descobri um projeto muito bacana para gerenciamento de pacotes Standard ML, chamado Smackage.
Em seu .bash_profile
configure o diretório do projeto:
export SMACKAGE_HOME="$HOME/.smackage"
Agora baixe e instale o projeto:
sh$ git clone git://github.com/standardml/smackage.git
sh$ make mlton
sh$ bin/smackage
sh$ DESTDIR=$SMACKAGE_HOME make install
Agora adicione $SMACKAGE_HOME/bin
a seu PATH
e atualize o sistema, de volta ao diretório do projeto:
sh$ ./bin/smackage refresh
sh$ ./bin/smackage make smackage mlton
sh$ ./bin/smackage make smackage install
Para fazer o MLton (compilador Standard ML) reconhecer o Smackage, crie o arquivo
~/.mlb-path-map
com o seguinte conteúdo:
SMACKAGE /home/user/.smackage/lib
Onde /home/user
é seu homedir.
Crie um alias para o executável:
alias mlton='/usr/bin/mlton -mlb-path-map /home/user/.mlb-path-map'
Substituindo /home/user
por seu homedir, como acima.
Criei um pacote de teste unitário para MLton chamado UnitTestML.
Para instalá-lo, você deve primeiro adicionar a fonte ao Smackage:
sh$ smackage source UnitTestML git https://github.com/cacilhas/UnitTestML.git
Agora você deve atualizar a base do Smackage:
sh$ smackage refresh
E já pode instalar o pacote:
sh$ smackage get UnitTestML
E é isso! Para usá-lo em sua aplicação, adicione a seu arquivo test.mlb
:
$(SMACKAGE)/UnitTestML/v1/unittest.mlb
No próximo artigo irei falar como fiz para criar o projeto UnitTestML e como utilizá-lo em seu projeto.
Functional | ML