タグ

2009年6月12日のブックマーク (11件)

  • Perlにおける定数宣言(constant or Readonly or Attribute::Constant) - Unknown::Programming

    正直言いますと、個人的には定数って殆ど使わないんですよね。 昔はちょこちょこ使ってたんですが、最近は定数となりうる物は基的にYAML等外部ファイルに持たせて変更可能にすることが多いのでまったく使ってません。 ですがそれでもPerlで定数を使いたい時にはどーすんの?っていう時のために軽くここにまとめておきます。 言わずもかなPerl5.8にはconstantという定数を定義できる標準モジュールがあります。 use strict; use constant PI => 3.14; # 表示 print PI; # 3.14 # 上書きしようとすると・・・ PI = 3; # Can't modify constant item in scalar assignment とこのように上書きしようとするとエラーを吐いて死にます。 しかも実行時ではなく、コンパイル時にエラーを吐きます。 実はこのc

    Perlにおける定数宣言(constant or Readonly or Attribute::Constant) - Unknown::Programming
    fbis
    fbis 2009/06/12
  • 複雑なデータ構造はData::Visitor::Callbackで簡単一発変換 - Unknown::Programming

    ハッシュと配列の参照が入り交じったような複雑なデータ構造の、全value を均等に加工したかったので次の様にしてみました。 (中略) すでに似たモジュールがある気が激しくしています! ご存知でしたらぜひ教えてくださいませ。 [perl] 複雑なデータ構造のvalue を一気に書き換える方法 - harupiyoの日記 ということでData::Visitor::Callbackがズバリそれにあたるものじゃないかなーと。 use strict; use warnings; use Data::Dumper; use Data::Visitor::Callback; my $rh_testdata = { 'a' => 1, 'b' => { 'aa' => 1, 'ab' => [ 1, 2, 3, \ 'test', 5 ], 'ac' => 3, }, 'c' => 3, 'd' => 4

    複雑なデータ構造はData::Visitor::Callbackで簡単一発変換 - Unknown::Programming
  • 携帯動画の再生時間をMP4::Infoで取得しませう - Unknown::Programming

    …というか3gpファイルのヘッダを解析して再生時間の取得を試みるわけなので延いてはmp4の解析ということになりますが故、結局のところMP4::Infoを使うことで万事OKだろっていう話ですね。 use MP4::Info; # v1.12 use Path::Class; my $file = file '/foo/bar/movie.3gp'; my $mp4 = MP4::Info->new($file->openr); printf "total second is %s", $mp4->SECS; このようにすれば動画のトータル秒数が取得できます。 他にも色々とメソッドがありまして、様々な情報を取得できるわけですがそれらはドキュメントに書いてるのでここでは触れませぬ。 が、実装部分でひとつ気になる部分がありまして、各種メソッドの挙動をAUTOLOAD様に任せておられるようなのでそこ

    携帯動画の再生時間をMP4::Infoで取得しませう - Unknown::Programming
  • HTML/XHTML Character Entities : HTML.SU

    HTML/XHTML Character Entities : HTML.SU

  • mixi日記に「&」って書こうと思ったら大変だ

    友人の mixi 日記にコメントをつけて その後どうも話がかみあわないな、と思ったら mixi 日記の記事やコメントでは文字参照が使えるんですね。 何も考えずに入力したから普通に変換されてしまってた。 文字参照というのは、 キーボードからは直接入力できなかったり 実はできるけど普通は知らなかったりするような文字や HTML の特性の都合でそのまま書いてはマズい文字を 別の方法で参照するためのものですね。 前者は例えば「¾」とか「«」とか。 「¾」は「&#190;」または「&fraq34;」 「«」は「&#171;」または「&laquo;」 と HTML 内に書けばブラウザには目的の文字が表示されますね。 後者でよく使うのはたとえば「<」や「>」で、 これはそのまま記述してしまうと HTML タグの開始や終了と解釈されてしまうから 代わりに「&lt;」や「&gt;」と書きますね。 じゃあ「<

    mixi日記に「&amp;amp;」って書こうと思ったら大変だ
    fbis
    fbis 2009/06/12
  • 大阪のド真ん中で女神が見守るジェットコースター付き廃墟「フェスティバルゲート」~後編・廃墟探検~

    先ほどの「前編・周辺探索」では主に周辺をぐるぐると回ってみたわけですが、次はいよいよこの廃墟「フェスティバルゲート」の中へ潜入します。 コンセプトとしてはどうやら海底とかそのあたりをイメージして作られたようで、あちこちに海底神殿っぽい雰囲気の意匠が施されまくり、これでもかこれでもかというぐらい徹底してゴテゴテと神秘的な装飾がされており、さらには朽ち果てた古代神殿っぽい雰囲気を出すためにわざとあちこちが崩されるなど、かなり凝っているのですが、今となっては物の廃墟となっているため、余計に何が何だかわからないカオス空間へと変貌を遂げています。 「後編・廃墟探検」のフォト&ムービー詳細は以下から。正面玄関の階段。 両サイドがミラーになっている 妙に奥行きがあるように錯覚しやすい仕掛け 階段を上るとプールのようなものが見えてきます。 水は入っていません。噴水の跡のように見えますが、読者の方からのタ

    大阪のド真ん中で女神が見守るジェットコースター付き廃墟「フェスティバルゲート」~後編・廃墟探検~
    fbis
    fbis 2009/06/12
    えええ、潰れてたんだ知らなかった・・・。あのジェットコースター好きだったのに。
  • 解の公式を鮮やかに導く方法

    解の公式を鮮やかに導く方法 2次方程式 aX2+bX+c=0 の解の公式は、新学習指導要領により、数学Ⅰでの履修 内容となった。各教科書会社の教科書においては、横並びに同じような証明(文字の分数 が洪水のように押し寄せる、例の証明です!)が掲載されている。文字を含む分数式の計 算が不慣れな高校1年生にとっては、辛い計算となっている。 最近、その解の公式の証明で、鮮やかな方法があることを知った。次のようにやるらしい。 aX2+bX+c=0 より、 aX2+bX=-c だから、 4a2X2+4abX=-4ac よって、 4a2X2+4abX+b2=b2-4ac より、(2aX+b)2=b2-4ac したがって、  であるので、 求める解の公式は、 となる。 ちょっとした工夫だが、途中計算に、文字の分数が一切出ないところが素晴らしいと思う。 多分、この裏技をみて一番感動するのは、教科書の証明で苦

    fbis
    fbis 2009/06/12
    凄い鮮やか。こんな解き方があったのか。
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    fbis
    fbis 2009/06/12
    確かに。都度調べながらやってる。
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • デストラクタからオーバーライドされた仮想関数が呼べない - imHo

    デストラクタとは別の解放用の関数が仮想関数になってるとして、基底クラスのデストラクタから呼び出しておけば自動的に呼び出されるものかと思ってた。 #include <iostream> using namespace std; struct Base { virtual ~Base() { terminate(); /* <- ここで仮想関数呼び出し*/ cout << "~Base" << endl; } virtual void terminate() { cout << "Base::terminate()" << endl; } }; struct Derived : public Base { virtual ~Derived() { cout << "~Derived" << endl; } virtual void terminate() { cout << "Derived:

    デストラクタからオーバーライドされた仮想関数が呼べない - imHo
    fbis
    fbis 2009/06/12
  • Perlで+を使うと幸せになれるよ (*´Д`)ノ - (゚∀゚)o彡 sasata299's blog

    2009年06月12日00:04 Perl Perlで+を使うと幸せになれるよ (*´Д`)ノ use constant を使って、リファレンスを定数として宣言するときってたまにありますよね。こういう値をデリファレンスするにはどうしていますか??僕はこうしていました>< #!/usr/bin/perl use strict; use warnings; use constant DATA => { aaa => 1, bbb => 2, ccc => 3, }; my $data = DATA; print join " ", keys %{$data}; # aaa bbb ccc 一度変数に値を入れるあたり、何かいまいちですね。。。この解決策を実は今日たまたまプログラミングPerlを読んでいて発見しました。こんな風に+を定数の前に付けてあげれば、文字列ではなく定数宣言された値だと判断し