Perlはまだ有用で実行可能な言語ですか?[閉まっている]


77

私はそれが以前に尋ねられたかもしれないことを知っていますが、ここでは何も行きません...

Perlはまだ有用と考えられるものですか?誰かが新しいプログラマーであった場合(プログラミングにまったく慣れていないか、ほんの数か月/数年の経験のいずれか)、Perlは学ぶ価値のあるものになるでしょうか?

Perlはまだ頻度で使用されていますか?まだ人気ですか?

または、Python、Ruby、PHP、ASP.NETなどの言語と比較して、Perlは消滅していますか?

基本的にこれは次のように要約されます。

  • まだ使用されているか、頻繁に使用されていますか?はいの場合、それは死にかけていますか?いいえの場合、それは戻ってきますか?
  • 学ぶ価値があるものですか?
  • 人気と使いやすさ/実行可能性の両方で、Pythonのような言語と需要がどのように比較されますか?PythonやRubyのような言語はPerlの代替と考えられますか?

また、Perlの新しいバージョンは実際にPerlコミュニティに大きな改善をもたらし、おそらく他の言語と比較してPerlをセンターステージに戻すでしょうか?

編集:

さて、ここに、より良い、言い換えられた質問があると思います:

Perlはまだ成長していますか、それとも「死にかけている」のですか?まだ学習して使用する価値のある言語ですか?他の言語と比較して、どのプロジェクトが本当に「輝いている」のでしょうか?Perlが選択すべき言語になっているのはなぜですか?基本的に、Perlは他の言語と比較して時代遅れになっていますか?もしそうなら、あなたはそれを変更するか、継続することを期待しますか?

そして、これまでに回答してくれたすべての人に感謝します。議論は本当に面白かったです!


12
TIOBEによると、見通しを失わないようにしましょう。RubyやJavaScriptをも上回るトップ10のままです。
ダニエル

回答:


60

まず第一に、曖昧さ取り除くことは常に良いことです。

Perlについて話すとき、企業はPerl 5について話しますが、遠い土地で、深く考えている島を超えて、委員会によるデザインの部族はまだPerl 6の巨大なスラブを調理しています(そして、それで書かれたエンジンで、ほとんど準備ができています)ハスケルと神々の涙に支えられ

それでは、今日、Perl 5は何に使用されていますか?

  • レガシーWebシステム/イントラウェブ -死なないものもあります

  • データマイニング/統計解析 - Perlの正規表現エンジン、たとえ少し時代遅れ、(PCREオフ紡糸ライブラリは、それを突破あらゆるpossibileの方法で、それがデフォルトだPHPエンジンは)まだ簡単な分析のために良いです

  • UNIXシステム管理 -Perlは常にUNIXにインストールされます。
    Mac OS Xでもすぐに利用できると期待できます。

  • ネットワークのプロトタイプ作成 -多くのコアネットワークの専門家は、Perlが大流行したときにPerlを学びました。そして、彼らはまだそれを使って概念実証を行っています。

  • セキュリティ -多くのセキュリティ専門家も高速プロトタイピングを必要とします。(および高速の自動修正)Perlはそれをカバーできます。

