免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123
最近访问板块 发新帖
楼主: sanbiangongzi
打印 上一主题 下一主题

请教基本概念 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2012-11-16 17:55 |只看该作者
回复 19# OwnWaterloo

我有什么不敢承认的,我顶多笑笑~
你继续吧。

   

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
22 [报告]
发表于 2012-11-16 17:57 |只看该作者
回复 8# OwnWaterloo

前面scheme的优势说掉了一个。。。 尾调用优化。。。
我知道的语言使用严格求值的语言只有scheme, lua, scala是语言保证支持的。 cl是implementation details, 一些支持一些不支持。
在非严格求值的语言里尾调用的含义不一样,没有可比性。

这里个人认为学院派是对的,有语言保证的尾调用优化与没有语言保证的尾调用优化,代码的写法都完全不一样。


scheme的优势:尾调用优化+continuation,没了。
lexical scope only? 前面提到的3种lisp,el,cl,clojure都是混合型的。 el在24之前是默认dynamic, lexical 要麻烦一些。 24之后就与cl, clojure一样是默认lexical, 也支持dynamic。
lisp-1? 这只是权衡,与lisp-2之间各有优劣。
卫生宏? make simple thing simpler, make hard thing harder。
Minimalism? 理论上是对的, 实践里行不通。 roll your own的言外之意就是还会有roll their own。
本来语言与host环境(大部分都是C)之间的boundary就是个麻烦事情,Minimalism还会导致各种roll xxx own之间的boundary。
连个data structure库都要东拼西凑,搞毛啊。

而其他的feature稍微现代点的语言里哪个没有?


总之,scheme适合学习,学习语言的core可以精简到什么程度,可以在这些尽量减少限制的core上实现各种features。
但实践和学习是两码事。实践里scheme"语言"这种哲学行不通。而如果是scheme的"某种实现",投入实际使用前还请三思而行。

论坛徽章:
2
青铜圣斗士
日期:2015-11-26 06:15:59数据库技术版块每日发帖之星
日期:2016-07-24 06:20:00
23 [报告]
发表于 2012-11-16 18:00 |只看该作者
回复 21# NalaGinrut

嗯,如果笑笑就能让你得到满足,得到自我认同了,你继续吧,我也不能拿你怎样。

论坛徽章:
0
24 [报告]
发表于 2012-11-16 18:02 |只看该作者
回复 23# OwnWaterloo

我说完我该说的,当然满足了

   

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
25 [报告]
发表于 2012-11-21 10:35 |只看该作者
技术人员交流,多扯些有用的,干货拿出来观众自然能分清孰是孰非。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP