我刚开始在大学学习计算机科学,他们用Scheme教授编程。
由于我过去六年已经学习了C++,所以Scheme对我来说有点奇怪。我的讲师告诉我,你可以用它编写任何可以用C或Java编写的程序。
真的有人在使用这种语言吗?
我刚开始在大学学习计算机科学,他们用Scheme教授编程。
由于我过去六年已经学习了C++,所以Scheme对我来说有点奇怪。我的讲师告诉我,你可以用它编写任何可以用C或Java编写的程序。
真的有人在使用这种语言吗?
Square USA使用它制作电影《最终幻想》。
这是他们发表的一篇文章:将事物粘合在一起- Scheme在实时CG内容制作中的应用。
从那篇文章中:
在SIGGRAPH 2000和2001,我们,Square USA研发团队展示了来自全计算机生成电影《最终幻想:灵魂之城》的场景的实时渲染。
[...]
我们发现在实时渲染引擎中嵌入Scheme解释器非常有帮助。
Scheme会让你对编程有不同的思考方式。请尝试保持开放的心态!
我目前正在学习阅读Abelson和Sussman在1986年在惠普公司提供的SICP演讲,以及由Brian Harvey提供的Cal-Berkeley CS61A播客(使用同一本书进行教学),并边学边使用Scheme编程语言。这种体验让我开阔了全新的思路。对于像我这样没有接受过正规计算机科学高等教育的人,我强烈推荐你去学习。
我曾经参与过一个使用 Scheme 代码的项目,这是一项非常酷的技术。Scheme有一个很棒的功能,就是可以动态重新编译以自我优化执行速度 (详见此文)。我认为这离天网只差一步之遥。
我在大学时用过它,但自那以后就没怎么用过了。
如果您对递归不太熟悉,我强烈建议学习Scheme或Lisp。您将学会对各种事物进行递归思考。递归总是正确的方法吗?当然不是。但这是一个有用的工具。
我总是鼓励开发人员学习新语言。您学习并熟练掌握的语言越多,您就越能抽象地思考问题。您与特定语言的联系越少,您就越有可能选择最适合解决问题的语言。
除了个人经验外,您能得到的最接近客观猜测的是TIOBE指数,目前将LISP / Scheme排名第21,市场份额为0.470%。 TIOBE使用搜索引擎结果创建列表。显然,您需要对列表(以及任何其他关于Scheme使用的猜测)持保留态度。
不要害羞地推销:请查看PLT Scheme。他们创建了一个不错的社区,为许多平台提供了他们的IDE,并为您提供了一个不错的库选择。
这是一篇介绍商业应用程序中PLT Scheme的文章:http://www.untyped.com/downloads/icfp068-welsh.pdf。
在俄罗斯,我们使用PLT Scheme开发软件,并且销售情况良好 ;)