プロトタイプを扱う場合、広範なCPANコレクションは非常に便利です。
(バッテリーは含まれていない場合がありますが、まだ棚にあります

ただし、欠点を覚えておいてください。

  • Perlでのオブジェクトのサポートは、ハード吸う、あなたが最初の場所ですべての問題を取った理由は、その後不思議、参照を祝福し、オブジェクトの名前に不浄なものを行います。
  • 他の人のPerlを読むことは、単なる技術ではなく、科学であり、痛みを伴うものでもあります。
  • Perlは気の利いた、気の利いたと思わせる、気の利いた、プログラミングのロックスターになります。さあ、起きて、ロックスターでいっぱいのオフィスで仕事をすることを考えてみてください。それは、揺れるボート」です。激しい変動が予想されます。

19
@WorldEngineerは同意しましたが、それについて最悪なのは、perlから来ていることです。Rubyには気の利い感じがまったくありません
ZJR

12
欠点は1つしかありません。個人的には、参考文献を祝福することを楽しんでいますが、そうでない人のために、Moose(CPAN)があります。これは、他の言語がコピーするのに十分なオブジェクトシステムです。そして、私は素直さを愛しているが、Perlの世界でそんなに自己執着しているロックスターに会ったことはない。Perlコミュニティには、ロックスターよりはるかに真面目で規律のある開発者(自由な時間にロックアウトするのが好きな人)がいます。(コードを書いている間、女性が私にパンティーを投げ始めるまで、ロックスタープログラマーであることを明示的に否定します。)
デイブシェロマン

3
@johannesはまだVan Rossum Lawに対処する必要があります:"Whenever you find a python executable preinstalled, it's the wrong version"帰結:"sometimes the right version is available, but it has the wrong name"
-ZJR

2
Perlはまだバイオインフォマティクスの分野でも非常に大きな存在です。
-Dietbuddha

3
システム管理の場合は+1。UNIXベースのOSにperlが含まれていないのを見たことがありません。ユーザーランドにBusyboxを使用した一部の組み込みLinux OSでも見ました
Earlz

23

私の意見では、Perlをほとんど使用しなかった数年後に再びPerlを使用した後、これまで以上に優れています。Perl 5はCPANに多くの素晴らしい機能があり、OOでさえ今すぐにできます。(Modern Perlをご覧ください

Perl 5は死からほど遠い。いくつかのPerl WebサイトとCPANをご覧ください。地平線にはまったく新しい言語、Perl 6があります。

Webには多くのリソース、ブログ、プレゼンテーションがあり、なぜそれが悪くないのか、なぜ悪い評判に値しないのかについて説明しています。理解するためにそれらを見てください。


7
私の意見では、CPANはあらゆる形状のホイールが必要な場合には優れていますが、自動車工場が必要な場合にはそれほど優れていません。

@ThorbjørnRavnAndersenCPANは、あらゆる形状のホイールが必要な場合に最適です。問題はshape($wheel) == 'round' ? available_in_cpan($wheel) : false;、有効なフィルターではないことです。
ジェイソンルイス

OOがPerlに存在するからといって、それが実際に良いというわけではありません。
kirbyfan64sos 14

22

Perlがまだ行っている主なものはCPANです -非常に多くの事前に記述されたモジュールがあるので、必要なものを見つけるのは非常に簡単です。

とはいえ、私はPerlを学ぶことはありません。Perlは(私のように)既に知っている人にとっては素晴らしい言語ですが、Pythonは(私の部外者の観点から)Perlがかつて「 go-to」の言語。


そして、それは他の言語に対して優位に立つと思いますか?または、それは他の言語と同等になりますか?たとえば、.NETフレームワークには、さまざまな便利なメソッドとクラスが詰め込まれているようです。
ボブ

6
@Paul Tomblin-かなり粗雑な言い方です。「perlにはまだ問題があります...」<-C / C ++が行っている主なことは、多くのソフトウェアがまだ書かれていることです。それに加えて、彼らはゴミです。
ルーク

あなたは... Javaは多くのパッケージを持っていることについて同じことを言うことができることから、Idigasと合意
Izkata

1
問題は「C ++またはJavaは良い言語ではない」ということでした。問題は、Perlがまだ実行可能かどうかでした。そして、私がまだPerlでウェブアプリを書いている2つの理由があります:CPANと私はすでに書いたたくさんのコードを持っています。
ポールトムブリン

7
私が今始めていたら、おそらくPythonを使用するでしょう。しかし、Perlが得意なので、Perlを使用しています。
ポールトンブリン

19

数年前に私が第一言語としてPerlを学ぶことに決めたとき、私の決定を導く多くの要因がありました。

  • 言語に関する多くの良い参考資料がありますか?
  • 質問の助けを簡単に見つけることができますか?
  • 多様な人々が積極的に使用している言語は何ですか?
  • 目標達成に役立つ積極的なプロジェクトはありますか?

私にとっては、答えはイエスでした。私はグラフィックデザイナーです。私は何年も前にHTMLとCSSを学びましたが、クライアントがWebサイトにもっと欲しくなった後、スキルをアップグレードする必要がありました。さまざまなphpフレームワークを使用していたので、実際にプログラミングを学ぶためのバグがありました。私は多くの研究を行い、テンプレートツールキットのようなよくサポートされているプロジェクトと、Perl DancerやMojoliciousのような新しいプロジェクトを見つけました。Perlに付属のドキュメントは、出版物のライブラリと同様に非常に役立ちました。

Perlのメーリングリストは初心者にとって非常に使いやすく、アクティブであることがわかりました。PerlMonksには、世界中の人々がさまざまなアプリケーションに関する質問と回答を寄せています。いくつかのアクティブなPerlニュースサイト、ブログ、およびストリームがあります。これらのリソースは、Perlとプログラミングについて多くのことを教えてくれました。

確かに、それは私の経験です。これらのサイトにログオンしている人、メールリストを購読している人、Webアプリケーションを構築している人(Perlなどを使用)の正確な人数はわかりません。また、最初に別の言語を選択した場合、自分の経験がどれほど良いか悪いかについてコメントすることもできません。私は、他の言語のコミュニティで同じ前向きな側面の多くを見つけることができたことを疑っていません。私が選んだ選択にまだ満足していると言えます。


私はプライマリOSのためにWindowsからLinuxに切り替えたばかりだったため、1996年に最初の言語としてPerlを学びました。Perlは決して素晴らしいWeb言語ではありませんでした(PHPはPerlが提供しなければならない悪のすべてを純粋に蒸留したものですが)が、bashスクリプトの代替としては素晴らしいものです。問題は、人々が特効薬のようなものがあるふりをしようとするときに起こります。
ジェイソンルイス

16

言語の人気は、その実行可能性や使いやすさとはほとんど関係がありません。Perlは今でも非常に使いやすい言語です。当然のことながら、初心者に不親切であるという評判は、最終的には、もし彼らがそれを助けることができれば誰もそれを学ぶことはないということを意味していました。私がもうそれを使わない唯一の理由は、私が知っている誰ももうそれを使わないということです。


5
「私がもう使用しない唯一の理由は、私が知っている他の誰ももうそれを使用していないということです」という声明は、人気がおそらくその実行可能性と使いやすさの両方に関係しているという事実を示していませんか?とにかく、それは私の質問のポイントではありません、私が本当に知りたいことは、Perlはまだ有用ですか?他の言語よりもいつ選択しますか(例として、本当に輝くのはいつですか)。
ボブ

1
言語は他の人々への表現手段として存在し、言語が提示する価値に対してどれほど人気が​​あるかは私の意見では根拠がないと言っています。
失策

4
これは非常に環境ベースです... * nix sysadminの場合、一般的なタスクを実行するための選択はPerl対sed + awk + ​​grep + bash ...に要約され、Perlは一般的に4つの構文を覚えるより簡単です一回限りのスクリプト。
ジェイソンルイス

12

記録のために、私は約15年間Perl 5でプログラミングしてきたので、少し偏見があります。そうは言っても、私はPerlが本当に好きです。反対意見に耳を傾けないでください。また、年齢が何らかの形でその有効期間の指標であるとは思わないでください。Perlを見る最良の方法は、Perlを他の言語と比較して見ることです。

  • PHP -PHPは非常に優れたWebプログラミング言語です。誤解しないでください。しかし、それはただのウェブプログラミング言語です。Webアプリケーションでさえ、プロセスをクリーンアップするためにcronjobが必要です。それを実現するには、奇妙なことをしなければなりません。UNIX管理者用の簡単なスクリプトを記述したり、テキストファイルを解析したりする必要はありません。さらに、PHPにはCPANがありません。

  • Ruby-言語はあまりにも新しく、私の好みには「スクリプトキディ」です。Rubyについて聞いているのはRuby on Railsだけです。PerlにはCatalystとDancer(MVCフレームワークとして)があります。これらはすばらしいMVCですが、それは言語の基礎ではありません。求人の要件として「Ruby」をすぐに(もしあれば)見つけることはありません。さらに、RubyにはCPANがありません。

  • Python -Larry Wallの言葉では、Pythonは単なるヘビ油です。Pythonは空白を気にし、空白を気にした最後の言語はBASICでした。また、BASICと同様に、基本的に使いやすい初心者向けの言語になるように設計されています。最後に、ここにCPANはありません。

  • Java -Javaは問題のある子言語です。コンセプトは、任意のプラットフォームで実行されるこの仮想マシンを使用することでしたが、大学のコースで言語が非常に人気があるため、Javaアプリケーションが存在するべきではない場所がすべて見られます。たとえば、社内のサーバーベースのWebアプリケーションは存在すべきではありません。定義された仕様持つ単一のサーバーであり、メモリフットプリントが制限された別のVMにラップされます。Javaは肥大化しており、CPANがありません。

  • C# -私は実際にこの言語を実際にかなり使ってきましたが、私はそれと愛/憎しみの関係を築いているように見えました。異なるパラメーターを使用してメソッドをオーバーロードできることは、クールで楽しいことです。しかし、型キャストに関するコードのすべての行でうんざりするような言語が必要な場合は、C#が最適です。私の神、それはあなたがどこでも明示的なキャストを入れて欲しいです!クラスを作るのは楽しいですが、実際のコードを実際に書くよりも、いまいましい言語を機能させるためにクラスを作ることに多くの時間を費やしていることに突然気付きます。

    また、C#にはありません...大丈夫、.NETがあります。ただし、独自のモジュールを作成し、バグや設計上の欠陥について作者に苦情を申し立てることができるため、CPANの方が好きです。そして、それらはすべて無料です。さらに、Perlは将来Perl.NETに向けて取り組んでいるので、やがてWindowsアプリケーションを設計することになります。

Perlは次の優れた言語です。

  • 正規表現 -Perlがうまくいくことができるのは、テキスト操作です。はい、多くの言語には正規表現がありますが、Perlはそれらをほとんど発明しておらず、grepに「Perl Regular Expression」モードがある理由、またはOracleに「Perlの影響を受けるOracle正規表現」のセクションがある理由があります。ビルトインであり、モジュールを必要としません。

  • 柔軟性 -スカラー、配列、ハッシュの3つの基本的な変数タイプがあります。それでおしまい。必要なのはそれだけです。int、byte、string、またはそのくだらないものはありません。Perlはそれをうまく理解しています。また、メモリリークを恐れることなく、必要なすべての参照を使用したり、PC全体をクラッシュさせたりすることができます。言語は機能します。

  • 移植性-PerlはWeb上でうまく機能します。UNIXでうまく機能します。Windowsでもかなりうまく機能します。単一の機能に限定されていません。それはあらゆるもののジャックですが、(ほとんど)すべてのマスターでもあります。

  • 小さなコードで多くのことを簡単に実行できます。1Kの空のファイルを与えれば、そのスペースであらゆる種類のことを書くことができます。Perlのワンライナーでさえ、コマンドラインパイプに追加するのに最適です。

  • CPAN-何かに必要なものを見つけるのがどれほど良いかを強調することはできません。「何でも」とは何ですか?さて、OracleからiPod、CSV、Adabas、Yaswiに至るまで、あなたが想像できるあらゆるデータベースや物事のためのDBモジュールはどうですか?いくつかのフル機能のWebサーバーはどうですか?Excelファイルリーダー、SNMPモジュール、デバッグ行のコメントを読み取るモジュール、またはプログラムの高速化に役立つモジュールはどうでしょうか。私が今やっているプロジェクトは、Games :: RolePlay :: MapGenと呼ばれる既存のモジュールを増強する、動的なTerrariaマップジェネレーターを作成することです。.NETにはそのようなものはありません。

    さらに、CPANを介して任意のモジュールをインストールするのは簡単です。Debianから入手してください。CPANから直接インストールします。依存関係の解決において、apt-getと同じくらい良い仕事をします。システム管理者にXPANをCPANからインストールするよう指示するのは問題ありません。これは単なる1行のコマンドであるためです。

はい、それはその欠陥を持っています、そして、はい、私はそれに向かって偏っていますが、おそらくあなたはすでに否定を何度も聞いたことがあるでしょう。彼らはポジティブではなく、ロングショットではありません。


14
-1は、主に他の言語のツールがCPANより優れていないとしても、それが優れていることを認識しないためです。たとえば、Maven Central for Java?CPANよりも多くのアーティファクトがあり、MavenアーティファクトはProject Object Modelの依存関係分析によって自動的に特定されるため、Mavenアーティファクトをインストールするための0ライナーです。また、Ruby Gemsの経験はあまりありませんが、CPANとほぼ同等だと思います。
ミケラ

8
PHPにはPEARがあります。そして、それはウェブプログラミング言語だけではありません。
マットビアンコ

25
私はあなたが少し偏っているとは言いません。あなたは明らかに偏っています。主に大きな空白があり、Larry(ここでは客観的なソースではない)がスネークオイルという表現を使用しているため、主にPythonをわずかに使用できるとは信じられません。そして、Rubyの求人はまったくありませんか?最後に雇用市場を見たのはいつですか?少なくとも、Perlのクレデンシャルを確立しようとする努力をします。
ムハンマドアルカウリ

6
-1は、他の言語について明らかに偏っており、研究されていない見方です。Pythonはヘビ油であることに同意しますが、Ruby == "script kiddie"はばかげています。私が管理しているサーバーでRubyベースの侵入の試みを見たことはありません。ほとんどはPythonです。PHPはある意味で許容可能なプログラミング言語ですか?シェナンガン。C#に関するコメントは、タイピングやオブジェクト指向に関する驚くべき素朴さを示しています。Perlにこだわる、バディ。真剣に、Perlは私の最初の「本当の」プログラミング言語であり、システム管理者のタスクにとって素晴らしいので、Perlが大好きです。しかし、この答えは悪いより悪いです。
ジェイソンルイス

8
+1もちろん、Perlを除く、私が愛した(または嫌った)すべての言語を無効にするため。:-)
jpaugh

12

パフォーマンスは、perlを選択する主な理由の1つです。Python、Ruby、またはJVMベースのスクリプト言語と比較して、非常に高速です。

これが、データマイニングスペースで決して置き換えられない理由です。他のすべての(無料の)言語は、大量のデータの処理に関しては遅くなります。


6
このアサーションのサポート/ベンチマークを提供できますか?IT担当者は、PerlとRuby / Pythonで見た最後のベンチマークが、特に後者を好んだようです。後者の代替実装を含める場合。
ジェイソンルイス

2
特定のリリースおよび環境が引用されていない限り、パフォーマンスに関するコメントは一般化する必要があります。多くのベンチマークがそこにあります -hentenaar.com/serendipity/index.php?/archives/…onlyjob.blogspot.com/2011/03/…はかなり典型的です。確かに、rubyの最新バージョンはかなり高速ですが、perlには定期的な「パフォーマンス強化」リリースがありますので、問題なく対応できます。LUAはすべてを打ち負かします。
ジェームズアンダーソン

ルアはかなり燃えています。
ジェイソンルイス

12

Perlにはその場所があります。その「悪い評判」は、一般に、別のツールで実際に行うべきことを柔軟に行えるためです。

「私は何を達成しようとしているのか?そして、これを実現するための適切なツールはありますか?」という質問を自問する場合 あなたはそこの道の一部です。

簡単なスクリプトを作成する場合は、スクリプト言語を使用するのが理にかなっています。複雑なアプリケーションを作成する場合は、Perlで「作成」できますが、おそらく作成しないでください。

しかし、あなたの質問は新しいプログラマーに関するものなので、今のところPerlをそのままにしておくことをお勧めします。単に、柔軟性の低い言語から学習する悪い習慣が少なくなるからです。


3
わかりましたが、Pythonはクイックスクリプトを作成するための完全に実行可能なオプションですが、より大きなプログラムを作成するためにストレッチすることもできます。Perlについても同じではありませんか?それはPythonをPerlよりも優れたものにしますか?
ボブ

@ボブ:私はそれがほとんどあなたが書くのに慣れているものとあなたの好みだと思います。時には、Pythonにはない便利なperlライブラリもありますし、その逆もあります。
dagnelies

1
@ボブ:私は彼に最初にpythonを試すことを勧めます。次に、Schemeのように、まったく異なる言語を第2言語として選択するように彼に伝えます。
dagnelies

1
@Bob:.NETフレームワーク全体はWindowsでのみ利用可能です。Unix / Linuxの分野では、Perlはシェルスクリプトを置換したり、システム管理を行ったり、他の多くのテキスト処理ではなく多くのテキスト処理を伴うものに最適な言語です。(最後に私が見た)Pythonが少しの構造を必要としていたことを直接行います。これにより、一般的にPerlは一般的なプログラミング言語としては悪くなりますが、より専門的なアプリケーションにとっては優れています。
デヴィッド

1
@Bob実際、それは興味深い点です。Perlは、bashの制限に負担をかけているシェルスクリプトを持っている場合、本当に便利です。Perlは、ほとんどのコマンドにバッククォートを付けるだけで十分に機能するため、非常に簡単に対応できます。
スティーブングロス

12

Pythonのレイアウトに魅了されたのは、ブロック構造が「見たものが得たもの」だからです。そして、なぜこれに先送りされているのか理解できません。私はそれが良いアイデアだったと思う。

しかし、私はPerlに戻りました。実用的なツールとして考え抜かれたようです。コンピューターサイエンス理論では、PythonとRubyは「より良い」ものです。しかし、私は現実の世界で働いています。

RubyとPythonは、大学を卒業したばかりの子供たちの間でよりファッショナブルです。Facebookにいるほとんどのプログラマーは、現在の流行に従い、RubyまたはPythonを使います。元の投稿はこれを示しています。「価値があるか」と「まだ人気があるか」とを混同しています。

Facebookの世界でPerlが「人気」であるかどうかは知りませんし、気にしません。これはおそらく、多くのことを成し遂げる人々の間で最も広く使用されているスクリプト言語であり、これは非常に異なることです。自分の好きな言語にはCPANに匹敵するリソースがあると考える一部のコメンターは、CPANがどれほど広くて深いのかについては知りません。


5
重要な空白はひどい考えです。常にあった、常になります。そうは言っても、理にかなっているところならどこでもRubyを使用しますが、Rubyで書き直す理由がなかったsysadminタスク用のPerlスクリプトがまだいくつかあります。どうして?彼らはうまく動作し、Perlのスイートスポットにいます。なぜさらに作品を作成するのですか?
ジェイソンルイス

1
言語に関係なく、人々に正しいインデントを強制することは良い考えです。より良い言語(Pythonなど)は、単により多くの力を適用するだけです。
ブレンダン

10

Perlは使い捨てツールを作成する言語です。Perlが多かれ少なかれ永続的で便利な他のさまざまなアプリケーションがありますが、奇妙なことをするシェルコマンドがない場合、スタブを使用して奇妙なソケットからデータを取得する場合、ログファイルまたはデータベースから、SQLの範囲外の方法でコンテンツを抽出する必要がある場合、サーバーからいくつかの画像をプルする必要がある場合、またはWebページテンプレートにすべて同じタイプの間違いが含まれており、それらをすべて修正する場合-鞭打ち10分間のPerlスクリプトを作成する方法があります。

シェルで同じことを書くことはおそらく可能ですが、シェル構文の奇妙な警告のために、時間がかかり、はるかに難しくなる可能性があります。これを、C ++、C#、Javaなどの「プロフェッショナル」言語で記述する場合、比較すると約1時間かかります。Python、Ruby、PHPのような競合するスクリプト言語でこれを書くことは実行可能な代替手段であり、書くのに最大20%時間がかかる可能性があります。

はい、他の言語のプログラムはより保守しやすく、読みやすくなります。しかし、今すぐソリューションが必要な場合は、Perlが最適です。


8

「CPANへの最近のアップロード」ページをご覧ください。毎日20を超える新しいモジュールまたは更新されたモジュールがアップロードされています。毎日のアップロードの平均数は、ゆっくりですが着実に増加していると思います。この活動は死にかけている言語のしるしですか?番号!

何年もの間、いくつかの重要なモジュール(たとえばWebプログラミングやRDBMSドライバーへのインターフェース)がどのように維持され洗練されてきたかに常に感銘を受けます。多くの場合、元の作者、または新しいメンテナーによって。多くの場合、これにより非常に成熟したコードが作成されます。

モジュールをCPAN作成者に取り込むには、後方互換性(古いperl 5バージョンとの互換性)とプラットフォームの独立性を維持するために、非常に長い道のりを進むことが推奨されます。たとえば、http://matrix.cpantesters.org/ dist = DBI(DBI =データベースインターフェイス、抽象化レイヤー)を参照してください。

また、言語自体:5.10、5、12、5.14以降、言語に含まれているすべての新機能に少し困惑しています。私は新しい機能を活用することを学んでいません。Perlは私にとってあまりにも速く進化しています!


7

90年代にシステム管理をしながら、Perl 4と5を学びました。今日、私はJavaプログラミングを行っています(通常、Perlを呼び出すのは望ましくありません)。これは通常、Perlの正規表現とPerlのテキスト解析onelinersのスキャフォールディングによりコマンドラインで非常に簡単に行えるログファイルでデータマイニングを行うためだけです。

基本的に、今日はステロイドのawkとして使用しています。このため、それは素晴らしいです。

Perlの機能の1つは、ほとんどすべてを行う方法が複数あることです。これにより、あなたの考え方に合ったものを選択することができます-1つまたは2つのライナーを一緒にハックするときは素晴らしいですが、他の人々のPerlコードを理解する必要があるときは通常は他の方法を選択するのでそれほど優れていません彼らの考え方に合ってます。

Perlは、正規表現がテキストファイルをふるいにかけるのに役立つことだけに焦点を合わせた場合に学習したい非常に便利なツールだと思います。オブジェクトに関係するものには近づかないでください。


それでは、テキストを処理するためのクイックスクリプトに最も役立つと言うでしょうか。
ボブ

私の意見では、はい、それは本当に、本当に良いです。それは他のこともできますが、それらはあまりよく焼かれていません。

1
Perlは正規表現でテキストを処理するのに非常に優れていますが、PythonまたはRuby(またはPHP)を知っていれば、Perlを使用する必要はありません。Pythonはもう少し冗長ですが、確かにきれいです。
エリックOレビゴ

@EOL、ただしPythonもRubyもPHPも、テキスト解析onelinersの足場のトップに立つことはできません。たとえば、「-i」オプションを参照してください。

@ThorbjørnRavnAndersen:同意しました。1つのライナーについて:Pythonのoneliners(-cオプション)は実際にはもっと長いです。:)
エリックOレビゴ

