Racket Lisp语言的分支开源项目

我要开发同款
匿名用户2012年05月28日
40阅读
开发技术Lisp
所属分类程序开发、脚本编程语言
授权协议LGPL

作品详情

Racket源自著名的专家型语言PLTScheme,同时又是Lisp语言的一个分支。它适用于从脚本Script到应用程序开发的任务执行工具,包括图形用户界面,Web服务器等。支持编译器的虚拟机,创建独立的可执行程序的工具,RacketWeb服务器,具有丰富而全面的功能库,适用于初学者和专家编程。

Racket可通过创建大量的语法系统来支持和创建新的编程语言,包括TypedScheme,ACL2,FrTime,LazyScheme和ProfessorJ等。作为编程语言的通用测试平台,Racket软件包主要工具包括:

*racket——系统核心部分,主要包括编译器、解释器和运行库程序;

*DrRacket——原为DrScheme,是一个基于Racket的开源、跨平台系统的IDE集成编程环境,更加适用于初学者的GUI图形化用户编程界面;

*raco——基于字符界面的命令行执行工具,用于执行Racket命令集,如安装系统组件功能包,创建函数库等。

Racket的特点是具有全面而丰富的库,可用于实现xml,web-server,web-framework,multiple-threads,patternmatch,latex,slides,posix,GUI等,其实用性不比CommonLisp差。另外其与众不同的特点在于macro和continuation,并引入了syntaxobject和compilablemacro的概念。

具体说来,LISP有以下几个主要特点:

1.计算用的是符号表达式而不是数;

2.具有表处理能力,即用链表形式表示所有的数据;

3.控制结构基于函数的复合,以形成更复杂的函数;

4.用递归作为描述问题和过程的方法;

5.用LISP语言书写的EVAL函数既可作为LISP语言的解释程序,又可以作为语言本身的形式定义;

6.程序本身也同所有其他数据一样用表结构形式表示。

已经证明:LISP的这些特点是解决人工智能核心问题的关键。它和后来由英国伦敦大学的青年学生柯瓦提出、由法国马赛大学的考尔麦劳厄(AlainColmerauer)所领导的研究小组于1973年首先实现的逻辑式语言PROLOG并称为人工智能的两大语言,对人工智能的发展起了十分深远的影响。

查看全文
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论