マジック フォー オール ウィズ 長場雄©Disney ©Disney/Pixar © MARVEL © & ™ Lucasfilm Ltd. ©Disney Based on the ""Winnie the Pooh"" works by A.A. Milne and E.H. Shepard.
マジック フォー オール ウィズ 長場雄©Disney ©Disney/Pixar © MARVEL © & ™ Lucasfilm Ltd. ©Disney Based on the ""Winnie the Pooh"" works by A.A. Milne and E.H. Shepard.
perlのテストフレームワークである、TAP::Harnessの動きを調べました。わかりやすく言えばproveコマンドの中身です。 *.t(予備知識) 説明不要だと思いますが、モジュール開発者が書くテストスクリプトです。個々の*.tは単なるスクリプトで、実行されるとTAPを標準出力へ吐きます。こんなの。 1..2 ok 1 not ok 2TAPを吐くのは、Test.pm とか Test::Moreとかが担当しているお仕事で、TAP::Harnessは何もしないです。 なお、書式さえ守ってればTest.pmやTest::Moreを使わなくても単にprint文で吐いてもOKだったりします。 App::Prove proveコマンドの実装です。引数の解釈とかをして、TAP::Harnessを起動します。 TAP::Harness テストを起動させるruntestsを持っています。runtest
Structure Synth is a cross-platform application for generating 3D structures by specifying a design grammar. Even simple systems may generate surprising and complex structures. The design grammar approach was originally devised by Chris Coyne (for a 2D implementation see the popular Context Free Art). Features: Graphical environment with multiple tabs and OpenGL preview Integration with third-part
Structure Synth は,文脈自由文法を使って 3D CG を作成するソフトウェア。つまるところ, Context Free の 3D 版だ。単純なプログラムから複雑な CG を生成することができる。 GI レンダラー SunFlow 用のシーンファイル出力にも対応しており,これらを組み合わせることによって,とてもお手軽かつ高品質な幾何 CG アート環境が完成する。 以下,とりあえず作ってみた習作。仕組みはほとんど Context Free と同じなので,Context Free に慣れていればすぐにコードを書けるようになる。 set maxdepth 50 12 * { rx 30 } RC BG rule RC { {} CROSS { rx 10 z 0.7 s 0.98 } RC } rule RC { {} CROSS { ry 10 z 0.7 s 0.98 } RC
La perfection est atteinte non quand il n'y a plus rien à ajouter, mais quand il n'y a plus rien à retrancher. [Perfection is achieved, not when there is nothing left to add, but when there is nothing left to take away.] Antoine de Saint-Exupéry Introduction Colors rendition Characters conversion Extra escape sequence Download Links Introduction Windows NT/2000/XP does not support ANSI escape sequ
perlのえらい人が集まる#catalyst-jaで質問してきた。 ここからどうでもいい話( ・∀・) そもそも#catalyst-jaって何 freenode上に存在するcatalystな人が集まるチャンネル。catalystについて調べてるうちに知った。 最初はfreenodeという単語すら知らなかったので、ググってたどり着いたはいいけど、このチャンネル、perlのえらい人ばっかりいる。 初めてjoinしたときはビビってすぐ落ちた。 このチャンネル、ググっても様子が分からなかったので、とりあえずサーバマシンでircクライアント立ち上げて入りっぱなしにしてみた。 その後、長いこと放置してログを見てみるも、全然発言が発生しない。 どう見ても初心者お断りな雰囲気でガクブル。 catalystのネタや小話や質問が毎日飛び交ってるのを想像してた。 どうでもいいがある日一度質問したら華麗にスルーさ
モデルをAPIに分離したら、$c->model('API::User')は当然CRUDなんて出来るわけ無いから、コントローラかAPIでDBICが使えるオブジェクトを作ってやらんといけない。 コントローラ側で作る場合 $c->model('API::User')->method( $c->model('DBIC::User') ); API側で作る場合 # どっからかスキーマを拾ってくる my $u = $schema->resultset('User'); これ、割と面倒。コントローラとAPIどっちかで毎回これやるの? あと例えば、 /user/5 でidが5のデータを引っ張ってくるようなとき、 コントローラ $c->model('API::User')->get_user_data( $c->model('DBIC::User'), $user_id ); API sub get_use
なんつうかろくなタイトルが思いつかないのはいつものことで。 catalystのMVCが駄目な理由 モデルを呼ぶのに$cというwebのコンテキストを通してしか得られないオブジェクトを使わなければいけないから。 そりゃコントローラにべったりになるし、テストも書けやしない。 railsだと User.new とかで呼べる。 ようやくCatalyst と MVC - Bulknews::Subtech - subtechで言われてる意味を理解した。 ブックマークしたのが約1年前だ。成長遅いよ俺。 名前空間 柔道家にいつものようにあれこれ聞いてたらこんなことを言われた。 Web/Controllerってより、Controller/Webじゃないの コントローラの役割がロジックのハンドリングやURIディスパッチなら、確かにその通りだと思った。 リクエストがCLIからだろうがCUIからだろうがGUIから
今日も今日とて。 MyApp::Web作ったらconfig読めなくなったーって喚いてたら昨日(むしろ今日の午前4時)に神からコメントで原因を教えてもらう。 プロジェクトを catalyst.pl MyApp で作ったあとでパッケージ名書き換えたりファイル移動したりしたのがまずかった。 Catalyst::Plugin::ConfigLoaderが読む設定ファイルはアプリケーションクラスをdecamelizeしたファイル名である 勉強になった。神に感謝。 最初から catalyst.pl MyApp::Web とか打てばすべてよしなに実行される。 モデル作りまくるのがめどい件 前述の通り、Catalyst::Model::Adaptorを使うと、テーブルに対応するモデルを、テーブルの数だけ作らなければならない。 めどいのでググるとやっぱり同じこと思ってる人がいて、以下のどっちかを使えば解消さ
MyApp直下にControllerとModelとViewがあるいつもの形式から、モダンPerl入門に従って、MyApp/Webを作ってその下にControllerとModelとViewを移したら、yamlに書いた設定が読めなくなってスクリプトサーバすら起動しなくて涙目になってる。 テスト自動化ということでアプリ名:AutoTestを作成。 before % tree AutoTest/lib AutoTest/lib |-- AutoTest | |-- API | | |-- Book.pm | | `-- User.pm | |-- Controller | | `-- Root.pm | |-- Model | | |-- Book.pm | | |-- DBIC.pm | | `-- User.pm | |-- Schema | | |-- Book.pm | | `-- Use
出来の悪い人がCatalystでモデル分離を勉強した仮まとめ。 嘘、大げさ、紛らわしいことが入り乱れてます。 何故皆モデルをコントローラから分離しろ、コントローラにロジックを書くなと言うのか catalystではコントローラで$cが使えるが、これはuriリクエストがあったときしか使えない。 つまりコントローラに$cを使いまくったロジックを書いてると、その部分をテストするのに、ブラウザからしかテストできなくなってしまい、テストの自動化ができなくなるから モデル分離の理由は? テスタビリティを上げること(テストの自動化)、コマンドラインやスクリプトからもモデルに書いたロジックを使いたいから Q.コントローラに書いたロジックを使いたいならwgetなりcurlなりすればいんじゃね? A.テストでカバーできるのが実行結果だけになる。ロジックの過程がチェックできない。他にも、コントローラに書いたら外部
Encode object version 2.12 does not match bootstrap parameter 2.26... な表示がNanoAとMENTAを入れようとする度に出てたので放置してたけど、MacOSX: Security Update 2009-001 で Perl がこける。Encode がぁ〜を読む限り/System/Library/Perl/5.8.8/以下のモジュールが原因のようなので、PERL5LIBに/System/Library/Perl/5.8.8/以下のパスを入れて更新した。しばらくobjective-cばかり弄ってたので気がついてなかった模様。 レンタルサーバでのCatalystをつかったCGIはきつい? Catalystでつくったアプリケーションをさくらレンタルサーバに置く予定だけれど、CatalystのCGI用途は少々重い、という記述を幾
この前の日曜日にKansai.pmに参加してきました。 Perlの人でもないし参加しても良いのかなぁと悩みましたが、HTML::ExtractContentを作った人の話が聞けるので行ってみました。正直、Hatenaを見たいのと生id:naoyaさんを見たかったというのもありますw 一番最初の話が、吉田さんによるプログラムの高速化の話。いきなりレベルの高い話で、周りの人も頭良さそうな人ばかりだったので、参加する所間違えたかなぁと一人内心焦っていました。 Cell Challenge 2009 参加記 高速化の観点は、以下の3点 アルゴリズムの高速化 ビット並列化 CPU(正確には、SPE)一つ単位での高速化 パイプライン データ依存とデータハザード ループアンドローリング ループアンローリング (訂正 2009/03/28 14:30) 複数CPUで分散処理をさせる時の高速化 どれも難しい
文:Ryan Naraine(Special to ZDNet.com) 翻訳校正:石橋啓一郎 2009-01-06 14:15 米国と欧州のハッカーのグループが、200台からなるPlayStation 3のクラスターの計算能力と、約700ドル相当のテスト用の電子証明書を使い、既知のMD5アルゴリズムの脆弱性を標的にして偽の証明機関(CA)を作る方法を発見した。これは、すべての最新のウェブブラウザによって完全に信用されている証明書を偽造することを可能にするブレークスルーだ。 この研究は、現地時間12月30日にドイツで開かれていた25C3カンファレンスでAlex Sotirov氏とJacob Appelbaum氏が発表したものだ。この研究は、最新のウェブブラウザがウェブサイトを信頼する方法を事実上破り、攻撃者がほぼ検知不可能なフィッシング攻撃を実行する方法を提供する。 この研究が重要なのは、
もっと企業でPerlを使ってもらいたい――endeworksの牧大輔さんは社団法人JPA(Jpan Perl Association)を立ち上げ、Perlの企業利用を促進したいという。小さいころから海外で暮らし、ITベンダーのエンジニアも経験した。エンジニアとしての同氏を助けてくれたのは常にコミュニティだった。「自分が恩返しする番になっている」と語る。 この企画はokyuu.com編集部が現在のエンジニア像をリレー形式で追っていくものです。 (取材・文=編集部) 牧大輔(まきだいすけ) 1977年7月13日生 31歳 株式会社endeworks代表取締役 【略歴】 1999年 米Washington University卒業 2000年 Network Appliance入社 2004年 株式会社ライブドア入社 2004年 米Lehman Brothers入社 2005年 株
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
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く