
语言设计的艺术——读《松本行弘的程序世界》
Ruby语言的发明者松本行弘在《松本行弘的程序世界》一书中对Ruby语言的设计思想、各种语言特性的对比、开发效率的影响等方面对了详细的分析和实例分享,从中可以看到一门编程语言在设计之初所面临的各种抉择,虽然我们可能不会创造一门新语言,但是其中的思想能够帮助开发人员更理性的看待语言的优缺点和对软件开发效率的影响。

Ruby语言的发明者松本行弘在《松本行弘的程序世界》一书中对Ruby语言的设计思想、各种语言特性的对比、开发效率的影响等方面对了详细的分析和实例分享,从中可以看到一门编程语言在设计之初所面临的各种抉择,虽然我们可能不会创造一门新语言,但是其中的思想能够帮助开发人员更理性的看待语言的优缺点和对软件开发效率的影响。

Werner Schuster用一个简单的事例,带我们认识了如何使用元编程的方式为Ruby类增加类似Java的properties支持。介绍了一些应用契约设计和可插拔类型系统的提高性能的原则。
.jpg)
Aaron Erickson谈了LINQ、表达式树,并介绍了他对对象建立的LINQ扩展索引(i4o)。i4o能够让我们对位于内存中的集合数据进行索引,并能够与LINQ配合使用。另外他还提到表达式树如何于LINQ交互,如何在特定的场景下配合使用等。
Colm是一种新的编程语言,设计它是为了对计算机语言进行分析和转换。Colm的主要贡献在于解析方法。Colm是由Adrian Thruston设计的,那也是他的博士研究工作的一部分。
Pedro Molina发布了他的新语言工作台(Language Workbench)Essential的beta版。不同于其他的工作台,Essential能够解析模型定义,使得对模型驱动解决方案的设计与重构更加快速和容易。
Lisp风格的JVM语言Clojure正快速得到关注。原因之一无疑是其解决并发问题所采用的方法,该方法建立于软件事务性内存(STM)之上。Stuart Halloway为Pragmatic Programmers出版社撰写了第一本关于Clojure的书籍,我们有幸对其进行了采访。
Meta Programming System(MPS)是JetBrains开发的面向语言编程的新工具。开发者可以用它扩展编程语言,也可以用它为企业应用创建领域特定语言(DSL)。JetBrains开发团队近日宣布推出MPS的beta版。
将常见可重用的行为以定制注解的方式添加到Java应用中是一种非常棒的方式。来自于New Aspects的John Heintz在最近举行的No Fluff Just Stuff(NFJS)Java研讨会上讨论了向Java注解添加行为的设计技术。