13. SO, WE HAVE A PROBLEM : HOW TO USE
A VALUE WE DON’T HAVE YET, AND USE
IT IN THE FUTURE?
14. CHANGE YOUR MIND
HOW DO YOU INTERACT WITH
DATA NOW?
Get data
from DB
and/or
WS
• Wait for it
• Possibly
blocking
i/o
Data is
here
• Act on it
• Data
treatment
19. CHANGE YOUR MIND
HOW CAN WE DO IT?
Get data
from DB
and/or
WS
• Give all the
“recipes” about
how to deal
with this data
• You only
describe how
to manage
data you get
That’s all
32. WE’VE JUST DEALT
WITH FUNCTORS,
MONADS,
SEMIGROUPS… ALL
OF THESE
ALGEBRAIC
STRUCTURES
33. MATH WORDS, NOT SO COMPLICATED,
JUST MADE TO SHARE CONCEPTS
BETWEEN PEOPLE :-)
34. FUNCTIONAL
PROGRAMING IS NOT
A LANGUAGE : IT’S
THE ABILITY TO USE
ALGEBRAIC
STRUCTURES AND
MATH TOOLS IN YOUR
CODE
SO YOU CAN REUSE IT WHERE YOU WANT…
35. FUNCTIONAL JAVASCRIPT : FANTASY
LAND SPECIFICATION
Made by the awesome Brian McKenna - @puffnfresh
36. DEMO MADE WITH PACTA
IMPLEMENTATION
Node.js + browser implementation, totally agnostic javascript,
Fantasy Land compatible + Promises/A+ compatible
made by Paul Mucur with help from Rodolphe Belouin