Identifying pure functions
Uma função pura satisfaz duas propriedades:
- Sua saída depende apenas de suas entradas: quando você fornece um valor, a saída é sempre a mesma.
- Ela não tem efeitos colaterais, ou seja, nenhum efeito fora da função.
Muitas funções em R não são puras, e ainda assim são essenciais no uso do dia a dia do R: ao fazer uma análise, você precisa baixar arquivos, criar um gráfico, salvar resultados…
Ao programar, você deve tentar tornar suas funções ou o mais puras possível ou o mais impuras possível (por exemplo, uma função que baixa um arquivo deve apenas baixar esse arquivo). Mas, para isso, primeiro você precisa ser capaz de reconhecer uma função pura de uma impura.
É isso que vamos fazer neste exercício: executar funções que são puras ou impuras e ver quais são suas saídas.
Este exercicio faz parte do curso
Programação Funcional Intermediária com purrr
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# Launch Sys.time(), Sys.sleep(1), & Sys.time()
___()
___(___)
___()