Ⅰ scheme有什么实际应用吗
Scheme 是学院派的编程语言,实际应用较少,主要有以下几个:
教学用途,例如 Scheme 曾经是 MIT SICP 课程使用的语言
图像编辑软件 GIMP,GIMP 使用 Scheme 作为脚本语言
GNOME 桌面环境, 作为脚本语言(用的是 GNU Guile 实现)
Google App Inventor for Android
Scheme 的函数库较少,开发大型软件不方便,所以就目前的情况看,不会有公司用 Scheme 开发大型软件。按照 Scheme 语言的"极简"设计思想(Scheme 语言标准只有 50 页,C++ 一千多页),Scheme 将来也不会有很多实际运用。
PS:
Scheme 是 Lisp 的方言,不仅 Scheme 应用很少,Lisp 语言实际运用都不多,远远敢不上 C/C++, Java。
Scheme 的编程思想有些已经渗透到其它编程语言中,这其实也算它的运用。
Ⅱ scheme,cl和python的区别
我们使用非lisp编程,写代码来解决重复出现的问题。
而我们使用lisp编程,却有更方便的能力,写代码来生成重复出现的解决相同问题的代码。
将代码像数据一样进行处理,是lisp有别于其他非lisp语言的本质特征。
其他语言,虽然也可以这样做,但却会比lisp走更远的路。 而且,按照lisp程序员的视角来看,python及它的那些函数库,可能只不过是对lisp的一种扩展罢了。
但是,只打算学好lisp一门语言而其他语言都不闻不问,是很困难的。
这正如,只打算学会微积分,而加减法却不了解,也是很难的一样。
说说cl
排序: sort
读取文件: with-open-file
对常见XX对象进行XX常见操作: oop 在lisp中用的不多, 至少我很少用
向数组添加元素: 性能要求不高直接用list
对字符串进行各种操作: 这个要自己实现,或者在网上找些库,或者直接用正则, 不会花太多时间。
谁说CL文件, 数据处理不实用,我最近一直用cl做文件以及数据的处理.
Ⅲ 怎么理解编程中的scheme
一般编程领域多取方案、计划这两个意思。
Ⅳ scheme是什么意思
scheme
[英][ski:m][美][skim]
vt.& vi.策划,图谋;
n.计划; 体系; 阴谋;
vt.设计,计划; 谋划,图谋;
vi.密谋,制定计划;
第三人称单数:schemes过去分词:schemed复数:schemes现在进行时:scheming过去式:schemed
例句:
1.
Colombia has set up a similar scheme.
哥伦比亚也颁布了类似的计划。
2.
But the scheme is controversial.
但这个方案存有争议。
3.
A european-level bank deposit-guarantee scheme could avert bank runs.
欧洲水准的银行存款担保体系无法阻挡出现银行挤兑。
4.
Sceptics will scoff that the indian government is far too incompetent to implement such a scheme.
怀疑论者不无嘲讽的声称印度政府远没有能力推行这样一个身份体制。
5.
As a businessman, mr carroll loves the economics behind this scheme.
作为商人,carroll先生热衷于该策划后的经济利益。
Ⅳ 编程学习里什么是scheme 啊
简言之,不论是面向对象编程还是函数式编程,如果你走了极端,那都是错误的。面向对象编程的极端是一切都是对象(纯面向对象)。函数式编程的极端是纯函数式编程语言。 面向对象编程的问题 面向对象的问题在于它对“对象”的定义
Ⅵ 当程序员只能随身携带一款编程语言时怎么选择
请注意,Ned并不孤单。许多着名的大学在第一年的计算机科学课程里都有Scheme。在实际的工作中也有许多人需要它。事实上,我敢说,如果你的大学只设立了C++或者Java的课程,你的学校可能不咋的,但如果你们学校有Scheme的课程,那很可能你幸运的去了一个一流的学校。
Scheme是Lisp语言的一个分支,它是现今仍然在使用的最古老的编程语言之一。它提供了最少的语法和极少几个操作符。同样重要的是,Scheme支持函数式编程范式,这意味着它可以用数学函数表达式来编程。任何计算问题都可以使用称为兰布达演算的独特数学符号来表达,从某种意义上说,Scheme算是一个兰布达演算的解析器。
对于学生来说,这意味着Scheme可以让你专注于算法本身,而不是语言的语法。主流的编程语言如Java和C++等都有着极其复杂的语法,这往往是由于语言在演变过程中不断增加的新功能带来的。它们迫使你学习许多种不同的控制结构和处理不同问题的不同方法。但Scheme不是这样,它为每个计算问题提供同样的简洁而可预见的语法。“我感觉Scheme在给电脑下指令时更自然,相对于其他语言,”Ned说。
不过,Scheme?我无法看到它的优势。为今后的编程学习打下简单而坚实的基础确实很好,但是当我15岁时,我对真正的逻辑和数学没有什么兴趣。我着迷的只是怎样让电脑完成各种各样好玩的工作——我要很遗憾地说,“执行兰布达演算的算法”,没意思;而编个视频游戏?很酷。
当然,除了运行算术题,你也可以让Scheme做更多。今天,它已经是一个正式的语言,可以在几乎所有平台上运行。
Ⅶ 计算机语言中 scheme 里set!的用法
set!这个东西主要是产生了副作用,(你网上可以搜一下函数式编程+副作用)
一般来说纯函数式语言是不允许有副作用的,scheme里面你在一个()里面做任何事情原则上都不会影响()外部变量的状态。不过set!不一样,所有带!号的函数有可能对()外部的状态产生影响,举个例子
(define (hack a)
(begin (set! a (- a 10) )
a)
)
###
(set! a (- a 10) )改变了a的值,你用其他不带!符号的函数来替换这句,就不能达到改变a的值的效果。
Ⅷ fluent scheme用的什么语言(C语言还是什么)UDF又用的什么语言scheme和UDF有什么区别和联系
scheme是脚本语言,更接近于VB,UDF用的是C语言!
Ⅸ 求助Scheme编程题
(define-struct together (a b))
(define (new-list b x)
(cond
[(empty? x) empty]
[(not (equal? b (first x))) (cons (first x) (new-list b (rest x)))]
[else (new-list b (rest x))]))
(define (times b x c)
(cond
[(empty? x) c]
[(equal? b (first x)) (times b (rest x) (+ 1 c))]
[else (times b (rest x) c)]))
(define (func x)
(cond
[(empty? x) empty]
[else (cons (make-together (first x) (times (first x) x 0))
(func (new-list (first x) x)))]))
啊,刚才给的版本main function名称不对,现在改好了。我也是刚入学的大一新生,指教啦
Ⅹ Scheme和Common Lisp各自的开发环境是什么
在任何一个开发社区提问这个问题, 恐怕都会引起激烈的争论. 一定程度来说, 这是一个 个人偏好问题. 下面是我的看法.
首先, 我们知道 scheme 也是一种 lisp 方言, 因此下文用 lisp 来泛指各种 lisp 方言.
选择 common lisp 还是 scheme, 我认为这要看你学习 lisp 的目的. Eric Raymond 在 "如何成为一名黑客" 一文中说过: "Lisp 很值得学习. 你掌握它以后, 会感到它给你带来的极大的启发. 这会大大提高你的编程水平, 使你成为一个更好的程序员 ". 如果你仅仅以此为目的, 而不打算把 Lisp 作为自己日常开发甚至商业开发的语言, 不妨从更简洁一些的 scheme 学起. 在我看来, scheme 更像是一种教学型语言, MIT 的两本着名教材 SICP (Structure and Interpretation of Computer Programs) 和 HTDP (How to Design Programs) 都是以 scheme 为基础的.
如果你打打算把 lisp 作为自己今后的主要开发语言, 那么就一定要学学 common lisp 了, 这绝对是一个强大的语言, 除了语言本身的强大, 还有丰富的库. 图形界面, 服务器什么的各种应用都可以做.