Tất cả các chương trình có liên quan đến toán học. Thật vậy, nhiều trường đại học vẫn đặt các chương trình khoa học máy tính của họ dưới sự xem xét của khoa toán.
Đối với việc học lập trình chức năng, bạn không cần phải có một nền tảng vững chắc về toán học để học nó. Bây giờ tôi đã học ba ngôn ngữ chức năng khác nhau để thành thạo hợp lý (Haskell, Erlang, Clojure) và kỹ năng toán học của riêng tôi là vô cùng yếu. Thực tế, cộng đồng của Haskell có thể hơi khó chịu trong cách nói về các vấn đề tập trung vào toán học, nhưng cả Erlang và Clojure đều là những ngôn ngữ lập trình chức năng rất thực dụng, không khó để nhận vì thông tin hướng dẫn được viết, dường như, cho các lập trình viên, không phải những người đam mê toán học khó tính. Điều đó đã được nói, mặc dù tôi không biết gì về toán học, tôi đã chọn Haskell, vì vậy điều đó không phải là không thể.
Khó khăn thực sự mà tôi đã tìm thấy trong việc chọn các ngôn ngữ lập trình khai báo nói chung (trong đó chức năng là một tập hợp con) đang từ bỏ sự thôi thúc muốn kiểm soát; để nói với máy tính phải làm gì. Phải mất một số làm quen.