matheusml / workshop-fp

Home Page:https://medium.com/@matheusml/entendendo-programa%C3%A7%C3%A3o-funcional-em-javascript-de-uma-vez-c676489be08b#.57fyjr4rt

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Workshop de Programação Funcional

Clone o projeto

git clone https://github.com/matheusml/workshop-fp.git

Entre na pasta do projeto

cd workshop-fp

Instale o mocha

npm install -g mocha

Rode os testes

mocha

Ajuste os blocos de código no arquivo test.js para que os testes passem.

Todos os ajustes devem ser feitos criando funções puras.

Funções puras:

  1. Não criam side-effects

  2. O output é gerado apenas pelo(s) input(s)

  3. Sempre retorna o mesmo resultado dados os mesmos parâmetros

Exemplo:

var name = "Matheus";

// impura
var helloName = function() {
    name = "Olá " + name;
    return name;
};

// pure
var helloName = function(name) {
    return "Olá " + name;
};