又见烂东西
以前没事看看boost,里面有一个spirit 库专门用来做词法分析的库。里面运用了,大量的操作符重载和模板相关的运算,来达到用C++的语法来写ebnf的代码。
这里面ebnf语法是他自已创造的,为了兼容C++的操作符重载,以及模板,搞出来的奇怪东西。
用这个库写程序,简直就是超越你对C++的想象。在这里C++完全不再是普通人用到的C++,没有一个类不是
操作符重载,如果有一个不是那么你的程序将出现奇怪的关于模板实列化的错误。
今天看看D语言的项目,http://www.dsource.org/projects/ebnf,又发现一个试图用操作符重载和模板来创造
一个新的ebnf的项目。
D语言爱好者,没事都吹,D语言简化了C++的模板,操作符重载方面的东西,没想到还是有人创造这样的
烂东西。
感觉一个语言好不好,很多时候,还是要看拿他去做什么事。
像现在这个想通过操作符重载和模板来做这么多事,已经超越语言设计者本身设计这种语法的初衷了,
所以不好用也是正常的.
我记得某大师指导我们,一般不要重载*,&,这样会加大这个应用这个类的复杂性。http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-6642517835881977571&page=RSS%3a+%e5%8f%88%e8%a7%81%e7%83%82%e4%b8%9c%e8%a5%bf&referrer=http://c.live.com/c.gif?NC=31263&NA=1149&PI=73329&RF=&DI=3919&PS=85545&TP=l-xiao187.spaces.live.com&GT1=L-xiao187
页:
[1]