在wikipedia上瞎逛,看一些[url=http://en.wikipedia.org/wiki/Coroutine]Coroutine[/url]相关资料,找到[url=http://en.wikipedia.org/wiki/Generator_(computer_science)]Generator[/url],其中的[url=http://en.wikipedia.org/wiki/Generator_(computer_science)#XL]XL例子[/url]很吸引我,于是找到了[url=http://xlr.sourceforge.net/concept/toplevel.html]它的主页(XL Programming Language)[/url](不容易找,还有一个同名的)。简单看了一下,感觉是很有趣的一门语言。
它的特色之一是Concept Programming,最大的特色是XL语言分为3层:
[list]
[*] XL0 定义了解析树的的文本形式
[*] XL1 基于XL0定义了命令式语言,这些语言可以作为XL的扩展来实现,这部分我没看明白,是把XL代码通过XL编译器生成C/C++/Java这些语言的代码,还是通过这一层来实现直接在XL里解析这些语言代码?如果是后者那就更加激动人心了。
[*] XL2 是基于XL1来编写的库
[/list]
继续探索中。
它的特色之一是Concept Programming,最大的特色是XL语言分为3层:
[list]
[*] XL0 定义了解析树的的文本形式
[*] XL1 基于XL0定义了命令式语言,这些语言可以作为XL的扩展来实现,这部分我没看明白,是把XL代码通过XL编译器生成C/C++/Java这些语言的代码,还是通过这一层来实现直接在XL里解析这些语言代码?如果是后者那就更加激动人心了。
[*] XL2 是基于XL1来编写的库
[/list]
继续探索中。