こんばんは、川合です。
ええと、とある人たちとGO計画について話題になって、GOはいいじゃ
んということになりました。それで、だったら、gccの本家の人たちに
報告した方がいいんじゃないかと言われました。
と、そういうことで、ここでGO計画をまとめてみることにします。
---
・名称:GO計画(じーおーけいかく)
・目的:OSASK版gccを作るためにgccを改造すること(C、C++)
・ライセンス:gccソースに由来する部分はGPL
僕が付け足したソース部分はKL-01
バイナリ全体としてはGPL(分離が難しいので)
・現在のGOの特徴(go_0004w)
1.コンパクト
2.入出力部分が一元化されている
3.GO自身が参照するライブラリが極めて少ない
4.win32版しかない
---
win32版gccといえばMinGWがある。MinGW v3.2とgo_0004wの違いは?
・MinGWのソースはPOSIX環境版しかない。すなわち、MinGWはたとえば
cygwin上でしかるべきオプションを付けてgccのソースをコンパイル
することで生成する。・・・対して、GOはGOのソースをそのままwin
32上でコンパイルすれば得られる。makeのために他の環境を必要とし
ない。win32内で完結している。
・MinGWよりもコンパクトである
cpp0.exe MinGW 93.0KB -- 37.5KB go_0004w
cc1.exe MinGW 2.50MB -- 852KB go_0004w
cc1plus.exe MinGW 2.94MB -- 1.00MB go_0004w
librarian MinGW 676KB(338+338) -- 4.00KB go_0004w
機能的にはなんら不足はない(と思う)
(ライブラリアンは機能的に不足していますが、とにかくライブラ
リはちゃんと作れます)
(MinGWから上記部分だけを交換しても問題なく動くでしょう)
・MinGWよりも他のOSに移植するための手間が少ない
(入出力部分が一元化されているから)
(参照するライブラリが少ないから)
・コンパイル時間表示やマルチバイト文字の拡張性などは削られている
部分もあります。(MinGWは当然ここを削ってない)
(逆に言うと、ほとんどの人が使わない&全く使われていないこれら
の機能を切った分だけ軽くなっているともいえます)
(MinGWなどではマルチバイト拡張部分を使えばSJISも通るのかもし
れませんが、誰もそういうパッチを作っていないみたいですね)
---
まずはこういうことを報告してダウンロードURLを連絡すればいいと
思うんですが、誰か、gccの日本人向けの窓口みたいなのをご存知の方
はおられないでしょうか?
この件について、ご意見やご感想があれば、お寄せください。
それでは。
--
川合 秀実(KAWAI Hidemi)
OSASK計画代表 / システム設計開発担当
E-mail:kawai !Atmark! imasy.org
Homepage http://www.imasy.org/~kawai/