Archive for the ‘雑記’ Category

米国版リリカルLisp!?

日曜日, 1月 25th, 2009

何も言わずにここを見て欲しい。
面倒ならこの画像だけでも見て欲しい。

           , -――- 、 _ _/ヽ
         /: : : : : : : : : : : : : : : : !-.-.‐.‐.‐. ァ
    __∧’: /   . . . : : : : : /: :/: : : :`: :<
.  /:::::::::::::::::〉: : : : : : :./: : : :,:イ: :∧: :i: : . .\:`ヽ   ○
  〈::::/:::::::::::/: : : : : : :/ : : : / /: /  ‘,: |: : ハ: : ヽ  \
  ∨:::::::::::::/: /: : : : :/: :-∠_/_:/   |: |: : :∧: : :ヘ、  ’,         ○
  〈:::::::::::::/: /: : : : :/: :.X   //   \!∧: : : :’,: : : ハ\j
  /\:::::/: /|: : : : /i/  \      /`ー∨: : :l: : : :.!        o
  ,’.:: : :ヾ:./´ !: : : /  ̄ ̄ ̄       ___∨: :i:. : : :!
. i.: : : ./イ!  |: : /      __    \    /!: ;イ::. : :.i〉    変 態 だ ――――!!!!
. !: : : : .::|:.ヽ_j: /     /:::::`:.、   \ /、|:/:.|:::. : ,’
 j: : : : : .:!:.:/ |/ \    /::::::::::::::::::〉     ! }’:.:.:|∨:/     o
 |: : : : : .:|:/    > 、j::::::::::::::::::/   , イ-<:.:.;イ:.Ⅳ
 |: : : : : .:|'   /   |` ーrー-イ--‐ '  |:.:.:.∨:.!: |
 |: : : : : : !   〉     |  /ヽ  ヽ  o j:.:.:.:.:. : !: |          O
 |: : : : : : |  /`ー 、  |    ,!  }、   |:.:.:.:. : :.|: !    ○
 |: : : : : : | ./    ヽ |\/,|  / ハ   |:.:.:. : : :.|/
 |: : : : : : |/      `|\///   |  .|::. : : : : |

学祭とか色々あった

火曜日, 11月 25th, 2008

おしることか売ってたよ。
それから書いた記事(名前と日付だけ編集してるよ)

どうでもいい話5連発

月曜日, 11月 17th, 2008

ほんとうにしょうもない話ばかりなので小さい文字でいくよー。

*エディタの話*
大学に入ってからviとEmacsの存在を知りました。
周りをみると、Emacs派閥の方が多かったので、
ひねくれものの私はviを使うことに決めました。
その時はCしか書くことがなかったので、問題なかったんですが、
LispやPrologの様な言語を使っていると、どうしても対話環境が欲しくなり、
泣く泣くEmacsを使うことになってしまいました。
両方のエディタを使うようになって改めて思ったんですが、
viって変なエディタですよね。
タイプミスをしてその場で気づいて一文字消そうと思ったら、
ESCキーを押してxキーを押す。そして再び挿入モードに移るためにaキー。
なんと、普通のエディタではBackspace一回で済むことをするために、
3つのキーを押さなければいけないんです(*1)
viを使い始めたときはこれに泣かされました。

(*1) 一文字の入力ミスなら気にせずタイプを続け、後でrを使って一文字修正をする方が速かったりします。
あと、vimだとBackspaceが使えるので、これに頼るというのもありかもしれません。

それから、カーソルを移動させて挿入という動作を繰り返す際にも、
Escとi(またはa)キーを毎回押す必要があるため、
どうしてもタイプ数が増えてしまいます。
しかし、viを使ってしばらくしてくるとこういったことが気にならなくなってきました。
viの色んな機能を覚えてきたというのもあります。
でもそれ以上に、
- タイプミスが減った
- プログラムを上から一気に書くようになり、カーソル移動が減った
私の中でこんな変化が起こった(ような気がした)んです。
結果としてプログラムを書く速度が上がったと思います。
ひょっとしたらviはプログラマ養成ギブスの役割を果たすのかもしれません。
でもまあ、Lispのように対話をしながらプログラムを書いていく場合は、
いやでもカーソル移動が増えてしまうので素直にEmacsを使うのがいいかもしれません。
ちなみに、Emacsを使うようになってからは
- 小指が強くなった
これに尽きます。Emacsは小指強化ギブスです間違いありません。
CtrlとCapsLockを入れ替えたところで小指は結局酷使されるんです。
今でも時々左手の小指が痛くなることがあります。
正直どうにかしてほしいです。

