用 ABAP 模拟 Currying:把参数绑定这件事做到极致
很多 ABAP 开发者习惯了命令式写法:变量先声明、循环里改状态、过程里不断WRITE或更新内表。换到函数式编程的语境,会突然发现一件很有趣的事:复杂需求不一定要靠越来越长的过程来堆出来,也可以靠一组小而专的函数,像搭积木一样组合起来完成。
在这套思路里,Currying是一个非常关键、也非常“反直觉”的概念:它并不试图让你写出更短的代码,而是让你更容易写出更可复用、更易组合的函数单元。它背后的理论来源、命名沿革也很有意思:currying作为术语与 Christopher Strachey 以及逻辑学家 Haskell Curry 的名字相关(更早的思想还可以追溯到 Frege、Schönfinkel 等人的工作)。(Wikipedia)
Currying到底在做什么
用一句人话概括:
把一个需要多个参数的函数,改造成一连串“每次只吃一个参数”的函数。(