アカウント名:
パスワード:
OSの起動スクリプトみたいに、トラブル時でもなるべく動いてほしいスクリプトは/bin/shで書くけど、自分の日常的な作業をこなすときはここ5年くらいはもっぱらRubyだなあ。シェルスクリプトって、デバッグするのがとにかく難しいよね。echoくらいしかデバッグの道具がないからさ(俺が知らないだけ?)
最近はSBCLで日本語がけっこう不自由なく使えることがわかり、またPerl互換な正規表現エンジンもCommon Lispにあるとわかったので、日常的な仕事はSBCLでやるようにして身体を関数型言語にならしていこうとしてる。Clispをログインシェルにできるところまでいけば、最高だけどなあ。
昔、テキストを処理するフィルタを書くときにはAWK(jgawk)を使ってたんですが、AWKだと複数のファイルから入力をとるような場合にトリッキーな処理が必要になるんですよね。 Perlをおぼえてみたら、複数のファイルから入力をとる場合でも自然に書けたんです。それで、最初のころは「シンプルなフィルタはAWK」「それ以外はPerl」と使い分けていたのですが、考えてみると使い分ける理由がないんですね。 AWKで書けることはPerlでも十分にシンプルに書けたので、メモリ消費量とか、Perlはどのサーバにもインストールされているわけじゃないとか、そういう理由はあるけど、もうなんでもPerlでいいや、ってなった。 AWKで書いていると、機能を拡張しているうちにAWKでは難しくなることがあるんだけど、Perlにはそれがなかったから、最初からPerlで書く方が「袋小路」にはまらないだけいいな、ってね。 そんなわけで、シェルスクリプトも、Perlで置き換えた。 その後、PerlでできることはRubyでもできる、と気づいてRubyに移行して、今はLispへ移行中って感じですね。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
「毎々お世話になっております。仕様書を頂きたく。」「拝承」 -- ある会社の日常
シェルスクリプトはたしかにむずい... (スコア:1)
OSの起動スクリプトみたいに、トラブル時でもなるべく動いてほしいスクリプトは/bin/shで書くけど、自分の日常的な作業をこなすときはここ5年くらいはもっぱらRubyだなあ。シェルスクリプトって、デバッグするのがとにかく難しいよね。echoくらいしかデバッグの道具がないからさ(俺が知らないだけ?)
最近はSBCLで日本語がけっこう不自由なく使えることがわかり、またPerl互換な正規表現エンジンもCommon Lispにあるとわかったので、日常的な仕事はSBCLでやるようにして身体を関数型言語にならしていこうとしてる。Clispをログインシェルにできるところまでいけば、最高だけどなあ。
Re:シェルスクリプトはたしかにむずい... (スコア:1)
けれども、外部コマンドを多用するスクリプトを書くなら
シェルスクリプトがいいなぁ、って考えるのは、頭が固いんですかね。
1を聞いて0を知れ!
Re:シェルスクリプトはたしかにむずい... (スコア:1)
昔、テキストを処理するフィルタを書くときにはAWK(jgawk)を使ってたんですが、AWKだと複数のファイルから入力をとるような場合にトリッキーな処理が必要になるんですよね。
Perlをおぼえてみたら、複数のファイルから入力をとる場合でも自然に書けたんです。それで、最初のころは「シンプルなフィルタはAWK」「それ以外はPerl」と使い分けていたのですが、考えてみると使い分ける理由がないんですね。
AWKで書けることはPerlでも十分にシンプルに書けたので、メモリ消費量とか、Perlはどのサーバにもインストールされているわけじゃないとか、そういう理由はあるけど、もうなんでもPerlでいいや、ってなった。
AWKで書いていると、機能を拡張しているうちにAWKでは難しくなることがあるんだけど、Perlにはそれがなかったから、最初からPerlで書く方が「袋小路」にはまらないだけいいな、ってね。
そんなわけで、シェルスクリプトも、Perlで置き換えた。
その後、PerlでできることはRubyでもできる、と気づいてRubyに移行して、今はLispへ移行中って感じですね。