7

しばらくの間、Perl5開発は停滞しました。これは、5.8と5.10のリリース間で長い遅延を引き起こしたPerl6に焦点が当てられていたためです。それ以来、コミュニティはPerl5とPerl6が異なる言語であり、最近非常に定期的な新しいリリースがあることを本当に認識し始めました。

Perlは最近、Catalystを使用したWebアプリのコンペティション優勝しました(私はMojoliciousを好んでいますが)。新しいモダンなPerlプラクティスのいくつかは、MooseのようなものでPerlに多くのよりクリーンなOOアイデアをもたらします。

私の意見では、Perlの開発者として、Perlは企業ネットワークをまとめるダクトテープであるだけでなく、Webアプリケーションの新しい活気のある場所であるだけでなく、輝かしい未来と同様に大きな遺産を持っています。


3

私は熟練したプログラマーではありません。しかし、Perlを学ぶのは非常に簡単であり(ラクダの本を使用しました)、常に喜びであり、PerlMonksはプログラミングの国で最も友好的なヘルプコミュニティです。Perlは、RubyとPythonへの雇用に関しては性的魅力を失っているようですが、特定の業界(特にWeb)でのみです。


3

perlを知っていれば、MicrosoftのPowershellを習得するのは簡単です。powershellの構文に関しては、perl rootsはありませんが、Powershell は言語Perlから多くの機能と概念を取り入れています。たとえば、私の頭の中で:$ _変数、@の接頭辞配列、および$モジュールに名前を付けて保存するためのファイル規則、およびいくつかの方法でオートロードする方法。