あ、ちなみにこの文章はEmacsで書きました。
viで日本語打つのはめんどくさいです。

*大学の課題のプログラムの話*
大学の課題でLL(1)構文解析器を書きました。
LALR構文解析器(の生成系)、演算子順位構文解析器は既に書いたことがあったので、
これで代表的な構文解析の手法3つ全てを制覇したことに成りました。
やったね。
それにしても、LL構文解析の簡単さに思わず笑いそうになってしまいました。
効率よく作ろうとすると何か工夫がありそれなりに大変…と思うのですが、
素直に作るとBNFにあわせた関数呼び出すだけなのであまりにも簡単です。
でも新たに言語を作る場合は、それをLL(1)文法にするのが面倒な気がするんですよね。
大学の課題でパースする対象の言語はPascalライクな独自の言語で、
名前を検索しても出てこないことを考えると先生が作った言語のようです。
先生が「学生でも簡単にパース出来る用にしないとな…」とか思いながら、
LL(1)文法の言語を作っている姿を想像するとなんだか微笑ましく思えてきました。
*手の抜き方*
これまた大学の課題の話。
「前の課題のプログラムどんな風に作った?」
『面倒だったから最低限作れって言われた関数しか作らなかったよ』
「そっちの方が面倒じゃない?」
『だって、関数の入出力一覧をレポートに書けってあったやろ。
最初はdoxygenを使おうかとも思ったんだけど、それも面倒やったから、
作る関数の数を抑えて手を抜くことにした』
…大学の課題の手の抜き方は奥が深いと思いました。
*自転車の話*
昨日、自転車のチェーンが切れました。
半年ほど前にもチェーンが切れたことがあるし、
普通に自転車をこいでる最中に後輪が大破(ギアと連動しなくなった)して、
後輪を丸々取り替えたこともあるし、とにかくよく壊れている気がします。
毎日1時間以上乗っていた高校時代と比べたら全然酷使していないというのに、
なんでこんなにも壊れるのやら…買い換えようかとも考えたんですが、
一緒に琵琶湖一周をした愛機であることを考えるとそれも躊躇われてしまいます。
それにしても、自転車屋って料金が安いところほどサービスが良くて、
料金が高いところに限ってサービスが悪いのは気のせいなんでしょうか…
*そら*
カラスを飼っている家を見つけました。
一瞬、観鈴ちんの家かと思ったけど、
ここは和歌山じゃなくて京都でした。残念。
いつしかのリリカルの続き

もっとevalされるべき

日曜日, 11月 9th, 2008

もっとevalされるべきとは、「もっと評価されるべき」のLISP方言である。
eval関数は、プログラムを評価する関数で、詳細については、Wikipediaのevalの記事を参照。
(もっとevalされるべきとは (モットイーバルサレルベキとは) – ニコニコ大百科)

ねーよwwwww

KOF行ってきた

日曜日, 11月 9th, 2008

KOFに行ってきました。
ニコニコ技術部のMZ-700の実演とか楽しかったです。
KOFの後はK*BUGの打ち上げに参加させていただきました。
他に学生がいなかったためか、学生価格「0円」という驚異的な事態に。
ありがとうございます。本当にありがとうございます。
本当は何かBSDのプロジェクトに貢献することにより恩返しをするべきなのでしょうが、
私にはそんな力量は無いのでK*BUGの宣伝でどうかお許し下さい。

K*BUG
- Kansai *BSD Users Group の略
- 日本語名は、「関西 *BSD ユーザ会」
- BSDに限らず、Squeakなど色んな楽しい話が出てくる
- 主に、大阪と京都で研究会が開かれる
- 酒豪が多い

こんな集まりです。
興味がある方は是非ご参加下さい。

うかべん大阪#4 行ってきた

月曜日, 11月 3rd, 2008

という訳で行ってきました
何か書こうと思ったら、ヒノハルさんのげっかんにっきに全て書いてあるので、
そちらを見てくださいということで(笑)
本日使った資料は、少々手を加えて数日後にうpします。
また、ソースコードなどは現在は公開するつもりはありませんが、
要望がありましたら、考えておきます。

それでは皆さんお疲れ様でした。

毎月20日はノーマイカーデー

火曜日, 10月 21st, 2008

