A New Way to Squash Bugs: Functional programming is hard to learn but yields fewer nasty surprises | IEEE Journals & Magazine | IEEE Xplore