2010年8月26日木曜日

AWKプログラムを他の言語に変換する方法。AWK to Perl, C, C++ - AWK

AWKを入手する
「AWKプログラムを、もう少し速くしたいなあ」と思った時、プログラムを他言語に変換してしまう荒業もあります。
to_dkでは試していませんが、AWKについてWeb検索した時に見かけた、他言語への変換ツールや、変換補助ツールについて纏めました。

o 他にもあるかもしれません。見かけた時に追加します。
o 興味のある方はWeb検索。


**** AWKプログラムを他言語に変換するツール
o 配布ページは、全て英語ページでした。
o でも、Web検索すると、日本語で説明しているページが見つかると思います。

** AWK to Perl
o a2p
   + Perlの一部として配布されています。
   + CGIが利用可能なレンタルサーバーには、既に入っているかもしれません。

** AWK to C++
o An AWK to C++ Translator (POSTSCRIPT)
   + (2011年7月現在、リンクが切れているみたいです。)
   + ▽Brian Kernighanのホームページからのダウンロードは、リンクが切れているみたいです。
   + Brian Kernighanさんは、AWKの開発者の1人です。
   + 目的のリンクは、ページの下の方にあります。An AWK to C++ Translator (POSTSCRIPT)

** AWK to C
o ▽Awka for Windows
   + Windows版Awkaの実行ファイルを入手出来ます。
o ▽Awka
   + Awka本家です。ソースコードの提供ですので、自分でビルドして使います。
o その他、活動停止中で、FTPや他の方の改造版を入手する事が出来るものもありました。
   + awkcc -- 現在は、保守されていないみたいです。
   + awk2c -- 現在は、保守されていないみたいです。

o 情報源は ▽comp.lang.awk FAQです。(英語です)
   + ツール使用時の注意事項も、ちらっと書いてありました。
   + 短い文章ですので、英語が苦手な方も、何となく分かると思います。


**** メモ
o 各ツールが変換する時、特定のAWK処理系を想定しているみたいです。
   + ツール想定外の処理系用に作ったAWKプログラムを変換する場合、変換前後に手作業が入る事になると予想します。
o C言語や C++ が使える方は、ソースコードを自分で変換した方が速くなりそうな雰囲気です。
   + 変換ツールは、型を置き換える部分の変換が弱いみたいです。


==
関連ページ:
    ▼AWKを入手する
    ▼AWK
    ▼制作メモ
    > Windows版AWKの配布元一覧(awk, mawk, Gawk)
    AWK本家のホームページの場所
    ▼AWKプログラムを動かす
(2011年7月27日追加。Awka for Windows)