タグ

Perlとプログラミングに関するdenkenのブックマーク (23)

  • 現代的なPerlの記述方法一覧 - Perl入門ゼミ

    Perl › here Perl5.8以降における標準的なPerlの書き方を解説します。 インターネットで検索するとPerl4のころの古い記述がたくさんあります。また書籍などの多くもPerl4の記法で書かれています。Perl4の記法は複雑になりやすく間違いを生みやすいのでこれからPerlを書く人はPerl5の現代的な記法で記述することを強くお勧めします。 strictプラグマとwarningsプラグマ (必須) strictプラグマとwarningsプラグマを有効にします。 use strict; use warnings; use strict;とuse warnings;の2行はスクリプトの最初に必ず記述してください。これらはPerlの文法チェックを厳しくするためのものです。面倒だという軽い気持ちでこれを記述しないと後々当に面倒なことになります。 use strict;とuse wa

    現代的なPerlの記述方法一覧 - Perl入門ゼミ
    denken
    denken 2010/01/24
    不本意なとき用
  • Perl基礎文法最速マスター - Perl入門ゼミ

    Perl › 基礎文法 ITの現場でPerlが必要になって、今勉強しているという方はおられませんか? 他の言語をある程度知っている方が「Perl基礎文法最速マスター」を読めば、Perlの使い方の基礎をマスターしてPerlを書くことができるようになっています。 基礎 文法チェック 文法をチェックを厳しくするために最初に必ず次の2行を書くようにします。 use strict; use warnings; 「use strict」と「use warnings」という2行を加えることで事前に文法チェックが行われるので、ソースコードを記述する作業は速くなり、コードの品質が上がります。 print関数 文字列を出力するにはprint関数を使用します。 print "Hello world"; Perlでは標準関数や事前に定義されている関数で括弧を省略することができます。 コメント Perlのコメントで

    Perl基礎文法最速マスター - Perl入門ゼミ
    denken
    denken 2010/01/24
    不本意なとき用
  • 年齢確認ワンライナー - すぎゃーんメモ

  • Perlでアニメ顔を検出&解析するImager::AnimeFace - デー

    というのを作ったので自己紹介します。 2月頃から、コンピュータでアニメ顔を検出&解析する方法をいろいろ試しつつ作っていて、その成果のひとつとして、無理やり出力したライブラリです。 はじめに はじめにざっとライブラリの紹介を書いて、あとのほうでは詳細な処理の話を僕の考えを超交えつつグダグだと書きたいと思います。 Imager::AnimeFaceでできること Imager::AnimeFaceは、画像に含まれるアニメキャラクター的な人物の顔の位置を検出し、さらに目や口など顔を構成する部品位置や大きさの推定、肌や髪の色の抽出を簡単に行うことができるライブラリです。 これらが可能になると、 画像から自動でいい感じのサムネイルを作成できる 動画から自動でいい感じのサムネイルを作成できる 自動的にぐぬぬ画像が作れる 自動的に全員の顔を○○にできる 顔ベースのローカル画像検索 など、最新鋭のソリューシ

    Perlでアニメ顔を検出&解析するImager::AnimeFace - デー
  • 言語にわくわくが必要な理由 : 404 Blog Not Found

    2008年06月23日05:00 カテゴリLightweight LanguagesArt 言語にわくわくが必要な理由 これは、同感、というより、 おごちゃんの雑文 ? Blog Archive ? プログラム言語に「わくわく」なんていらんでしょ 逆にRubyは「わくわく」しない言語だった。だからこそRubyな人達が「わくわく」と言うのに違和感を感じるんだけど。じゃあなぜ「わくわく」しないかと言えば、 出来て当たり前のことが当たり前に出来て、 たいていのことがサクっと当たり前に出来る からだ。 Rubyのスローガンが、Principle of least surprise(POLS; 驚愕最小原則)である以上当然ではある。 そして、私がrubyが好きでも惚れるに至らない理由でもある。 私は、言語に二つの相反するものを期待している。一つは、「たいていのことがサクっと当たり前に出来る」こと。L

    言語にわくわくが必要な理由 : 404 Blog Not Found
    denken
    denken 2008/06/23
    その意味で、初心者にとってさくさくでありながら、上級者にとってわくわくであることをきちんと意識しているのは Perl ぐらいしかないということになる。私が Perl に惚れている理由が、これだ。」
  • コメント!=ドキュメント : 404 Blog Not Found

    2006年09月04日15:15 カテゴリLightweight Languages書評/画評/品評 コメント!=ドキュメント なぜコメントの付け方の昔と今が違うかと言えば、原因は二つある。 Perl Best Practices Damian Conway [邦訳:Perlベストプラクティス] 小野和俊のブログ:ソースコードのコメント率は20%を切ることが望ましい 昔はソースコードのコメント率が50%を切るものはドキュメント不足で品質が低いものとされた、という内容のものがあった。 [中略] 今、改めて考えて、どのような言語であってもどのようなコーディング規約であっても、私はソースコードのコメント率は原則20%を切ることが望ましいと思う。 まずは言語仕様そのもの。昔は変数名の長さに限りが合ったり、loop controlにifとgotoしか使えなかったりで、「プログラムそのものに語らせる」

    コメント!=ドキュメント : 404 Blog Not Found
  • 小野和俊のブログ:ソースコードのコメント率は20%を切ることが望ましい

    大学の研究室の教官は昔NTT研究所の所長をされていた苗村先生という人で(と言いつつ私は大学の研究室にほとんど顔を出していなかったのだけれど)、彼の発言のうち印象に残っているものの一つとして、昔はソースコードのコメント率が50%を切るものはドキュメント不足で品質が低いものとされた、という内容のものがあった。 今、改めて考えて、どのような言語であってもどのようなコーディング規約であっても、私はソースコードのコメント率は原則20%を切ることが望ましいと思う。可読性の意味でもメンテナビリティの意味でも、開発生産性の意味でも。私が考えるに、来コンピュータが読むためのものであるソースコードに人が読むためのコメントを付け加えなければならないのは、次の2通りの場合だけである。 1.公開されるAPI APIやソースコードそのものが公開される場合、利用者は不特定多数となり、利用者のスキルにもばらつきが出て、

    小野和俊のブログ:ソースコードのコメント率は20%を切ることが望ましい
  • Rabin Karp アルゴリズムでコード重複の検出 blog.bulknews.net

    Rabin Karp アルゴリズムでコード重複の検出 YAPC::NA で会った Fotango の Norman Nunley がつくってる Algorithm::RabinKarp モジュールが面白げです。 Rabin Karp 文字列探索アルゴリズム (wikipedia) を使って文字列のハッシュ(ダイジェスト)をチェックし、同一の値を示す部分を重複しているとみなしてレポートしてくれます。つまり、プロジェクト内のコードのコピーペーストを検出するツールとして使えるというわけ。 ためしに Plagger で試してみた結果は rabin.txt のようになりました。プラグインの register_hook や CustomFeed での Feed オブジェクトの生成など、イディオム的に使う部分が大半になってしまっていますが、いくつか実際コピペで再利用しているコードが検出できています。 c

  • Haskellは難しくない--こともある。 : 404 Blog Not Found

    2006年06月20日18:20 カテゴリWEB+DB PRESSLightweight Languages Haskellは難しくない--こともある。 まだVol.33も正式発売されていないというのに、すでにVol.34の原稿書きにいそしむ今日この頃。実はその記事の一つがHaskellだ。「Powered by Ph.Dな言語の解説を中卒がやるのってどうよ?」と我ながら思うが、自分で言うのもなんだがむしろいい記事に仕上がってきているのを感じる。 Matzにっき(2006-06-13) 私:「Haskell難しいですから」 「ええっ?」 というわけで、予告ついでに、HaskellよりRubyの方がずっと難しいことを一つ上げさせていただく。 それは、なんといってもProcオブジェクトだ。 「Rubyの美しくない部分を一つあげよ」と聞いて、真っ先に思い立つのがこれだ。 例えば、logbXをカリ

    Haskellは難しくない--こともある。 : 404 Blog Not Found
  • キミならどう書く 2.0 - ROUND 1 - — Lightweight Language Ring

    Recent entries じゃんけん2.0で優勝したJavaScriptのソースを公開しました yasuyuki 2006-10-02 第16回GaucheFestを開催します yasuyuki 2006-10-02 LL Ringの動画配信開始 kahei 2006-09-06 英語BlogにLLRingの記事掲載 kahei 2006-09-05 発表資料を公開しました yasuyuki 2006-09-02 Recent comments Re:じゃんけん2.0で優勝したJavaScriptのソースを公開しました Anonymous User 2009-06-05 Re:じゃんけん2.0で優勝したJavaScriptのソースを公開しました Anonymous User 2007-07-17 Tシャツサイズアンケート Anonymous User 2007-01-23 Re:Tシャ

    denken
    denken 2006/06/20
    よしPython勉強しよう。
  • PHPがどうにも好きになれない理由 - Unknown::Programming

    仕事PerlPHPも使うんだけど、どうにもPHPが好きになれない。 いったいなんでだろうか。先にPerlから入ったもんだから後から入ったPHPに対して不満があるのかな? ま、とにかく両方やっててPHPが微妙だなぁと思う部分を列挙してみよう。 ただPHPに関してそれほど詳しくないので間違っている部分もあるかもしれません。 あ、ちなみにここでいうPHPってのはPHP4(PHP4.4.1)のことです。 変数のtypeミス(strict 'vars') これが一番痛い。 まさしくPerlでstrictを使わずに実装してるような、そう、まるで先祖帰りしてるような感覚になってしまうので当につらい。 変数のスコープ 変数のスコープが関数単位でしか発生しないのが痛い。 これによりif条件の場合のみとかループ中でしか使わない変数とかを定義できない。 つまり、変数の存在範囲を細かく設定できないのだ。 配

    PHPがどうにも好きになれない理由 - Unknown::Programming
  • naoyaのはてなダイアリー - Perl の話をまとめた

    use strict がどうのこうのという話があって、そういえば昔自分もそんなこと書いたなあと思っていろいろ自分の書いた Perl の話を見返してて、せっかくだから拙作のまとめでも作っておくかと思いました。とりあえず文章量がそれなりにあって、まとまりのあるものだけを見繕ってみます。 今見ると、当時の理解が不十分で微妙なところもあったりしますが、そのあたりはご愛嬌。 いま読んでもまだ陳腐化はしてなさそうな話 お薦めの Perl をいくつか紹介 : NDO::Weblog Perlおすすめの書籍や情報。今ならここにPerl救命病棟とWEB+DB PRESS総集編を入れるかな。 Perlプログラマのレベル10 - Perlプログラミング救命病棟より - naoyaのはてなダイアリー Perlプログラマのレベル10。なんか他言語にも飛び火した。 Perl の変数に関するちょっとした誤解と、動的な

    naoyaのはてなダイアリー - Perl の話をまとめた
  • 学習コスト?払っておつりがくればい一じゃん! : 404 Blog Not Found

    2006年05月05日23:00 カテゴリLightweight LanguagesMoney 学習コスト?払っておつりがくればい一じゃん! なんやら人が五月の紫外線にこんがりと焼かれ、子供たちにつんつくと料理されている間にこんな面白い動きがあったとは。 antipop - Perl の学習コストを大幅に軽減するスゴイ方法 にわかに Perl の学習コストについて優れた Perler のみなさんがあれこれ述べておられるので、大変勉強になります。 Unknown::Programming - 新人教育 SQLAlchemy Database Engines 日記。 (TokuLog) - Perl は学習コストが高すぎる naoyaグループ - naoyaの日記 - Perl の学習コスト SQLAlchemy Database Engines 日記。 (TokuLog) - Perlの学習

    学習コスト?払っておつりがくればい一じゃん! : 404 Blog Not Found
    denken
    denken 2006/05/07
    「Perlの価値の9割は、言語ではなくてCPANにある。Perlで仕事をするということは、CPANの5000人のAuthors、10000のModulesに助けてもらいながら仕事をすることに他ならない。」
  • antipop - Perl の学習コストを大幅に軽減するスゴイ方法

    にわかに Perl の学習コストについて優れた Perler のみなさんがあれこれ述べておられるので、大変勉強になります。 Unknown::Programming - 新人教育 SQLAlchemy Database Engines 日記。 (TokuLog) - Perl は学習コストが高すぎる naoyaグループ - naoyaの日記 - Perl の学習コスト SQLAlchemy Database Engines 日記。 (TokuLog) - Perlの学習コストとライブラリ naoyaグループ - naoyaの日記 - アンテナ張りまくらないとの件 subtechグループ - Bulknews::Subtech - Perl、アンテナの話 Charsbar::Note - Perlの学習コスト 上記にリンクしたエントリをまとめると、オールドファッションな書き方であれば Per

  • コード一行怪我一生 : 404 Blog Not Found

    2006年05月02日21:15 カテゴリBlogosphereLightweight Languages コード一行怪我一生 ソース嫁という主張にも一理あるのだけれども、ソース嫁派が見落としていることが一つある。 Amazonアソシエイトのtakochu04-22って何? - diary.yuco.net (2006-05-01) 全サイトはてブ化・その場コメント・ワンクリブクマというGreacemonkeyの拡張機能によるものでした。ソースを見たら確かに「takochu04-22」の文字が。ちなみに、この拡張機能の解説ページにすべてのアソシエイトIDを書き換える旨の断り書きは見当たりませんでした。 *「ふっかつのじゅもんがちがいます。」 - ソースを読めない人はgreasemonkeyを使ってはいけないgreasemonkeyスクリプトは危険なことができるので、自分でソースを読んで安全

    コード一行怪我一生 : 404 Blog Not Found
  • perl - 勝手に添削 - DNA 0.03 : 404 Blog Not Found

    2006年04月29日20:41 カテゴリLightweight Languages perl - 勝手に添削 - DNA 0.03 突然ですが、勝手に添削の時間です。 DNA James D. Watson 今回の対象は、Perl Moduleを書く人であれば誰もがお世話になっているMichael G Schwern作、DNA 0.03です。 このModule、Perl ScriptをDNA Stringにしてしまうというなかなかのものですが、文字通り致命的なバグがあります。 1:package DNA; 2: 3:use strict; 4:use vars qw($VERSION); 5:$VERSION = '0.03'; 6: 7:my $i = 0; 8:my @Acids = qw(A T C G); 9:my %Acids = map { $_ => $i++ } @Aci

    perl - 勝手に添削 - DNA 0.03 : 404 Blog Not Found
  • 勝手に添削 - WEB+DB Press Vol.32 オレオレコード版 - naoyaのはてなダイアリー

    私もWEB+DB Pressへの連載をはじめたので、同誌のますますの反映を祈ってやまないのだけど、それだけに、同誌にこういうサンプルコードがあるのは気になる。一応きちんと動くので、blogとかのentryであればこれでもよいのだけど、この手の雑誌はかなり長い間保管され、読者に何度も参照されることを考えれば、「その後」のことを考えて推敲しておく方がいいだろう。Damianも言っていたように、「ソースコードは未来の自分へのラブレター」なのだ。 という弾さんのリファクタリング結果に対し わたしなんかよりよっぽど perl を知っている人なのだろうから機能的な 点についてはコメントしないが、はたしてこの添削後のコードはきれいなのか? となかなか手厳しい突っ込みもあり そうそう。なぜこのRefactor版を使わなかったかと言えば、それはこのサンプルコードがまさに書籍という容量制限の厳しいメディアに掲

    勝手に添削 - WEB+DB Press Vol.32 オレオレコード版 - naoyaのはてなダイアリー
  • 無精で短気で傲慢なプログラマ これ、読みやすいの?

    perl - 勝手に添削 - WEB+DB Press Vol.32 pp.94 について。 わたしなんかよりよっぽど perl を知っている人なのだろうから機能的な 点についてはコメントしないが、はたしてこの添削後のコードはきれいなのか? 気になるのは、   sub search_result{ return unless param("query"); ... my $response = get($uri) or return; ... と途中で節操なく return しているところ。 上記関数の引数がなく、$q がグローバル変数化しているところ。 最後の   return $xml->{'totalResultsAvailable'}, "hits", ol(map { encode_utf8 li(a({href=>$_->{'ClickUrl'}}, $_->{'Title'}

  • perl - There's more than one best practice : 404 Blog Not Found

    2006年04月23日01:16 カテゴリWEB+DB PRESSLightweight Languages perl - There's more than one best practice こういう意見を待っていた。 無精で短気で傲慢なプログラマ | これ、読みやすいの? わたしなんかよりよっぽど perl を知っている人なのだろうから機能的な 点についてはコメントしないが、はたしてこの添削後のコードはきれいなのか? 実は、私が最初にRefactorしたものは以下のような感じだった。 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 4

    perl - There's more than one best practice : 404 Blog Not Found
  • 404 Blog Not Found:perl -勝手に添削 - WEB DB Press Vol.32 pp.94

    2006年04月22日15:00 カテゴリWEB+DB PRESSLightweight Languages perl - 勝手に添削 - WEB+DB Press Vol.32 pp.94 というわけで、突然はじまりました勝手に添削のコーナー。 WEB+DB PRESS 今回は、WEB+DB PRESS Vol.32の「Yahoo! Web サービス活用ガイド」から。 私もWEB+DB Pressへの連載をはじめたので、同誌のますますの(反映|繁栄)を祈ってやまないのだけど、それだけに、同誌にこういうサンプルコードがあるのは気になる。一応きちんと動くので、blogとかのentryであればこれでもよいのだけど、この手の雑誌はかなり長い間保管され、読者に何度も参照されることを考えれば、「その後」のことを考えて推敲しておく方がいいだろう。Damianも言っていたように、「ソースコードは未来の自

    404 Blog Not Found:perl -勝手に添削 - WEB DB Press Vol.32 pp.94
    denken
    denken 2006/04/23
    前後でどう変わっているのかまったく分からない私はPerl盲