タグ

programmingとtoreadに関するteppeyのブックマーク (14)

  • Super Technique 講座~有限状態機械:

    「有限状態機械(有限オートマトン)」とは、計算モデルの1つである。これは来コンピュータ科学の中でも「計算論」に属する話題であり、通常のコンピュータを形式化したチューリング機械よりも能力の低い計算モデルなのだが、アルゴリズムとしてこの形式化を利用することが出来、しかもこの「有限状態機械」は広い応用を持っている。いわゆる「正規表現」を処理するライブラリはこの「有限状態機械」の典型的な応用なのだが、それ以外にもプログラマとして知っていると、アルゴリズムの可読性と処理速度を上げるヒントを得られるアイデアである。 有限状態機械とは? 正規表現とは? 正規表現ライブラリの使い方 オートマトンと正規表現 簡単な応用~JIS →EUC 変換 より複雑な応用~FORTRAN風書式の処理 State デザインパターン 有限状態機械とは? 「有限状態機械」とは、コンピュータ科学(とは言っても数学寄りの奴)の「

  • ニコ動のコメントをREPLで - (new Hatena).blog()

    最近ニコ動に上がっている作業用BGMとか、音声だけで楽しめるものをWinampで聴く、ということをしているんですが (Scheme でローカルサーバー -> localhost:2525/?id=VIDEO_ID 的なURLをWinampで再生 -> にこさうんど or にこみみのキャッシュを探す -> mp3をWinampに転送、という流れで。タイトルにダブルクォートが付いているのがウェブ上のリソースという印です。Content-Disposition の filename フィールドを表示しています) コメントが見れないのがちょっと寂しくなってきたので、REPLに表示してみました: (上のとは別の動画です) コメントXMLのタイミング情報の単位がちょっと変わっていて (10ミリ秒) 戸惑いました。あと、XMLの取得に若干時間がかかってしまい、再生から少し送れて表示されてしまうという欠点

    ニコ動のコメントをREPLで - (new Hatena).blog()
  • 関数型言語の勉強にSICPを読もう - (6) 1章 - 小休止 traceを使えるようにする - higepon blog

    dankogaiさんからトラックバック404 Blog Not Found:scheme - traceとslibで助け舟を頂いた。 このように、「知らないとなかなかたどり着けない情報」をご提供いただけることはとても幸せなことだと思います。 slibとtraceの準備 Ubuntuならこんな感じ。 apt-get install slibgoshで requireしてみると・・・。 gosh> (use slib) #<undef> gosh> (require 'trace) *** ERROR: couldn't open output file: "/usr/share/gauche/0.8.4/lib/slibcat" Stack Trace: _______________________________________ 0 (call-with-output-file catp

    関数型言語の勉強にSICPを読もう - (6) 1章 - 小休止 traceを使えるようにする - higepon blog
    teppey
    teppey 2009/07/01
  • 100行のCプログラムでWebチャットを実装する方法 - mixi engineer blog

    例の冷却ファンを修理してもらいに秋葉原に行ったのですが、最近の同人ゲームのクオリティはすごいなあと感心していたら、その二階はもっととんでもないことになってて、ひとつ大人になってしまったmikioです。今回は、Tokyo Cabinetのテンプレート直列化機能を駆使して、たった100行のCプログラムでWebチャットシステムを実装してみます。 古式ゆかしいWebチャットシステム 10年くらい前にCGIスクリプトでチャットシステムを作るのが流行していたのを覚えている方も多いと思います。チャットログは現在のようにデータベースサーバに転送して格納するのではなく、ローカルファイルシステム上のファイルにCSVやTSVなどのフォーマットで格納したり、同じくローカルのDBMファイルに格納するのが主流でした。2ちゃんねるの「datファイル」もそのようなデータファイルの一種と言えるでしょう。 その頃から、CGI

    100行のCプログラムでWebチャットを実装する方法 - mixi engineer blog
  • qwik.jp - qwik リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

  • ヴイストン「Beauto Chaser」で学ぶプログラミング入門講座

    PS5PS4WIN「黒神話:悟空」レビュー “緩い死にゲー”で楽しい「西遊記」アクション! 心掴まれるストーリーも魅力 8月16日 23:00

  • B木 - naoyaのはてなダイアリー

    昨年から続いているアルゴリズムイントロダクション輪講も、早いもので次は18章です。18章のテーマはB木(B Tree, Bツリー) です。B木はマルチウェイ平衡木(多分木による平衡木)で、データベースやファイルシステムなどでも良く使われる重要なデータ構造です。B木は一つの木の頂点にぶら下がる枝の数の下限と上限を設けた上、常に平衡木であることを制約としたデータ構造になります。 輪講の予習がてら、B木を Python で実装してみました。ソースコードを最後に掲載します。以下は B木に関する考察です。 B木がなぜ重要なのか B木が重要なのは、B木(の変種であるB+木*1など)が二次記憶装置上で効率良く操作できるように設計されたデータ構造だからです。データベースを利用するウェブアプリケーションなど、二次記憶(ハードディスク)上の大量のデータを扱うソフトウェアを運用した経験がある方なら、いかにディ

    B木 - naoyaのはてなダイアリー
  • プログラミング格言集

    psychopathより。 金言、格言は古今東西いろいろあるのだが、ここではプログラミングに関する格言がまとめられていたので、抜粋して翻訳してみる。翻訳に間違い等があった場合は、コメント等で指摘してください。 We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil 私たちは、時間の約97%を占めるわずかな効率に関しては忘れるべきである: 時期尚早な最適化は諸悪の根源だ。 - C. A. R. Hoare Walking on water and developing software from a specification are easy if both are frozen 水の上を歩くのと、仕様に基い

  • コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ

    誰に教えられたのでもないのですが、ぼくは冬眠前のリスのようにコード片を溜め込んでいます。 コード片とは、ライブラリにするほどまとまった大きさではない、数行〜十数行のコードのことで、溜め込んだコード片は、アプリケーションやツールを作るときに使っています。 例えば「Perlでメール送るのどう書くんだっけかな」とか「Pythonでファイル開いて全部読むのどう書くんだっけかな」とかというときに、溜め込んだ中からコード片をさっと取り出してコピペした後、なじむようにちょっと修正して使っています。 コードポケット コードを溜め込んでいるディレクトリをぼくは「コードポケット」と名付けていて、コード片を取り出すことを「ポケットからコードを取り出す」と呼んでいます。先日、知り合いが似たようなことを実践していて、その人は「コードスケッチ」と呼んでました。いい名前ですね。 ぼくの場合、コードポケットは ~/lan

    コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ
  • 大人のためのブラックボックス読解講座――クロージャとオブジェクトの微妙な関係

    はじめに 2006年8月、Javaの次期仕様(JDK7)にクロージャを入れる案*が出され話題になりました。クロージャは関数型言語では30年以上の歴史を持ち、プログラミングにおける基的な道具となっています。最近はPerlRubyPythonなどの軽量言語(Lightweight Language)にも取り込まれ、それと知らずに使っているユーザーも増えているのではないでしょうか。 一方、手続き型言語の世界では、完全なクロージャはなじみが薄いようです。C言語からC++へと発展してきた手続き型言語のメインストリームでは、 ガーベジコレクションを持たず、ローカル変数をスタックに置くことを基とする言語のため、クロージャとの相性が悪かった オブジェクト指向を採り入れることでクロージャの代用とできた といったことが理由でしょう。 実際、クロージャとオブジェクト指向プログラミング言語には、メカニズム

    大人のためのブラックボックス読解講座――クロージャとオブジェクトの微妙な関係
  • Yahoo | Mail, Weather, Search, Politics, News, Finance, Sports & Videos

  • 話すようにプログラムするPythonチュートリアル - なんたらノート第三期ベータ

    Pythonでえらくハッキッシュなコードを書き散らして遊んだ 3の倍数と3が付く数字だけアホになり、5の倍数だけガルマっぽくなるスクリプトにチャレンジ - なんたらノート 第二期 うえ、他人のエッセイをえらくこき下ろし OOコード養成ギブス - rants OOコード養成ギブスとやらが人気らしい。 - なんたらノート 第二期 て、われながら生産性のないやつだと思うので、ここは逆に、Pythonチュートリアルをひとつ書いてみようと思います。 まず最初に、こんなプログラムがあったとさ。 #素数の数列を返すアルゴリズム def prime_numbers_until(limit): prime_numbers = [] for n in range(2, limit): divider_found = False # 1より大きくその数より小さい範囲で調べる for m in range(2,

    話すようにプログラムするPythonチュートリアル - なんたらノート第三期ベータ
  • ケータイ小説 計算機科学入門 第1話 - sumiiのブログ

    なんでこんなキモい話書くの? 計算機科学(コンピュータサイエンス)にも「常識」があるンだけど 現代人は忙しいし ましてや技術者はデスマーチ (研究者でもいるけど) 大学の授業受けたり 教科書とか読む暇ないでしょ(書く暇も) 情報とか計算機(コンピュータ)とか Computer = 日語では計算機だけど 1+2=3みたいな計算だけじゃない 「情報」を処理することはみんな「計算」 情報って何、とか言い始めると哲学になっちゃうけど 知識の表現ってことにしておいて だから文字や文章はもちろん 画像とか音声・音楽とかも情報 計算モデル 「計算機科学」だから 計算機(っていうか「計算」そのもの)について「科学」するんだけど いちいち電子回路から考えてたら大変だし 古来、「計算(機)」は電子回路だけじゃないの 質を明確にしたいから抽象化=一般化して 数学的なモデルを考えるわ 有限状態オートマトン 一

    ケータイ小説 計算機科学入門 第1話 - sumiiのブログ
  • Functional Programming HOWTO

    Functional Programming HOWTO¶ Author: A. M. Kuchling Release: 0.32 In this document, we’ll take a tour of Python’s features suitable for implementing programs in a functional style. After an introduction to the concepts of functional programming, we’ll look at language features such as iterators and generators and relevant library modules such as itertools and functools. Introduction¶ This section

    Functional Programming HOWTO
  • 1