したがって、Perlを知っていると便利です。Powershellを学習したり、Powershellの考え方を把握したり、Powershellのイディオムを長期的な記憶に留めたりするのが少し簡単になります。PerlのバックグラウンドなしでPowershellに遭遇するのは、おそらく少し奇妙です。ただ言って。

もちろん、Powershell言語は新しいもの、特に.NETの使いやすさを追加し、unixコマンドラインツールとの「下位互換性」を提供するperlの機能/演算子を継続しませんでした。


2

Grant McLeanは、mapofcpan.orgの進化に基づいた短いムービーをアップロードするだけで、マップスタイルの視覚的な方法でCPANが時間とともに進化する様子を示しています。コミュニティの活気については一目瞭然です。死なない。

Perlは、多くの伝説と、コミュニティが世界で一番のプログラミング言語になることを望んでおらず、作ろうともしないため、評判が悪いことに確かに苦しんでいます。非常に多くの人々がそれが恐ろしい言語であると絶対に確信している理由を理解することは非常に困難です。任意の言語で気味の悪いコードを書くことができます。Perlは他の言語と同様にベストプラクティスを取得しているため、基本的な哲学を実現するために複数の方法で実装する必要があります。

この悪い評判の非常に悲しい理由を見ることができます:長い間、Perlコミュニティのウェブサイトは非常にい UIデザイン(例えばperlmonks.orgのような)を手に入れました。個人的には、私は本当にこれを気にしません。たぶん、私はPerlに来ます。なぜなら、この理由のためです:ファッショナブルなウェブサイトのUIはそれほど多くないが、ツール、コミュニティはそれよりも美しくなります。ただし、品質の高いツールは、外観に集中するべきではないという意味ではありません。最終的には、見た目を気にしないのは一種の間違いです。

