08-4-14
■継続祭り

久々に酒井くんに会ったり、大学院の時の指導教官の先生に久々にお会いしたりと、なんか懐かしい感じ。
大学の先生のMacBook Airの所有率が高かったなぁ。
あれ見たら、欲しくなっちゃうよう。
発表内容は、higeponさんや酒井くんが書いてくださってます。
自分も、ちょこちょこ思った所だけメモしてみます。
継続を使った printf の型付け by 浅井健一さん
初めに、部分継続の解説をしてくださっていた。
しかも、例を交えてとても解りやすかった!
なんだか、浅井先生の研究室はとても良さそうだなぁ、と発表を聞いていてなんとなく思った。
入れ子になった web トランザクションのための永続的限定継続のデモ by Oleg Kiselyovさん
部分継続を普通のOcaml上で実現して、その上に継続ベースのwebアプリケーションを作ってみました、と言うお話。
普通のOcaml上で、部分継続を実装したってのは初めてらしい。
この辺りがその話かな??
”Native delimited continuations in (byte-code) OCaml”
一番この話を楽しみにしていたのだが、ちょっと話すのが早くてよくわかんなかった。。
プレゼン資料に実装も書いてあったんだけど、ぱっと見でlet文を沢山使ってるなぁ、と言うことしかわからず。。
Kahua における継続のさまざまな使い方 by 伊東勝利さん
これまでのKahuaでは、ページ全体の継続をとってしまっていたので、ページの一部だけを
更新するとかが出来なかった。
それをページの一部だけを更新するようにしましょう、というお話。
面白そうだったので、Kahuaのその辺りをよく見てみたい。
gcc 4.x を使った「継続オンリーな言語」 by 河野真治さん
去年参加したワークショップで、琉球舞踊を踊っていらっしゃったのも、懐かしいです。
内容としては、関数呼び出しを全部無くして、継続(goto?)だけで呼び出しを置き換えましょうというお話(だと思う)。
このCbCという言語は、人間が触る物ではないと強調されていたのが、印象的。
Ruby における Continuation by ささださん
特にトイレが綺麗!
Rubyのcontinuationは、1.8までのユーザーレベルスレッドをちょっといじれば実装出来そうだったから
実装しただけ。
実用的なプログラムでは使うことはないのに、継続周りのバグはかなり多いから、もうRubyから継続は
無くしたい!!
というお話。
田中哲さんも一言、「Ruby Continuation should be removed!」とおっしゃっていたので、大変なんだろうなぁ。。
と、まあ、こんな感じでした。
愉しかったので、こういうイベントがあったらまた参加したいなぁ
07-3-22
■チュニジア良いとこ、一度はおいで

だいぶ前にチュニジアから帰ってきてました。
結構突然チュニジアに行く事に決めて、ほとんど下調べもせずに行ってみたら、アフリカというイメージとは全然異なる国でした。
地中海に面している所はなんかちょっとしたヨーロッパの避暑地っぽい所。内陸に行くと砂漠が広がっているみたい。
どうせ英語も通じるだろうと思って行ったら、あまり通じなかったりしたけど、とても旅行がしやすい国でした。
全くと言っていいほど危ないめにはあわなかったし。
チュニジアはスターウォーズの撮影現場として有名(?)だそうですが、僕は行ってから知りました。砂漠をバギーみたいなのでぶんぶん走るツアーみたいなのに参加してそのロケ地に行った時の写真がこれ。多分エピソード1のだと思う。よーく見ると人が倒れているんですが、これはここの管理人さんみたいな人らしい。暑いから寝てるんだって。この仕事ハード過ぎ。
後はどこの国に行っても感じるけどちっちゃい子がかわいくてかわいくて。
面積的に結構小さな国だけど地中海に面している所はまさにリゾート地って感じなんだけど内陸の方に行くと砂漠が広がっていたりして結構色々楽しめる国だと思います。これが海側の風景。
ほんとにずっとのんびりしてていい旅でした。
のんびり旅行したいならチュニジアはすごくおすすめできますね。
07-2-27

今日からチュニジアに遊びに行ってきます。
楽しみ。
きゃわだ
いいなー♪
チュニジアンブルー♪
チュニジアンチュータ♪
YuichiTanaka
チュニジアいいとこだったわー。
ちっちゃい子がすごいなついてくるんだよ。かわいくてかわいくて。
07-2-9
■[読書][Scheme]The Little Schemer

