add functional programming learning resource