アカウント名:
パスワード:
Web開発でPerlの案件が減ってPerlによくあるぐじゃぐじゃコードを見かけることが少なくなった。
しかしそこに現れた新たな妖怪JavaScript!
実行速度のためという名目もあって、1つの関数が数百行から千行単位も当たり前、そこに1文字変数が乱立し、十数段にもなるif文ネストの波がうねりまくる。
書いた本人はいいだろうが、チェックしたり修正するほうには拷問に近い。
JavaScriptもどうにかならんかなあ・・・替りが無いからしょうがないけど。
ヒトが書いていない場合も有ったりするする。
というか高度に最適化されたコードの逆アセンブル結果を見て「なんじゃこのグチャグチャなソースは」と言っているようなもの。
Dartじゃ駄目ですかね……
PHPもだな。
Perlがなんで人気があったのかよくわからん省略しすぎたコードは自分のですら見返したくないのに
Cとshとawk/sedをごたまぜにしてLisp風味もちょっとだけ加えたことで、perl自体を詳しく勉強しなくてもいずれかの言語を知っているだけで簡単にスクリプトが書けるのが最大の魅力でした。正規表現エンジンが(当時としては)爆速だったのも人気に拍車を掛けました。また、言語全体としてのパフォーマンスも、当時はrubyはもちろんpythonもしのぎ、スクリプト言語の中ではトップクラスでした。(今はJavascriptなどに大きく後れを取ってますが)
たまたま最初にそれが使われたからでしょ。
もう20年近くも前か、初めてCGIを書いた時はCGIはperlでやるものだと思って別の言語で書こうなんて考えもしなかった。
>省略しすぎたコードは
まさに人気が出た理由も、そして人気をなくした理由もコードを省略して書けるってことに尽きるんじゃないでしょうか。徹底的に拡張された正規表現がハッカーを惹きつけたのは間違いないでしょう。
ただ、Perl 5流のオブジェクト指向プログラミングは逆に冗長になりますがw(でも個人的には嫌いじゃないw)
最近Perlで!という指定のコーディングがあったので強引にオブジェクト指向風に持っていって実装してみました
コンストラクタではblessしてメンバ関数の一行目では$this = shiftしたりと
Perlはもともとはシステム管理者がよく行うようなテキストのパターン処理を行うための用途のためのものです。それまでは awk, sed, gerp, bsh, csh などの、コンパクトなツールの組み合わせでやられていました。これらのツールの機能を内包した環境と言えるものが Perl です。したがって、本来の用途で比較すべき相手は bsh 等であり、それらよりは便利だったりしませんか?PerlがCGI用途に使われるようになったのは、後の時代の話ではないかと思います。
ちなみに言語としての Perl ですが、曖昧性・いいかげんさは Basic 並ですが、生産性・機能性は Basic を圧倒していると思います。Basic よりは上と言えるのではないでしょうか。
もっとも、Basic が酷すぎるだけの話かもしれませんが、そう言えるほど、現代のコンピュータ言語が進化したということなのかもしれません。
フレームのもととして、マイナスモデされてますが、フレームになる内容でないし、現にフレームは起きていないし、モデ日が「04月21日 9時05分」とトピックアウトした後なので、何のためのマイナスモデか疑問に感じましたよ。
>1つの関数が数百行から千行単位も当たり前、>そこに1文字変数が乱立し、十数段にもなるif文ネストの波がうねりまくる。
これを言語仕様で抑制できるんでしょうか。反論ではなく、どういう言語ならできるのかという興味で。
Excel の if 関数のネストが 7 段に制限されているのは凶悪だと思います。
おいおいw情報量が多いほど最適化出来るのは当たり前だろ、、、、、、
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike
Perlのグダグダを引き継ぐJavaScript (スコア:0)
Web開発でPerlの案件が減ってPerlによくあるぐじゃぐじゃコードを見かけることが少なくなった。
しかしそこに現れた新たな妖怪JavaScript!
実行速度のためという名目もあって、
1つの関数が数百行から千行単位も当たり前、
そこに1文字変数が乱立し、十数段にもなるif文ネストの波がうねりまくる。
書いた本人はいいだろうが、チェックしたり修正するほうには拷問に近い。
JavaScriptもどうにかならんかなあ・・・替りが無いからしょうがないけど。
Re:Perlのグダグダを引き継ぐJavaScript (スコア:2)
ヒトが書いていない場合も有ったりするする。
Re: (スコア:0)
というか高度に最適化されたコードの逆アセンブル結果を見て「なんじゃこのグチャグチャなソースは」と言っているようなもの。
Re:Perlのグダグダを引き継ぐJavaScript (スコア:1)
Dartじゃ駄目ですかね……
Re: (スコア:0)
PHPもだな。
Re: (スコア:0)
Perlがなんで人気があったのかよくわからん
省略しすぎたコードは自分のですら見返したくないのに
Re:Perlのグダグダを引き継ぐJavaScript (スコア:1)
Cとshとawk/sedをごたまぜにしてLisp風味もちょっとだけ加えたことで、perl自体を詳しく勉強しなくてもいずれかの言語を知っているだけで簡単にスクリプトが書けるのが最大の魅力でした。正規表現エンジンが(当時としては)爆速だったのも人気に拍車を掛けました。また、言語全体としてのパフォーマンスも、当時はrubyはもちろんpythonもしのぎ、スクリプト言語の中ではトップクラスでした。(今はJavascriptなどに大きく後れを取ってますが)
Re: (スコア:0)
たまたま最初にそれが使われたからでしょ。
もう20年近くも前か、初めてCGIを書いた時は
CGIはperlでやるものだと思って別の言語で書こうなんて
考えもしなかった。
Re: (スコア:0)
>省略しすぎたコードは
まさに人気が出た理由も、そして人気をなくした理由もコードを省略して書けるってことに尽きるんじゃないでしょうか。徹底的に拡張された正規表現がハッカーを惹きつけたのは間違いないでしょう。
ただ、Perl 5流のオブジェクト指向プログラミングは逆に冗長になりますがw(でも個人的には嫌いじゃないw)
Re: (スコア:0)
最近Perlで!という指定のコーディングがあったので
強引にオブジェクト指向風に持っていって実装してみました
コンストラクタではblessしてメンバ関数の一行目では$this = shiftしたりと
Re: (スコア:0)
Perlはもともとはシステム管理者がよく行うようなテキストの
パターン処理を行うための用途のためのものです。
それまでは awk, sed, gerp, bsh, csh などの、
コンパクトなツールの組み合わせでやられていました。
これらのツールの機能を内包した環境と言えるものが Perl です。
したがって、本来の用途で比較すべき相手は bsh 等であり、
それらよりは便利だったりしませんか?
PerlがCGI用途に使われるようになったのは、
後の時代の話ではないかと思います。
ちなみに言語としての Perl ですが、
曖昧性・いいかげんさは Basic 並ですが、
生産性・機能性は Basic を圧倒していると思います。
Basic よりは上と言えるのではないでしょうか。
もっとも、Basic が酷すぎるだけの話かもしれませんが、
そう言えるほど、現代のコンピュータ言語が進化したと
いうことなのかもしれません。
Re:Perlのグダグダを引き継ぐJavaScript (スコア:1)
フレームのもととして、マイナスモデされてますが、
フレームになる内容でないし、
現にフレームは起きていないし、
モデ日が「04月21日 9時05分」とトピックアウトした後なので、
何のためのマイナスモデか疑問に感じましたよ。
Re: (スコア:0)
>1つの関数が数百行から千行単位も当たり前、
>そこに1文字変数が乱立し、十数段にもなるif文ネストの波がうねりまくる。
これを言語仕様で抑制できるんでしょうか。
反論ではなく、どういう言語ならできるのかという興味で。
Re: (スコア:0)
Excel の if 関数のネストが 7 段に制限されているのは凶悪だと思います。
Re: (スコア:0)
そうすりゃ解釈系が十分に最適化してくれるからユーザは読みやすさ重視で書いて良いってことになるかと。
Re: (スコア:0)
おいおいw情報量が多いほど最適化出来るのは当たり前だろ、、、、、、