- 作者: Daniel P. Friedman, Matthias Felleisen, Duane Bibby
- 出版社/メーカー: Mit Pr
- 発売日: 1995/12/21
- メディア: ペーパーバック
ずっと前に買っていたのだが、今日になって読み始めてみた。
これ面白いなぁ。
car,cdr,consを使ってリスト操作する所から始まって、再帰、高階関数、CPS、Yコンビネータの話にまでいっちゃってる。
これはすごいぞ。
でも、これらを知らない人がこの本を楽しめるかどうかは大分疑問。
一歩間違えると、ただQ&A形式で似たような事をずっとやってるだけだと感じてしまうかもしれない。
なんか、この本ってラムダ計算とかSchemeあたりを知ってる人が、先に挙げたような概念はこんなに平易に説明できるのか!すごい!っていう事を見て楽しむ本な気がする。つまり、すでにSchemer(Lisperでもいいけど)であるような人が読んで楽しむ物かと。こういった事を全く知らない状態で読んだら全然面白い本ではないのではないかなあ。てか、何がやりたいんだかわからない気がする。*1
でも、再帰とか高階関数やらなんやらをわかっているようなわかっていないような怪しい時に読むとこの本は素晴らしい効用があると思います。
というわけで、個人的にはかなり良い本なので、続きのSeasoned SchemerとReasoned Schemerも読んでみよう。
なんだか、Reasoned Schemerには関数型言語と論理型言語を融合させよう!みたいな事が背表紙に書いてあって読むのが楽しみだ。
*1:まあ、意味わからない事を繰り返して慣れ親しむっていうのも必要な事なのかもしれないけど。
07-1-22
■[講演]Alan Kay

学校でアランケイの講演があったので行ってみた。
タイトルは、"Can Programming be reinvented?"だったと思う。
しっかし、英語だったもんで、正直内容はよくわかんなかった。折角の機会だったのに。。。
と思ってたら、アランケイが主催するViewpoints Research Instituteの大島さん(id:squeaker)がその講演の内容の要約を書いている!素晴らしい、感謝感謝です。これを読んで、あのスライドはそう言う意味だったのかぁ、と思ったりしてる訳です。
んで、まあよくわかんないなりに講演で興味深かったのが、Squeakで低レベルのソフトウェアも作っているという事。勝手にSqueakってグラフィカルにアプリケーションを作れるだけの言語だと思っていたんだけど、なんかGolden BoxっていうシステムはBNFを突っ込むと処理系を生成してくれるみたい。コンパイラコンパイラみたいな感じなのかな??しかも驚いたのがそのコードが1500行。どうやって書いてるんだ??気になる。面白そう。しかし、ちょっとオンライン上を探してみたんだけど、それらしい情報は見つからないなぁ。
さらに、OSとかも作ろうと思っているらしい。うーむ、「未来を予測する最善の方法は、それを発明することだ」を地で行ってる感じがしますね。
もしかして、ViewpointsResearchのwebページもSqueakで書かれたサーバで動いていたりするのかな??
最後の方でFPGAについて何か言及していてちょっと気になったんだけど、それもよくわかんなかったなぁ。なんかソフトウェアの開発の仕方も変わるだろうみたいな事を言っていた気はする。
しかし、もったいない事したなぁ。。
squeaker
Golden BoxはIan Piumartaという同僚が作っているCokeという処理系と、Alex Warthが作っているCoke上の”Meta” parserのことです。
きみ
聞きたかった.
YuichiTanaka
>squeakerさん
情報ありがとうございます!なるほど、メタパーサだったんですね。だからBNFを入力していたのか。しかし、1700行っていう数字はすごいですね。中身が気になる。
YuichiTanaka
>きみ
昔、SFCにもアランケイが講演しに来てたよ。確かうちらが学部の1、2年の頃に。その時もSqueakの話がメインだった。
そのとき、たまたま同時に糸井重里の講演も開催されてて、そっちは黒山の人だかりだったのに、アランケイの講演は結構人が少なくて、こんなもんなのかなぁとちょっと切なくなった覚えがあるよ。
07-1-8
■[Latex]fancyvrb fancybox

悶々と修論を書いています。
それで、論文にプログラムのソースコードを載せたいんだけど、普通にverbatimを使うだけだと行間が文章の部分と一緒になっちゃって、日本語の文章の行間と同じだとちょっとスカスカに見えちゃうからソースの部分だけ行間を変えるにはどうしたらいいかなぁ、とか悩んでたら、先輩がfancyvrb(マニュアルのpdf)を教えてくれた。
これだと
\begin{Verbatim}[baselinestretch=0.5] hoge hoge \end{Verbatim}
とかってやるだけで、verbatimでかつその部分の行間を調整できます。
さらに、その先輩にfancyboxというのも教えてもらって、ある部分をボックスで囲んだりするのに便利なものが入ったパッケージ。
おぉ、これもうれしいじゃんとか思って両方使おうと思ったら、なぜかbaselinestretchの値を変えても、行間が変わってくれなくなっちゃった。。。
なんやかんやで色々悩んでいたら、なんと\usepackage{fancyvrb}を\usepackage{fancybox}の前に書いちゃうとそうなってしまうらしい。。。だからこれらのパッケージを使うときは
\usepackage{fancybox} \usepackage{fancyvrb}
という順番で宣言しないといけないみたい(一応先輩の環境でもそうだった)。
多分、マクロかなんかの定義が重複して上書きされちゃってるっぽいけど、latex恐ろしや。
ちなみに、予想通りこの二つのパッケージ間で定義が重複しているのだったら、宣言の順番を逆にすると、今度はfancyboxの何かの機能が使えなくなりそうなもんだけど、今のところ大丈夫。
はぁ、謎だ。








こんにちわ。こちらはアモニック ジュリアンと申します。
ブログを見て、興味を抱き、お話をさせて頂きたいと思います。
折り返しのメールを次のアドに頂ければと思います。 julien.hamonic@gmail.com