研究
ツイッターで、こんなツイートが流れてきた。 こんなの。 もちろん実体はWikipediaとか外部の情報へのリンク貼ってるだけ。 やれやれ。 が、気付いたらもう25を超えてしまった私は、少し考えて、「書いてみるか・・・?」などと思ってしまった。 これが俗に…
コード読みにOCaml global tagsというツールを使っていた。 global tagsというツールのOCaml用ラッパーだ。 しかし、これがまたいろんなエラーを出すもので、3.11以降の新しい言語機構への対応などと言うすばらしいことは一切ないわけである。 疲れそうな話…
OCamlDebugでSetやMapで作ったモジュールが何も見えないじゃないか、というのをいろいろ調べると、「Pretty Printer作れば解決」ということがわかった。 ただし、それらを上書きしてやらないといけないが。 ちなみに実現するprint.mlは中野さんのブログで紹…
結論:あまりデータが見えないから。 理由を述べると長いので、端的に。 関数内にいるときに、引数が多相だとその引数は出力できない。 インターフェースファイル内にモジュールの型はほとんど書けない。あくまで型チェックを通せる程度であり、デバッガが実…
オワタ!しないですんだ。 よかったよかった。 でもキューにはまだまだたくさん詰まってるのでしたとさ・・・
締め切りが少し延びたー。 それだけ。
Coqのソースコードをocamldebugで追えるようにして早何日か。 結局ocamldebugを使うのは(少なくとも現時点では)諦めることにした。 理由は次の通り。 Coqが使っている構文解析器がそもそもocamlcでコンパイルするものじゃなかった*1。 多相がものすごく邪…
研究の関係上、とあるOCamlのプロジェクト――いえ、まあ、とあるもなにも、Coqだが――をいじる必要が出た。 そんなにプログラミング・・・というかプロジェクトの読み解きなどをやったことがない私は、途方にくれ・・・まではしなかった。 運がいいことに、先…
なぜ一度で出来なかったか? 計画性がないからさ。 さて、ではType classで先ほどの流れをもう一度作ろう。 しかし、先ほどの定義とは、様々な点で異なるので注意。 Class Exp := { Eval : nat }. Instance EConst (n : nat) : Exp := { Eval := n }. Instan…
Coq8.2からType classが導入された。 もともとType classはHaskellにあったものである。 よって、Expression problemもHaskellからやり始めるのが楽である。 だが、私は残念ながらHaskellの世界の住人ではないので、Haskellによる解決に関しては私がこれをや…
今年の研究室輪講は、Implementing functional languagesという本(といっても本自体は絶版、リンク先からPDFがダウンロード可能)になった。 しかし、この本・・・ 明らかに実装言語変えてるのに、テキストがところどころ元のまま。 というか実装言語が途中…
日本語が通用しない場所に行くのはあまり喜ばしいことじゃないんだが・・・ ともかく、今日から一週間ほど国外へ。 英語が通じる範囲で動かないとなあ・・・面倒だし。
オワタ\(^o^)/。 以上。無念なり・・・
今日論文投稿が締め切りのワークショップには論文を出せそうもない。 この数日間考えてみたが、最初に考えていたネタが思った以上に問題意識を固められていなかったため、文章が一切進まなかった。 まあ今回のはあきらめるとして、次回以降をがんばろう。 今…
発表そのものはひどくはなかったが、質疑応答がぼろぼろだった。 もう少し応答をうまくできるようにならねば・・・
書き続けた書類を提出した。 通るといいなあ・・・
ここ最近、二回ほど先生に心構えを注意された。 曰く、能力に対してネガティブな発言をする事なかれ。 曰く、ツールに対して理由なく拒絶する事なかれ。 まあ、もっともなので反省する*1。 ただ、あまりツールを拒絶しようとはしないのだが・・・特に必要に…
久々にプログラミング環境の更新。 処理系はGCC(MinGW), PLT Scheme*1, OCaml, Coq, Python, SWI-Prolog。 他にパソコンに入っている処理系としてはVisual Studio(C++,C#,VB), Borland C++Builder6, GHC。 といっても、これら全てを使いこなせるわけではない…
以前似たようなタイトルの日記を書いたが、今回は用語ではなくアルゴリズムの話。*1 クイックソートという名前なのだが、アルゴリズムを少し勉強した方なら誰もが聞いたことがあるだろう。 厳密に説明するのは面倒なのでここでは適当に説明するが、 数字の列…
博士課程進学が決定したらしい。 書類がくるのはもう少し先か。 来週手続きのようだし、今週中だといろいろ助かるのだが・・・ 追記(3/19):もう書類が来た。研究室に直接だから早いこと早いこと・・・
今回は対外的な発表でありながらアレがたくさん・・・ げふげふ。 研究室のサーバー周りをなんとかしたら、研究室の自分のWebページを少しくらい管理するか・・・ あんまり論文とかは載せたくないけど、論文の参照くらいはないとなあ・・・
なんか近年ブームらしい。 で、自分の修論で書いた文章を思い出すと・・・ ああ、書いてるな。 ついでに卒論でも書いたな。 卒論のはあやしいか。確か・・・ソフトウェア検証だっけ?だいぶ昔からある話だ。(実用的になってきたのは最近だと思うが) 今のは…
私は博士課程に進学できるらしい。 よかったよかった。 もしできないとか言われたらそもそもなにをしてればよかったんだか。 (まあ今回の出来からすれば博士進学そのものをあきらめざるを得ない状況だったが)
とりあえず受け答えはまともにできたと思う。 自己採点をするなら・・・85点くらいだろうか? しばらく勉強とネタ集めかな。
時間以内に提出できた。 さて、これからは発表の練習と・・・
修論がまだ終わっていない。 あ、明日が提出ではあるが、あせるほどではない。 あと1小節かければ終わる。 ちょっと詰まってるので、明日の朝に更新する可能性はあるが。 隣の研究室で終わった(人生ではなく修論)やつが出現。 「裏切り者ー」と言っておい…
このとき書いていた論文が落ちた。 つまりreject。 覚悟していたとはいえ、なかなか精神的にクるものがある。 ここまでreviewerに問題点を挙げられれば、さすがにきつい。 修論ではこの問題点の・・・半分くらいは解決しておくつもり。 本当なら全部、といい…
とりあえず出したのであった。 rejectされそうだなあ・・・と思いながら、とりあえず終わったことに安堵。
提出した論文のerrataを発見してしまった。orz 一応既に締め切りすぎてるから渡すわけにもいかないし・・・ ぎりぎりに仕上げるとだめだなあ・・・
call-by-value、日本語では値渡し・・・と検索結果が出てくるが、実際にはもう一つある*1。 別の意味がありそうに書いてあったサイトが一箇所だけあったが、「極めて明らかな」間違いだったので、ちょっと書いておこうと思った。 まず通常の値渡しの話。これ…