Programare funcțională intermediară cu purrr
Colin Fay
Data Scientist & R Hacker at ThinkR
„Pentru a înțelege calculele în R, două idei sunt utile:
- Tot ce există este un obiect.
- Tot ce se întâmplă este un apel de funcție." -John Chambers
class(`+`)
"function"
class(`<-`)
"function"
Funcțiile pot fi
manipulate
stocate într-o variabilă
lambda
stocate într-o listă
argumente ale unei funcții
returnate de o funcție
Într-o funcție pură:
rezultatul depinde doar de intrări
fără "efecte secundare"
# Output depends only on inputs
# No side effect
sum(1:10)
55
mean(1:100)
50.5
Funcții impure:
Depind de mediu
Au "efecte secundare"
# Outputs depends of environment
Sys.Date()
"2018-10-04"
# Side effect only
write.csv(iris, "iris.csv")
Programare funcțională intermediară cu purrr