Programming 板


※ 引述《[email protected] ( )》之铭言: > hand-written 当然 faster, 不是说用 LL grammar faster, > 为了 faster 而用 3GL 硬干也是我说过的两种极端之一 > LL 跟 LALR 的 performance 并无差别, 一个 top-down 一个 buttom-up > 两种不同哲学, 就如开一家汽车工厂 > buttom-up 的会先卖轮胎, 引擎 (japan), top-down 先卖设计图, 车壳 (us) 差别是存在的, 因为 LALR 的做法是以 table 为主, 用 3GL 手工写大都是把 function pointers 塞到 struct array 里去, 然後被 lookup 出来的时候执行某一个, 这会让 C compiler 的 interprocedural analaysis 无用武之地, 相较之下呼叫 named function 的 recursive descent parser 会获得较佳的效率。 > 跟新旧无关, 最新的 STLport & uClibc 是会挂点的 > 要用旧的才能, 但 sigc++ 又不一定了 > 所以 toolchain 是现实问题, 不是 upgrade 会好的 > PIC, 8051, DSP 更是没别的 toolchain 可选 你要用新的 STLport, 那就要用新的 boost, 试试看 boost 1.35 吧。 不然的话就换 glibc 吧, 一般来说装不起 glibc 的系统, 通常连用 C++ 都不会考虑才对, 这其实不是 boost 可移植性不佳的问题, 而是 uclibc 的问题, 不能因为这样就把责任推托给 boost。 > yacc or ANTLR 等 4GL 在 compile time 就能找出该 grammar 有无定义失当 > spirit 无法, 是因为 C++ compiler 又不认识 LL, > 关 runtime 做多余的 checking 什麽事 如果你说的是这个, 那的确是不少人选 ANTLR 而不选 spirit 的理由, 如果指的是 type checking, 那 spirit 会有比较好的表现, 事实上, 我用 spirit 的习惯是先把 grammar 送进自己写的 tool 来 checking, 之後才会动手写 code, 毕竟保证 grammar 符合 LL 的需求并非 spirit 的责任。 换个角度来说, 像是 yacc 这种硬性限制在 LALR(1) 的 checking 方法是不太好的, 我一直对 yacc 为什麽不能弹性支援到 LALR(k) 感到不解, 为什麽只能吐出 error 告诉 programmer 这样不行, 而且这麽多年来都没有什麽重大改进和突破。 > C 只要一开始有一个 compiler 出来, 卖 library 针对它写了 library > 後面的 compiler 非要能跟它 link, calling convention 自然一样, > 要能用之前的 header file, data structure 自然一样 C 被设计出来的时间点和环境跟 UNIX 密不可分, C++ 没有这个些优势, 这才是主要原因, C++ 照着跟 C 相同的模式走, 但这个年代 internet 和 open source 盛行, ABI 不一样抓 source 重编就好了, library 造成的强制性减弱, C 并不是没有受到影响, 新出现的 architecture 如果没有制订 calling convention, 第一套 library 又是 open source 的话, 也不见得会有人去遵循第一套 toolchain 的做法。 > > 我不懂「只在内部使用」的意思, > 就是 C++ 没有把 class 做成 binary library 的机制 > 因为 static typing 不能继承 binary class, 也没 reflection 但是这个跟 C 一样只要有 header file 就能 call 到 object method 了啊, header file 有提供 base class 定义式就能继承它, virtual function call 也能正确的运作, 就算没把 class 本身编译进 object file 在这方面并不会有影响, 顶多就是不能做 reflection 罢了。 > 如果真的一切向方便看齐, obj C 远比 C++ 好用, > dynamic typing 也不过就比 static typing 多吃一点点 cpu, > apple 就是 objC 拥护者, 但是也没别人了 往方便看齐我倒是会选 Java 或 smalltalk。 > lisp/forth 的 template 也比 C++ 强大, 但是 C++ 为何较多人用? > 看起来要像 C 就是程式语言的包袱 这是因为 C++ 因写法而异效能可高可低, 最高可以逼近 C 甚至偶尔超越, C 能写的东西 C++ 都能写 (而不单是语言外观相像), Lisp 和 Forth 一开始却都没有这些背景。 -- ╔═══╗ ┼────────────────────────╮ 狂狷 Origin:[ 狂 狷 年 少 ] whshs.cs.nccu.edu.tw ╰─╮ 年少 ┼╮ < IP:140.119.164.252 > ╰─╮ ╚╦═╦╝ From:61-230-218-171.dynamic.hinet.net ─╨─╨─ KGBBS 遨翔"BBS"的狂狷不驯;属於年少的轻狂色彩
1F:推 meltice:为什麽这一连串的讨论我都有看没有懂... 122.146.34.139 04/29 20:14
2F:→ meltice:我只会用STL的vector 至於boost没用过 122.146.34.139 04/29 20:15
3F:推 liptonbin:K只要变大一点 table会变很大 速度也变 211.76.38.229 04/29 22:45
4F:→ liptonbin:慢~不是吗!? 211.76.38.229 04/29 22:48
5F:推 tinlans:如果是人手工的话就可以作弊不会变大, 61.230.218.171 04/30 06:17
6F:→ tinlans:tool 应该也要提供类似的方法才对啊。 61.230.218.171 04/30 06:17







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草
伺服器连线错误,造成您的不便还请多多包涵!
「赞助商连结」






like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP