タグ

2008年5月3日のブックマーク (17件)

  • [haskell] How To Arrow 基本 - 言語ゲーム

    http://d.hatena.ne.jp/propella/20070807/p1 1:基 http://d.hatena.ne.jp/propella/20070807/p2 2:並置 http://d.hatena.ne.jp/propella/20070808/p1 3:選択 -- なんか知らんうちに Arrow 流行ってるようなので試してみる。 -- http://www.cs.chalmers.se/~rjmh/afp-arrows.pdf によると、ポイントフ -- リースタイルに IO を混ぜるのが Arrow だと考えればよいらしい。 import Control.Arrow -- Arrow では高階型を使いまくるので慣れないとちょっと恐ろしく見える。 -- Arrow は Monad と同じくクラスだが、Haskell で言うクラスとは他でいう -- インタフェース

    [haskell] How To Arrow 基本 - 言語ゲーム
  • 論文読み: Arrows, Robots, and Functional Reactive Programming http://www.haskell.org/yampa/AFPLectureNotes.pdf - 言語ゲーム

    Haskell のアニメーションライブラリ Yampa についてのチュートリアル。またもや FRP (Functional Reactive Programming) の話題です。SOE の FAL は休憩して、その未来の姿である Yampa に寄り道します。Monad を一般化した Arrow なるものを使って、time / space leak なる物を排除し、モバイルロボットのプログラムをきっちり記述します。 プログラムの例として、シムボット(ロボットシミュレータ)を扱います。シムボットは二つの独立して動く車輪を持ち、ぶつかりセンサーや、前後左右に光学センサーを持ちます。また、他のシムボットの位置を知る事も出来ます。 シグナル (p 3) 一番重要な概念はシグナルです。 Signal a = Time -> a つまり、シグナルとは時間の関数です。例えばシムボットは車輪が二つあるので

    論文読み: Arrows, Robots, and Functional Reactive Programming http://www.haskell.org/yampa/AFPLectureNotes.pdf - 言語ゲーム
  • 謎のテクノロジー「ぼかりす」の衝撃:CloseBox & OpenPod:オルタナティブ・ブログ

    MaciPhone、iPod、歌声合成、DTM、楽器、各種ガジェット、メディアなどの情報・雑感などなど 1のニコニコ動画ビデオが衝撃を与えています。それは、 【初音ミク】 PROLOGUE 【ぼかりす】 この調教結果を聞いてみて頂けますか?まだちょっと不自然なところがあるのですが、楽しんで頂ければ幸いです。これからもロングバージョンとか別の曲とか、どんどん投稿していきたいと思いますので、よろしくお願いします! 情報はこの投稿者コメントと、動画で流れているVOCALOID Editorっぽい画面(パラメータ部分は隠されている)、そして【ぼかりす】という謎の単語のみ。 問題なのは、この動画で使われている歌声が初音ミクのものでありながら、従来の調声(調教)とはかなり開きのある、非常に人声に近い表現力を持っているというところにあります。 2ちゃんねるのVOCALOIDスレでもこの謎解きが大きな

    謎のテクノロジー「ぼかりす」の衝撃:CloseBox & OpenPod:オルタナティブ・ブログ
  • 男⇒女、女⇒男、イタリアのトランスジェンダーなCM

    nsyee
    nsyee 2008/05/03
    男女どっちの役も美しすぎる
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

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

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    nsyee
    nsyee 2008/05/03
  • 無題のドキュメント 海の中の恐怖画像集めんぞ

    1 :以下、名無しにかわりましてVIPがお送りします。[]:2008/04/27(日) 16:15:02.89 ID:PusMiApf0 水中でとてつもなくでかい怪物がぼんやり見えてるとか 深海魚やら、集めようか 人によってはグロに映る写真もありますので、苦手な人はスルーして下さい 4 :以下、名無しにかわりましてVIPがお送りします。[]:2008/04/27(日) 16:18:24.85 ID:PusMiApf0 13 :以下、名無しにかわりましてVIPがお送りします。[]:2008/04/27(日) 16:25:16.09 ID:PusMiApf0 14 :以下、名無しにかわりましてVIPがお送りします。[sage]:2008/04/27(日) 16:27:04.03 ID:UF9sm/p1O >>13 うわ…ああああああああ 48 :以下、名無しにかわりましてVIPがお送りします

  • 1+1ができない子と線形論理 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    1+2と1+1 森毅さんが書いていたのだったかな? 「1+2はできるが、1+1はできない子」の話を読んだことがあります。ちゃんとは憶えてないのですけど、だいたい次のようなことだったかと: 大人:まず1があるだろう。 子供:うん。 大人:そこに2を持ってきて。 子供:うん。 大人:一緒にしたらいくつだ? 子供:3 と、1+2=3はOK。 大人:まず1があるだろう。 子供:うん。 大人:そこにまた1を持ってきて。 子供:えっ、1はさっき持ってきちゃったから、もうないじゃん。 大人:別な1を持ってくる。 子供:別のだったら、1じゃないでしょ。 僕も似た感覚を持ったことがあるので、この子の発想は理解できます。計算結果を出す前に、計算式を組み立てるとして、そのとき、□+□ のようなテンプレートを考えましょう。また、このテンプレートとは別に、(一桁の数に限定して)1から9の数が書いてあるカードがそれぞ

    1+1ができない子と線形論理 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • Arrowの心 - 2007-08-16 - mad日記

    昨日の続きです。記法がよいとかMonadみたいに副作用が扱えるとか言ったメリットをはるかに越えたArrowの素晴らしさについて紹介します。 reverse.reverse == id か? 自分が最初にArrowってすごいと気づいた問題がこれです。大学で同級生と話している時に気づきました。大して役に立つ例では無いですが、Arrowの新しい側面が見えてくる例です。 標準入力に対してreverse,reverse,headを順に実行して結果を出力するコードは以下のようになります。後の比較の為に敢えてArrowで書いています。 import Control.Arrow main :: IO () main = getContents >>= print. (reverse >>> reverse >>> head) リストを2回ひっくり返したら元に戻るだけなので、そのheadをとるという計算は一

    Arrowの心 - 2007-08-16 - mad日記
  • ArrowLoop - 言語ゲーム

    さて、気分を変えて ArrowLoop をやります。論文に書いてある loop f b = let (c,d) = f (b,d) in c の意味が全く分からなくて Arrow の勉強が一ヶ月近く停滞していたのですが、id:MaD さんが素晴らしい解説 http://d.hatena.ne.jp/MaD/20070818 を書かれているので自分なりに写経します。loop を使って普通のループを作るには、引数として関数を一つ与えます。関数の型は (b,d) -> (c,d) のような入出力ともタプルとします。よくある図で示すと、タプルの後ろの引数がくるりと入力に繋がれる形をしています。 import Control.Arrow nonsense (b, d) = (b + 1, d * 2) -- *Main> loop nonsense 1 -- 2 -- このしようも無い例では、b +

    ArrowLoop - 言語ゲーム
    nsyee
    nsyee 2008/05/03
    『手続き的にループを書くのは天動説のような物です』
  • Haskell でスタック言語を作る - 言語ゲーム

    Arrow はスタック言語だと口で言うだけじゃ信用してもらえないと思うので軽く作ってみる。 もしかして、Haskell で Joy (風言語)というのはとても難しいのではと思っていた。何故難しいかというと、スタックというのはリストなのだけど、リストというのは普通一つの型しか入れる事が出来ないのだ。でもリストじゃなくてタプルだったら問題ないと気が付いたのでやってみた。どちらかと言うと Cat 言語にあわせて作りました。サボってパーサーを作ってないので、文法は Arrow のままです。こんな風に実行します。リストの最後に factorial の Cat 風定義も置いておきました。 Cat> runCat $ push 3 >>> push 4 >>> add (7,())module Cat where import Control.Arrow data Quoation a = Q a in

    Haskell でスタック言語を作る - 言語ゲーム
  • ActionScript日記 - サウンドのリアルタイム生成(5) - テキスケ

    メロディー譜の簡易自動作成 (Poco a poco) 「フランス」を含むニュースと関連グッズの紹介 (イマナビ!News&Shopping) Web素材/JSMML (Epilogue/LogueWiki (PukiWiki/TrackBack 0.4)) Web素材/JSMML (Epilogue/LogueWiki (PukiWiki/TrackBack 0.4)) 「FlMML - バッファリング・ファミコン音源・ゲームボーイ ノイズ」 (とりあえずコーヒーを飲もう) Web素材/JSMML (Epilogue/LogueWiki (PukiWiki/TrackBack 0.4)) 【IT】マイクロソフト、「Silverlight 3」でH.264およびAAC対応へ…Flashへの対抗強める [08/09/12] (【究極の宗教】Physical Mankindism【PM】 by

    ActionScript日記 - サウンドのリアルタイム生成(5) - テキスケ
  • FrontPage - Web開発環境「葵」

  • プログラムの動的生成と flash の未来 - 言語ゲーム

    当は自分でやりたくて仕方が無いのだけど、私を待っている仕事が列を成してこちらを見ているので誰かに託そうとここに書く。こないだ作った、いや、作ったというより皮を被せただけだけど、MML を鳴らす奴の仕組みについて調べているうちに興味深い記述にぶつかった。 新しい Loader と ByteArray クラスによって、SWF のバイトコードをメモリ上に生成できる。これはすごい事だ。flash 内に flash のコンパイラを作れないか考えていた所。 ― how to make actionscript 3 play generated pcm wave data どうもこのサウンド再生機能というのは、動的に SWF を生成して実現しているらしい。このハック自体は醜悪だが、サウンドに限らずどんな SWF でも生成してその場で再生出来るというのには驚いた。eval が無い事が flash の唯一

    プログラムの動的生成と flash の未来 - 言語ゲーム
    nsyee
    nsyee 2008/05/03
  • 俺様言語 Lazy を作る。番外編。Yコンビネータ。 - 言語ゲーム

    Y コンビネータとは何か? あなたはどんな言葉でも使う事が出来ます。しかし、知らない言葉を使う時は、今まで知っている言葉で説明できなくてはなりません。 例えば、「カニ」と「コロッケ」と「クリーム」だけを知っている時、あなたは「カニクリームコロッケ」について語る事が出来ます。「『カニクリームコロッケ』とは、『カニ』の味のする『クリーム』の入った『コロッケ』である。」しかし、「かぼちゃコロッケ」については語る事は出来ません。なぜなら「かぼちゃ」について何も知らないからです。 さてここで問題。「皮」や「剥いだ物」について知っている時、次の説明は適当でしょうか?「『タマネギ』とは、『タマネギ』の『皮』を剥いた物である。」私たちは、タマネギの皮を剥いてもタマネギである事を知っています。しかし、タマネギを説明するのにタマネギを話題に出しても良いものでしょうか?インチキ臭い感じがしませんか?こういうのを

    俺様言語 Lazy を作る。番外編。Yコンビネータ。 - 言語ゲーム
  • 紙コップで入力デバイスを作ろう! - 言語ゲーム

    材料 紙コップ マイク端子(壊れたマイクのコードをちぎって使うか、パーツ屋で先だけ買う)。 エナメル線 磁石 輪ゴム 丸い筒。(資料にあったフィルムケースが無かったので、卓塩を使いました。スティック糊なんかも良いかも。) サンドペーパー あと、セロテープや凧糸等色々。 作り方 丸い筒にエナメル線を50回くらい巻きつけてコイルを作る。エナメル線のはしっこはサンドペーパーでこすって中を出しておく。 コイルをテープで紙コップの底に貼る。 磁石をテープで紙コップの底に貼る。 輪ゴムを二ほど違う強さで引っ掛ける。指で引掻いた時、違う音が鳴るようにする。 マイク端子とコイルをくっつけて、パソコンに接続する。つまり、輪ゴムをはじくとある高さの音がパソコンに入力される。音を利用して etoys (世界聴診器)をでプログラムを書く。例えば、音の大きさが 1000 以上で、高さが 200 以上ならカニが右

    紙コップで入力デバイスを作ろう! - 言語ゲーム
  • 線形論理とコンピュータ革命 - 言語ゲーム

    週末は Linear Logic and Permutation Stack -- The Forth Shall Be First http://home.pipeline.com/~hbaker1/ForthStack.html 読んでいた。思ったのは、線形論理が私の人生の疑問の半分くらいを解決するだろうという事。そしてアランさんの言うコンピュータ革命とはこういう事なのかも知れないという事。 身分不相応にも未来を予測してみる。近い将来、小学校で習う算数は線形論理に基づいた物になる。未来の子供達は、カッコや優先順位や変数に悩まされる私達の数学を見て、何て野蛮で非能率なのだと言うだろう。まるで我々が漢数字やローマ数字の数学を、きわめて技巧的で非論理的だと思うように。 線形論理に基づくプログラミングとは、変数の使用を一度しか認めないプログラミングの事を言う。一度しか認めなくてプログラムなんか

    線形論理とコンピュータ革命 - 言語ゲーム
  • Philosophy

    Featured courses Diplomas Gain entry to a range of Bachelor courses by studying a La Trobe Diploma. Online degrees Get the standing of a reputable university with the flexibility to study anywhere, anytime. Packaged course offers Secure your spot in not one degree – but two. Short courses Upskill fast or make a switch into a new career.

    Philosophy