ニコニコ動画にShibuya.lisp Tech Talk #1の開会の挨拶があがってました。
Shibuya.lispテクニカル・トーク#1 開会の挨拶 ひげぽん
(要アカウント)
最初のスライドに”Why Lisp?”と書いてありますが、
この言葉、何処かで聞いたことがあるな…と思って調べてみたら、
「OnLisp」の1.5節が”なぜ(またはいつ)Lispか”というタイトルで、

今や問いはなぜLispか?ではなくいつLispか?になっている.

なんて書いてました。
残念ながら少なくても日本ではいまだに「なぜLispか?」の時代みたいです。
前々から言っていた、SHIORIの問題ですが、ぽなさんに解決法を教えていただきました。
仕様の見落としという非常に恥ずかしい原因でした…なんとも恥ずかしい。
そんなわけで、ようやく前に進めました。

しかし、うかべんまで本当に時間がなくなってきた。
非常にまずい感じです。
17日のリリカルの続き

記事にクダーを付けれるようにした

水曜日, 10月 15th, 2008

今更ですが、はてなスターを付けてみました。
「Add Star」を「Add Cdr」に書き換えたかったんだけど、
どうもここは触れないっぽいです。
(RSSリーダで見てる人はなんのことか分からないと思うので、直接見てくださいね。)

B Method

土曜日, 10月 11th, 2008

東京から突然nishさんがやってきてBメソッドの本をくれました。
「The B Language and Method」
って、値段見たら尋常でなく高い…
『¥ 12,799より』っていくらなんでも高すぎるだろ…
そんなわけで(*)、この本は大切に扱いながら読んでいこうとおもいます。
(*) べっ、別に高いからじゃないんだからね! 譲って頂いた本だからなんだからね!!!
内容をパラパラと読んでみると、大量の数学記号が目に付きました。
どうやってキーボードから打ち込むんだと思ったら、
ちゃんとそれぞれの記号に対応した書き方があるんだとか。
(例: 『∀v.[S]P』 -> 『[@v.S]P』)
専用のエディタを使うとちゃんと数学記号の方で表示されるそうです。
とにかく記号の数がやたら多い。
ラムダ計算や論理学等を趣味でやっていたため、分かる記号も結構ありましたが、
知らない記号が沢山ありました。さすがフランス生まれの言語。
(「=」の上に「^」が乗った記号や、「(」を右に90度倒した「^」に似た記号とか。)
ということで、この秋からは頑張ってBメソッドを勉強しようかと思います。
この秋やらなければ来年の秋に。来年やらなければ再来年の秋に。再来年にやらなければ…
昨日のリリカルの続き

色々あった

金曜日, 10月 10th, 2008

bugyo.tkの鯖が新しくなったそうです。
以前より速く動くようになった…気がします。
下宿の近くが実は心霊スポットだったことが発覚しました。
夜に通ることも結構あるのに一度も幽霊に会えないよ…

前に作ったCommon Lispの演算子順位構文解析のプログラムをちょっと書き足して、
自然な感じでCLに中置記法を混ぜれるようにしてみました。

(let (x y)
#[ x = (y=5*(4+3)) - 2 ]
(format t "~&x=~A, y=~A~%" x y))  ; "x=33, y=35"と出力される

リード時に通常の式に変換されるので、
コンパイルしたら余計時間は一切掛からない優れもの。
ただ、使い道が全くない気がします(笑)
Common LispでSHIORI作ってます。
DLLからLispプロセスを起動してパイプで通信。
とりあえず、文字くらいは表示できました。

しかし、長い台詞を表示させようとすると、なぜか途中で終わってしまいます。
(このスクリーンショットがまさにそれ。話のオチが切れてるwww)
DLL側のrequest関数の戻り値は確かに台詞の最後までデータが入っているはずなのに…
こいつは困った。
ハードディスクを漁ってたらこんなものが出てきた。
激しくリリカル。
本日京都でようやくCLANNAD AFTER STORYが始まった。
今まさに鑑賞中だけど実に非常に素晴らしい。
(以下ネタバレ注意)
オープニングが渚祭になってると思ったら、他のキャラも出てた。
本来AFTERに出てこないことみが本編にも出てきてるし、
この調子でいくと、有紀寧の出番もあるかも。
ただ、強いていうなら風子分が足りない。
草野球編に風子が出ないなんて…
それはさておき、AFTERって言ってるけど、
ゲームにおけるAFTERじゃなくてどうも、アニメ版の続きという位置づけっぽいです。
2クールあるから、一応最後までやるのかな?
本当にこれから毎週木曜が楽しみです。