タグ

2009年8月14日のブックマーク (17件)

  • 私のPerlコミュニティへの貢献と位置について考える。 | taro-nishinoの日記 | スラド

    Iron Man Blogging Challengeへの参加者が増えて、どちらかと言えばストイックなPerlコミュニティが弾けるようにオープンになったように思います。日でも参加者が増えていることは嬉しい限りです。因みに私は参加していません。私はすべてに怠惰で、損得があろうが無かろうが、少しでも束縛される要素は出来るだけ排除したいのです。 さて、Iron Man Blogging Challengeに参加しているブログを頻繁に巡回しています(不思議に、私はこういうことに関しては怠惰ではないのです)が、個人的な感性から、Iron Man Blogging Challengeの提唱者であるMatt S. Trout氏のブログが一番面白いと思います。但し、日人である私が英語ネイティブな人にこういうことを書くと語弊がありますが、氏の英文ははっきり言って悪文(これは悪口ではありません、念のため。

  • ゲームプログラミングの今後 | Happy My Life

    Tim Sweeney, “The end of the GPU roadmap” – HPG2009, PDFより。 CPUGPUは今後どのように進化していくのだろうか? それをEpicGames(UnrealEngineの開発元)のCEOがHPG2009で発表している。それが上記のスライド。 翻訳してみようかとちょっとググってみると、どうもCEDEC 2008で公表している内容と同じのようなので、スライド前半部分のグラフィックス周辺の進化についてはCEDEC 2008 – EPIC GAMESのTIM SWEENEYが語る「10年後のゲーム機の姿、ソフトウェアの形」(後編) (2) REYESレンダリングのリアルタイム実装が実現するかを見てもらうとして。 このスライドの後半ではソフトウェアの方向性についての予測も書かれている。これは、先程のCEDEC 2008 – EPIC GAME

  • 正規表現エンジンを作ろう(6) - Pixel Pedals of Tomakomai

    連載最終回では、主にNFAエンジンについて説明しました。鬼車等の正規表現エンジンも記事で紹介したエンジンのようにNFAをバイトコードに変換して処理を行っています*1ので、今回の記事が少しでもソースを読む際の助けになればと思います。 さて、記事中で紹介したregexですが、こいつはキャプチャも対応しています。連載の中では一切キャプチャに触れませんでしたので、どのように行っているのか簡単にソースを追っかけてみましょう。 ./tryからキャプチャした値にアクセスするには、第3引数に文字列を渡します。そうすれば、\1〜\9をキャプチャした値に変換したり&をマッチした文字列全体に変換したりしてくれます。 % ./try 'a(.+)(c|b)' 'cbacbacba' '\1,\2,&' 1 \1 \2 cbac,b,acbacbこのキャプチャ機能の呼び出しはregsub.c内にありますが、こいつは

    正規表現エンジンを作ろう(6) - Pixel Pedals of Tomakomai
  • 正規表現エンジンを作ろう(4) - Pixel Pedals of Tomakomai

    連載も第四回となりました。今回が正規表現エンジンを作る上で一番重要な部分で*1、正規表現とNFAの関係を説明しています。結局は当たり前のことしか言ってないんですが、そこはコロンブスの卵でして、知ってるのと知らないのとでは大違いです。 さて、この連載ではNFAをPythonで定義通りに忠実に実装しています。 この連載ではその数学的な概念をPythonを使って表現しながら、実際に動作する正規表現エンジンを作り上げます。 第一回 この実装は概念を理解するのには有用なのですが、実用的な正規表現エンジンとしては明らかにオーバースペックです。Regular Expression Matching Can Be Simple And FastでのC++での実装を見ながら、現実的なNFA表現の落としどころを簡単に見てみましょう。 C++実装のNFAの説明 C++の実装では、NFAを構造体のリスト構造として

    正規表現エンジンを作ろう(4) - Pixel Pedals of Tomakomai
  • 正規表現エンジンを作ろう(3) - Pixel Pedals of Tomakomai

    第三回の公開です。今回は字句解析と構文解析を自作しました。 格的な構文解析器は、通常 yacc 等のツールを利用して自動で作ることが多いですが、今回の正規表現の文法は単純なので自作してしまいます。 じゃあ、ツールを利用するとどうなるの? ってのをやってみましょう。PLYを使って今回の記事の処理を作ってみます。PLYは、lexとyaccをPythonで実装し直したツールです。 インストール easy_installで入れちゃって下さい。 % easy_install ply 使い方 ドキュメントが和訳されちゃってるので見ちゃって下さい。 基的には ply.lexとply.yaccをimportして、指定された命名*1でルールを記述し、lex.lex() とか yacc.yacc() して初期化してやる感じです。初期化したら、lex.input()やらlex.token()やらyacc.p

    正規表現エンジンを作ろう(3) - Pixel Pedals of Tomakomai
  • 正規表現エンジンを作ろう(2) - Pixel Pedals of Tomakomai

    CodeZineさんで第ニ回が公開されました。今回は最も底辺の部分である、NFAとDFAを実装しています。ただし、NFAの実行部に関しては以下の通り実装しませんでした。 このためNFAを実行するソースはDFAに比べてかなり複雑になります。 ただし、今回はNFAを実行することはないので、NFAを実行するソースは実装しません。 これを、実装してみましょう。第一回で述べた通り、NFAを評価するには2種類の方法があります。 なお、実行部分の取り出しはDFAと同様に、get_runtime()メソッドで行います。実装は二つあるので、お好みの方で。*1 def get_runtime(self): return NFARuntime(self) # return NFABacktrackRuntime(self) 幅優先 最初は、幅優先の方法です。これは、選択しうる状態を全て保持しながらシミュレーショ

    正規表現エンジンを作ろう(2) - Pixel Pedals of Tomakomai
    hitsujibane
    hitsujibane 2009/08/14
    CodeZineの連載と一緒に読みたい
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • 正規表現エンジンを作ろう一覧

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    正規表現エンジンを作ろう一覧
  • アルゴリズムコンテストの挑み方 (3) - d.y.d.

    17:19 08/11/27 TopCoder Code Jam の練習に……と思ってしばらく前から TopCoder のSRMに参加してたのですが、 せっかくなので cafelier@SRM に記録をつけることにしました。 どういう試行錯誤をしながら提出した時のコードにいたったのかを、 できるだけ詳細にメモろうと思っています。 426以前のは記憶から掘り起こして書いたのでちょい大ざっぱですが。 これまで何回かここで書いたような整然とした考え方を当に自分がしているかいうと、 してないよなー、と薄々思ってしまっているので、じゃあどういう風にやっているんだろうかと。 自分のふり見て我がふり直す。 20:26 08/11/24 論文 PLAN-X 2009 通ったみたいです。ばんざい。 ただでさえD論まったく間に合う気がしないのに、camera ready版なんて作ってる時間が… オートマト

    hitsujibane
    hitsujibane 2009/08/14
    グラフで解いてみる
  • アルゴリズムコンテストの挑み方 (2) - d.y.d.

    21:25 08/10/27 論文 の締め切り終わったら頑張った自分へのご褒美(笑)であれとこれとそれをやる時間をとるぞー! ……みたいなことを思っていたはずなのに、いざ提出し終わると気が抜けて何一つやる気がでない問題。 困った困った。 ナイチル たくさん人がいらしてる今のうちに 「ナイトメア☆チルドレン」新装版 面白いよみんな買おうぜ! などと書いてみる。 自分のマンガの趣味はわりと平凡だと思ってて、 流行ってるマンガは大抵好きだし自分の好きなのはだいたい流行ってるし。 なのになぜだか藤野もやむ作品だけは唯一の例外で、とっても不思議でならない。 100回くらいアニメ化されてて然るべきだと思う。 何回か書いてますがとにかく最終話が好きで、 そこまでのシナリオが一気に集まって一つ一つのセリフが3倍の重みを持つように収斂していく幕引き。 あれは良い。 17:12 08/10/24 アルゴリズム

    hitsujibane
    hitsujibane 2009/08/14
    アルゴリズムの設計方法
  • アルゴリズムコンテストの挑み方 - d.y.d.

    17:29 08/09/30 クロスワード 暇つぶしに "Clueless Crossword" という冊子を買ってみて意外とハマっています。 クロスワードパズルなんだけど、単語のヒントの代わりに、 各マスに1~26の数字が振ってあって同じ数字のマスには同じA~Zが入るように埋めるというもの。 「母音っぽくて二連続して語尾にも出てくるのは多分 E だろう、もしかしたら O の可能性はなくもないけど」 みたいに埋めていく。 ちょっと違うけど フラッシュであった。 20:15 08/09/28 だいちのよろい そろそろ日に戻る前に観光するぞ月間、ということにして、ウルル(エアーズロック)に行ってきました。 もっとワイルドな感じかと思ったら、完全にリゾートのリゾートによるリゾートのための地帯になってました。 まあそんなもんか。 日は強風のため登るの禁止とのことだったので、周りから見るだけ。

    hitsujibane
    hitsujibane 2009/08/14
    計算量を見積もる
  • Burrows Wheeler Transform と Suffix Array - naoyaのはてなダイアリー

    ,. -‐'''''""¨¨¨ヽ (.___,,,... -ァァフ|          あ…ありのまま 今日 起こった事を話すぜ! |i i|    }! }} //| |l、{   j} /,,ィ//|       『BWT について調べていたら Suffix Array のライブラリができていた』 i|:!ヾ、_ノ/ u {:}//ヘ |リ u' }  ,ノ _,!V,ハ | /´fト、_{ル{,ィ'eラ , タ人        な… 何を言ってるのか わからねーと思うが /'   ヾ|宀| {´,)⌒`/ |<ヽトiゝ        おれも何をされたのかわからなかった… ,゙  / )ヽ iLレ  u' | | ヾlトハ〉 |/_/  ハ !ニ⊇ '/:}  V:::::ヽ        頭がどうにかなりそうだった… // 二二二7'T'' /u' __ /:::::::/`ヽ /'

    Burrows Wheeler Transform と Suffix Array - naoyaのはてなダイアリー
    hitsujibane
    hitsujibane 2009/08/14
    テキストを圧縮しやすい形に変えるアルゴリズム
  • 高速かつ省メモリで文字列を扱うデータ構造「wavelet tree」

    はじめに 大規模なデータを扱うアプリケーションでは、速度とともに作業領域量も大きな問題となります。作業領域がメインメモリに収まらない場合、スワッピングが発生し、大幅な速度低下につながります。そのため近年、データ構造は高速なだけでなく、作業領域量が小さいことも求められています。今回紹介するのは2003年に提案されたデータ構造、wavelet tree(以下「WT」と表記)です。WTは圧縮索引やSuccinct Data Structureなど、データをコンパクトに表現する際に重要なデータ構造です。WTは文字列T[0...n-1]が与えられた時、次の2つの操作を定数時間でサポートします。 rank(p, c)――T[0...p]中のcの出現回数を返す select(i, c)――(i+1)番目のcの位置を返す WTの作業領域量は、文字列をそのまま保存した時の約2倍程度です。 対象読者 C++

    高速かつ省メモリで文字列を扱うデータ構造「wavelet tree」
    hitsujibane
    hitsujibane 2009/08/14
    データをコンパクトに扱うためのデータ構造
  • ゲームクリエイターだけど質問ある?

    1 名前: ◆ctLQfwNRCI :2009/08/12(水) 02:07:52.11 ID:GvYiVOAU0 業界歴1年半。 中小企業。 マッタリよろしく。 3 名前:以下、名無しにかわりましてVIPがお送りします:2009/08/12(水) 02:09:56.09 ID:GU9pGwJMP 子供の時好きだったゲームは? >>3 おおすぎるよ…w でも流行のゲームよりもマイナーで難易度高めなゲームをやってたかも… 5 名前:以下、名無しにかわりましてVIPがお送りします:2009/08/12(水) 02:11:31.87 ID:E7p3Ja9p0 割れについて一言 >>5 某雑誌調査だと10%だっけ?思ったより少ないのな。 まぁ、1社員だと実感がないのが現実。 ちなみに電車でDSをやっている人を見ると、ROMを見ちゃう職業病をわずらった。 7 名前:以下、名無しにかわりましてVIPが

  • 金谷健一のここが変だよ日本人の英語

    金谷健一のここが変だよ日人の英語 第1回, 電子情報通信学会 情報・システムソサイエティ誌, Vol. 7, No. 3 (2002-11), pp. 9-12. (理工系専門家向け) 第2回, 電子情報通信学会 情報・システムソサイエティ誌, Vol. 7, No. 4 (2003-2), pp. 4-7. (理工系専門家向け) 第3回, 電子情報通信学会 情報・システムソサイエティ誌, Vol. 8, No. 1 (2003-5), pp. 14-17. (理工系専門家向け) 最終回, 電子情報通信学会 情報・システムソサイエティ誌, Vol. 8, No. 2 (2003-8), pp. 15-18. (理工系専門家向け) 続・金谷健一のここが変だよ日人の英語 第1回, 電子情報通信学会 情報・システムソサイエティ誌, Vol. 8, No. 3 (2003-11),

    hitsujibane
    hitsujibane 2009/08/14
    PDFファイル
  • 昨日、新しいPCを買いました - 落書き、時々落学

    現在、設定中。 とりあえず、ubuntu 8.10 を入れた。 設定メモ。 ディスプレイの設定 ディスプレイが非常に見にくかった。 xorg.confを変更して、ディスプレイ設定のリフレッシュレートを60から75に変更したら、 見やすくなった。 Section "Device" Identifier "Configured Video Device" EndSection Section "Monitor" Identifier "EIZO L360" VendorName "EIZO" ModelName "EIZO FlexScan L360" HorizSync 30.0 - 61.0 VertRefresh 50.0 - 75.0 Option "DPMS" EndSection Section "Screen" Identifier "Default Screen" Monito

    昨日、新しいPCを買いました - 落書き、時々落学
    hitsujibane
    hitsujibane 2009/08/14
    Ubuntuの設定の仕方
  • 第一回 カーネル/VM探検隊まとめ - カーネル/VM探検隊 | Google グループ

    まとめページ作りました。 メンバーなら自由に編集出来るので、弄って充実させちゃってください。 http://groups.google.com/group/kernelvm/web/%E7%AC%AC%E4%B8%80%E5%9B%9E+%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB%EF%BC%8Fvm%E6%8E%A2%E6%A4%9C%E9%9A%8A%E3%81%BE%E3%81%A8%E3%82%81?hl=ja