函数式编程和数据库交互的最佳实践是什么?

man*_*ken 9 lisp database orm functional-programming crud

我知道在像Java这样的纯面向对象语言中,使用像Hibernate这样的ORM通常是有意义的.但是在Clojure或Common LISP中编写CRUD类型的功能时我该怎么办?

传递SQL作为一阶函数?但是,HTML生成代码中的SQL是否非常丑陋?

谢谢,

Olek

ayr*_*ieu 3

Common Lisp 并不是一种自觉的 FP 语言。Clojure 只能使用 Hibernate。

对于 Common Lisp:数据库。这是一个持久对象 one。这是教程的第一部分,将其与 Hunchentoot(一个 CL Web 服务器和动态网页工具包)一起使用CL 中的 SQL可以如下所示(看起来比实际长度更长,因为 SQL 是水平格式化的,而 CL 不是)。如果你愿意的话,这个人正在开发一个 Web 框架(使用 CLSQL 和 Elephant,已经链接到),目标是 tersity,着眼于 arc 挑战。

编辑:最近的答案对此进行了扩展。