Exploring ReasonML and functional programming