ougato Sharing changes the world

Lisp语言

2020-01-26
ougato

Lisp的根源

John McCarthy(约翰·麦卡锡)

  • 1927 年 09 月 04 日 - 出生于美国 波士顿 马萨诸塞
  • 1944 年 - 进入加州理工学院。
  • 1948 年 - 普林斯顿大学研究生深造。
  • 1956 年 - 人工智能元年,达特茅斯会议
  • 1958 年 - 提出Lisp语言开发思路与方案。
  • 1959 年 - 完成Lisp语言开发。
  • 1960 年 - 发表学术文章《符号表达式的递归函数及其运算》
  • 1971 年 - 对人工智能的贡献,获得计算机图灵奖。
  • 1988 年 - 获得了日本的 KYOTO 奖。
  • 1989 年 - 当选美国国家科学院院士。
  • 1990 年 - 获得美国全国科学奖章。
  • 2003 年 - 获得富克兰克林学院奖章。
  • 2011 年 10 月 24 日,与世长辞。

参考资料:

七个原始操作符

  • quote
    • (quote a)
    • 返回 quote 后面的表达式跟着的 a
  • atom
    • (atom 'a)
    • 求出表达式是否为原子,如果 quote 后面的表达式求值后跟着一个原子,会返回一个 t,否则返回一个空表 ()
  • eq
    • (eq 'a 'b)
    • 求出两个表达式是否相等,如果 ‘a 相等于 ‘b,返回 t,否则返回 ()
  • car
    • (car '(a b c))
    • 期望第一个值是个表达式,返回一个表的第一个元素
  • cdr
    • (cdr '(a b c))
    • 期望第一个值是个表达式,返回一个表中,除了第一个元素的最后所有元素。
  • cons
    • (cons 'a '(b c))
    • 期望第二个值是个表,并且会把第一个值与表组合,生成新的一个组合表。
  • cond
    • (cond ((eq 'a 'b) 'c) ((atom 'e) 'f))
    • 规则要求 cond 后面跟的表达为 (p...e) 格式,可以跟多个表达式,如果其中一个表达式中 p 的求值为 t,就返回这个表达式中的 e

Comments

Content