Programare funcțională în R

Programare funcțională intermediară cu purrr

Colin Fay

Data Scientist & R Hacker at ThinkR

Despre calcule în R

„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"
Programare funcțională intermediară cu purrr

R ca limbaj de programare funcțională

Funcțiile pot fi

  • manipulate

  • stocate într-o variabilă

  • lambda

 

  • stocate într-o listă

  • argumente ale unei funcții

  • returnate de o funcție

Programare funcțională intermediară cu purrr

Despre „funcțiile pure"

Î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
Programare funcțională intermediară cu purrr

Funcțiile impure sunt utile

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

Lectură suplimentară despre programarea funcțională

Programare funcțională intermediară cu purrr

Să exersăm!

Programare funcțională intermediară cu purrr

Preparing Video For Download...