Tư duy bài toàn theo "Lập trình hàm"

Mình đang nghiên cứu khái niệm lập trình hàm (dùng các ngôn ngữ như Haskell, Erlang…). Đã đọc qua nhiều khái niệm rồi nhưng vẫn chưa hiểu rõ ràng được.

VD như gặp 1 bài toán thì tư duy theo lập trình hàm với lập trình thủ tục khác nhau như thế nào? Mình cần 1 ví dụ cụ thể. Bạn nào hiểu về khái niệm này giúp mình với.

Một số ví dụ :

  • Bạn chỉ đường cho một người lạ: Có hai kiểu: một là: rẽ trái tại A, rẽ phải tại B, cuối xóm rẽ trái phát nữa là đến. Cách hai là: Đến chỗ C (hỏi ai cũng biết đấy là đâu, nếu không thì hỏi mãi đi), rồi cứ vậy là đến nơi.

  • Yêu là cảm xúc thăng hoa, kiểu kia là: Yêu là làm cái X, làm cái Y,…

  • Tặng hoa cho người yêu nghĩa là đi mua bó hoa về đưa cho người yêu, thay vì: flowers = for all shops do | shop| shop.buy(flower) end
    girlfriend.take(flowers)

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?