倒是早在20世纪50年代末、60年代初美国麻省理工学院的约翰·麦卡锡等人首先开发的列表处理语言LISP(LISt Processing)迄今仍然广泛用于编写人工智能应用程序,特别是用于开发专家系统。函数语言在解释执行机制上的特点是递归地由较内层向外层归约(reduction),而每次归约都是把一个函数“作用”,于它的变元而得出函数值的过程。所以又称这类语言为“作用式”(applicative)语言。
早期的人工智能研究人员直接模仿人类进行逐步的推理,就像是玩棋盘游Xi或进行逻辑推理时人类的思考模式。到了1980和1990年代,利用概率和经济学上的概念,人工智能研究还发展了很成功的方法处理不确定或不完整的资讯。对于困难的问题,有可能需要大量的运算资源,也就是发生了“可能组合爆增”:当问题超过一定的规模时,电脑会需要天文数量级的存储器或是运算时间。寻找更有效的算法是优先的人工智能研究项目。
事实上,已经有多种对应于各种不同知识表示方式的人工智能编程语言。按所对应的知识表示方式不同。对应于产生式规则知识表示的语言。例如,由美国卡耐基·梅农大学的C·L·福基(C.L.Forgy)等人于1977年开发的OPS(official production system),当时就用它来为DE/C公司开发了一个解决VAX计算机系统配置问题的专家系统X1/XCON。对应于逻辑公式知识表示的语言。一种已广为应用的逻辑语言就是PROLOG。它是1970年由法国马塞大学的 A.柯迈豪埃(Alain Colmerauer)所开发的。对应于框架或语义网知识表示的语言。这是一类所谓“面向对象”的(object-oriented)语言。其中一个有代表性的语种就是Smalltalk。它是在1980年第壹次创作,后来发展了好几个版本,通常以发布的年份来标记,例如,第1个版本叫Smalltalk-80等等。