博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
scheme 初探
阅读量:6710 次
发布时间:2019-06-25

本文共 578 字,大约阅读时间需要 1 分钟。

hot3.png

学习 Common Lisp 太累了,想换个心情,学学 Scheme, 据说这门语言极其精简,又是 Lisp 的一大分支,还是学院派所大力推崇的。

开始的几个特性确实不错,

  1. 函数和变量使用一个命名空间。这个符合大多数语言的习惯。变量嘛,只有一个意思最好,二义性可不是什么好事。

  2. 词法变量和闭包的支持,这体现了语言开发者的实力,这个特性可是很重要的。

  3. 符号的命名规范挺人性化的,问号结尾就是判断类的函数,中缀箭头就是转换的意思。

但紧接着的几个特性就让人迷惑了。

  1. 符号对大小写不敏感,也就是分不清楚大小写。这是起初历史的原因导致的一个错误,竟然也继承了。唉,不知道怎么想的。

  2. 散列,查询表的实现,搞出了5,6个数据结构,程序员关心的是接口,而设计者关心的是实现,不要拿效率当借口,来显摆一下作者深厚的算法功力。这些东西本来就是动态变化的东西,红黑树和属性表的区别对于使用的人有什么要关心的吗?这么精简的一个语言,在这个方面就开始显摆的话,估计有用的东西也没几个了。

  3. 果然,大量学术的术语出现了,像读论文,给你个面子,就不说你缺乏的应有的特性了。应该有的特性搞的和迷宫似的,想靠第一面就把人吓到,来奠定权威。是愚蠢的表现。

还是老老实实学 Emacs Lisp 吧

转载于:https://my.oschina.net/u/563463/blog/162934

你可能感兴趣的文章
想开发 Android 分支?没门!
查看>>
《Web异步与实时交互——iframe AJAX WebSocket开发实战》—— 2.2 相关关键技术及工作原理...
查看>>
《Nmap渗透测试指南》—第1章1.5节Mac OS安
查看>>
重磅,企业实施大数据的路径
查看>>
linux之cp/scp命令+scp命令详解
查看>>
Spark 源码分析 -- BlockStore
查看>>
《C语言编程初学者指南》一1.7 创建并运行第一个C程序
查看>>
学习和使用 PHP 应该注意的10件事
查看>>
《当用户体验设计遇上敏捷》一3.3 设计的适合之处
查看>>
《众妙之门——网页设计专业之道》——1.4 如何与众不同
查看>>
多核编程入门
查看>>
《TensorFlow技术解析与实战》——1.6 机器学习的相关赛事
查看>>
大数据小说 | 如何用一小时看透一个初识的姑娘
查看>>
《Python面向对象编程指南》——1.10 一些其他的类定义
查看>>
《Android NFC开发实战详解》——6.3节Android NFC P2P开发实例
查看>>
Oracle ASM 翻译系列第八弹:ASM Internal ASM file extent map
查看>>
《Python密码学编程》——2.5 行号和空格
查看>>
JS页面后退并刷新
查看>>
《Ember.js实战》——2.5 Ember.js对象模型
查看>>
《响应式Web图形设计》一第13章 响应Web设计中的图像
查看>>