たとえば、私の友人(よりファッショナブルな言語が好き)は、現在のPerl6ロゴは恐ろしく、若い肉体をPerlに引き付けることは問題になると私に言った。明るい石や他の適切にデザインされたロゴよりもはるかに問題です。

不人気の非常に悲しい理由だと思うが、それが世界を支配している。


ロゴの詳細に注意を向けない場合、言語のより詳細な詳細に注意を向けるのはなぜだと思いますか?それが悪いのロゴは、物事が提示されている方法を重視しない文化の症候感じていることだし、それはすべての「言語だけを書き、」ジョークの背後にあるステレオタイプを強化し、ロゴが悪く見えるだけのことではありません
Racheet

悪い評判に取り組んでいる人々について聞いたことがあります。これらの人々は、現代のPerlとテスト駆動開発の擁護者です。builtinperl.comquestub.ioのようなWebサイトは、Perlのケースを検討する方法を変えています。ダックダックゴーも大成功であり、物事がどのように提示されるか気にしないと言うことはできません。metacpan.orgでさえ、CPANユーザー(Perlの主な強み)に、優れたUIでコード、ドキュメント、検索モジュールを表示することにより、新しい体験を提供する方法となっています。私は言語のロゴを信じていません:Cにはロゴがありますか?言語はブランドではありません。
smonff 14年

