database - lisp 和编写一个简单的数据库

标签 database lisp

谁能帮我写一个简单的数据库?

[define database   
  [list [new Album  
                "The White Album"  
                 "The Beatles"  
                 "Rock"]  
        [new Album   
                "Collected"   
                "Massive Attack"   
                "Bristol sound"]    
        [new "Idlewild"     
                "Outkast"   
                "Soundtrack"]       
                ... etc ...]]

编写访问器

您可以通过说出 a.title、a.artist 或 a.genre 来访问专辑对象(称之为 a)的字段。但是“.artist”不是一个过程,有时拥有一个获取专辑对象并返回它们的标题、艺术家或流派的过程很有用。所以我们将从编写它们开始。

编写三个过程,标题、艺术家和流派,给定一个 Album 对象作为输入,分别返回它的标题、艺术家和流派。包括每个测试用例以表明它有效,例如[title [new Album "a""b""c"]] 应该输出“a”。


[定义数据库 [列表[新专辑 “拆散” “马里奥” “节奏蓝调]]] [标题[新专辑]]

最佳答案

我建议您阅读“Practical Common Lisp”。
Chapter 3 Practical: A Simple Database可能会帮助您解决问题。

关于database - lisp 和编写一个简单的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7934943/

相关文章:

java - UNIQUE 约束失败 : sqlite database : android

python - 在 Django 模型中存储项目类别和子类别的最佳方式

lisp - 创建大量的gensym是否合理?

lisp - 如何使用 Lisp 中的迭代函数打印列表中奇数位置的元素?

java - 如何从数据库中获取所有表名?

mysql - 如何使用插入和选择语句

arrays - 如何在 LISP 中使用数组——寻找最小值

lisp - 取消列出列表 - 常见的 lisp

functional-programming - LISP 中的未定义函数错误

mongodb - 如何过滤子文档属性的聚合?