看板Programming
标 题Re: [问题] 如何学写COMPILER? [纯抛砖引玉]
发信站中央大学松涛风情资讯站 (Wed Apr 18 11:47:58 2007)
转信站ptt!ctu-reader!ctu-gate!news.nctu!news.ncu!news.csie.ncu!Evergreen
> ==>发信人: [email protected] (汀), 信区: programming
> > 嗯,所以 GCC 不是工业强度等级的软体,纯粹就只是一个教学用具而已,对吧? XD
> 是的,
> GCC 即使到 4.3,
> 依然不是一个工业强度等级的软体,
> 它是一个原始码高达 70 多万行的大型软体,
> 但它使用难以维护和 team work 的 C 撰写,
> maintain 其主干 source code 的人也多以网路形式交流,
> 对各 platform 的 backend 支援也大都是由外人撰写,
> 其稳定度一直以来都是相当堪虑。
> 上面的理由可能很难说服某些人,
Compiler 就是资讯界的工作母机, 要够精良可靠这是一定要的.
GCC 总是代表着 free software 的精神, 虽然是靠网路团队维护, 但
也是力争可持续维护, 至少, 目前一直是展示跨平台与可携性.
> 所以也能换一种说法;
> GCC 目前已经面临到一个很大的瓶颈,
> 也就是对 VLIW architecture 的贫弱支援能力,
> instruction scheduler 跟 register allocator 紧密相关,
> 但它的 register allocator 是 legacy code,
> 几乎打从 GCC 有这份 code 以来它就几乎没有什麽人再动过,
VLIW 隐藏着平行执行的构想, 这种性质一向就没有绝对最
佳的性质, 就像 Compiler 编出的码, 还是有人会用组语去 tune,
不过, 有问题就有人去求解, 至於是否该商业专业化, 可以这样去
思考, 如果是有简洁有效的方法存在, 又有重大商业利基的, 大概
都不会先以 free software 呈现, 就是因为难搞定, 所以大家来
集思广益.
确实也没错, 不够好的工作母机送给别人也没人要, 但 GCC
确实也不是没人要, 只因先进们的理念订了这个 Free 的概念, 总
会引起误会, 但让 "很多人可以接手去发展软体" 绝对是有价值的
理想, 这反而是比较有机会可以永续发展.
如果要设计 Architecture , 要造先进的硬体, 有compiler
的技术与分工是不能免, 也不能少的.
--
◎ Origin: 中央松涛站□bbs.csie.ncu.edu.tw From: 140.115.6.234