1

Perlは間違いなく死にません。他のいくつかの言語ほど誇大宣伝されたことはありません。

確かに、Perl自体は古い言語であり、活気に満ちた非常に生産的なコミュニティがあり、その価値はCPANライブラリにあります。どの言語にも、CPANほど広範囲で包括的なライブラリはないと思います。何も近くに来ません。CPANには何千ものモジュールとフレームワークがあり、それらはあなたが想像できるほとんどすべてのものです。Webサーバーが必要ですか?HTTP :: Serverがあります。スタンドアロンデータベースが必要ですか?Muldis :: DBがあります。あなたのニーズが何であれ、通常あなたはあなたのニーズを満たすいくつかのモジュールを見つけるでしょう、あなたはあなたのアプリに最も合うものを選ぶだけです。

Ruby、Python、および他の競合他社に関しては、健全な競争はPerlにとって大きな利点だと思います。他の言語が得たものは何でも、PerlコミュニティはPerlで書き直しました。たとえば、RubyがRailsの成功で飛んでいたとき、PerlはDancerを獲得しました。これは多くの点でRailsよりも優れています。

Perlは絶対に死んでいませんし、死んでいません。周りには派手なものは何もありません。Perlを宣伝することで利益を得る会社はありません。したがって、メディアの注目を集めることはありません。

元の投稿から6か月以上経ちました。まだ決定していない場合は、自分で好意的にPerlを学びましょう。


0

90年代からWebゲームの開発にperlを使用してきましたが、3年の休憩の後、前のポスターに同意します。私は戻ってきて、それが私がそれを去った場所を超えて進化しているのを見つけます。

死にかけている?チャンスじゃない。

便利ですか?私はそれなしで失われます。たぶんそれは私だけかもしれませんが、他の回答から、私はそれが非常に活発な生き物だと思います。


-6

私はPHPでプロのWeb経験のほとんどを得ましたが、開発者として物事が少し難しくなるにつれて、PHPが実行できなかった、または非常に非効率的にした多くのタスクがありました。私は手を挙げたかもしれませんが、代わりに(googleのおかげで)libreoffice、ffmpeg、imagemagickを利用してPHPのポストプロセス関数を作成するsshセッションにいることに気付きました。私がPERLに向かう前に決して使用しないでください。主にPerlがLAMPスタックの下に完全に座っているためです。

(1)すべてのLAMPサーバーにプリインストールされているか、少なくとも新しいrpmがあります。(2)時間を大幅に節約できるすばらしいCPANリポジトリを持っています。(3)Apacheで実行されているPHPが失敗するタスクを実行するための高速/安全。(4)PHPに非常に似ており、簡単に習得できます。

アイデアをPHPとミックスし、必要に応じてBASHを使用してPERLで焼き、MySQLに従って反転し、HTML5とjQueryのダッシュを提供します。その素晴らしいレシピ。


1
これらのステートメントをバックアップするものはありますか?
オースティンヘンリー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.