Gauche > Archives > 2011/01/06

2011/01/06 02:09:37 UTCshiro
#
MOPでeqlスペシャライザ by lequeさん http://d.hatena.ne.jp/leque/20110105/p1
#
MOPは、制限に当たった時にちょろっとハックして言語の機能を拡張するのにすごく便利なんだけど、MOPそのものを基礎にして上にどんどんライブラリを積み上げてゆく、というような方向にはあんまり発展していないような気がする。知らないだけかな。
#
MOPで実験して便利だとわかると言語機能そのものとして取り込んじゃう、みたいな方向に行っちゃう、というのはあるか?
2011/01/06 02:22:57 UTC(び)
#
そういえば、equalスペシャライザって別の実装もありませんでしたっけ? だいぶ前のgauche-devel-jpで見た記憶が。
2011/01/06 02:44:06 UTChigepon
#
eql スペシャライザってのは Erlang でいうところの
#
do_times(N, Fun) ->
    do_times(N, Fun, []).
do_times(0, _Fun, _Args) ->
    ok;
#
の do_time(0, の部分という理解であっているのかな。
2011/01/06 03:15:19 UTCshiro
#
んー、lequeさんのところに出てくる使い方は近いけど、パターンマッチとCLOSのスペシャライザマッチはちょっと思想が違うから並べるのは難しいな
#
Erlangのパターンマッチって型でマッチってできたっけ? スペシャライザは「基本、型でマッチするところを具体的な値でマッチさせるようにする」って思想。
#
でもSchemeの場合、型っていうのは「あるpredicateを満足する」程度の意味だから、その思想を貫くならeqlスペシャライザは単にpredicateが違うだけとも言える。
#
Clojureのマルチメソッドマッチも型から離れて特定の述語を満足させるって方向に拡張してるし、CLOSでもPascal Constanzaさんが似たような拡張ディスパッチを作ってたような。
#
Gaucheでも組み込みにするとしたらそっちの方向かなあ。なんとなく。
2011/01/06 03:23:34 UTChigepon
#
なるほど。Erlang のパターンマッチは型ではマッチできないです。そのかわりディスパッチには when という predicateを指定することができます。
#
delete_loop(_Self, Level) when Level < 0 ->
    [];
#
こういうの。
2011/01/06 03:24:34 UTCshiro
#
ガードですね。
2011/01/06 03:24:54 UTChigepon
#
はい。
2011/01/06 03:24:56 UTCshiro
#
CLOSのメソッドディスパッチは排他的ではないというところも普通のパターンマッチと違うな。
#
複数マッチするものがあったら順番をつけて、next-methodで呼べるようにするわけだから。
2011/01/06 03:36:53 UTCshiro
#
14年前に買って使いつづけてたSonyの17" CRTモニタ、時々パワーセーブモードから復帰しなくなったり色がおかしくなったりしてきたのでとうとう引退させた。
#
買った時は$700台だった覚えが。後釜は$100台の19" LCDモニタ。でもLCDは長持ちしない印象があるなあ。14年は持たないだろう。
2011/01/06 03:48:56 UTC(び)
#
計算機関係で14年も使い続けたものって、ないですねぇ。サーバにつながってるMono9は1998年に買ったから、やっと12年。火を入れるのは年に1時間もないけど。
#
いい加減邪魔なので5インチベイに収まるLCDにしたいんだけど、今や19インチモニタより高いのでとても買う気になれない。
2011/01/06 04:15:29 UTCshiro
#
4-5インチのLCDパネルだけなら秋葉で安く売ってそうだけどどうなんかな。NTSC入力ばかりでVGAのは少なかったりする?
2011/01/06 04:17:37 UTC(び)
#
数年前に秋葉を回った時はNTSC専用ばかりでしたね。今はちょっとわからないですけど。
#
SVGA対応のが欲しいけど、4インチだと厳しいようで。VGAすらなかった。
#
製品としてはLogitechが出してるんだけど、競合がないせいかやたら高い
2011/01/06 05:22:27 UTCshiro
#
ニーズが少ないからだろうなあ。むしろスマートフォンが代替わりするのを待って古いandroid phoneとかを端末にしちゃうとかできないかな。
2011/01/06 05:43:20 UTC(び)
#
でも、サーバ機でモニタを使うのはOSのインストール時かトラブルシューティング時なので、できるだけ単純なものがいいんですよね。
#
おとなしくシリアルコンソールを使えばいいのかもだけど、USB-RS232Cのアダプタをなくしちゃったしなぁ。
2011/01/06 05:47:22 UTCeyasuyuki@twitter
#
会社にあるXServはモニターがなくてApple Remote Desktop経由でメンテしなければならなかったのですごく困った。
2011/01/06 05:50:21 UTCshiro
#
必要な時だけつなげばいいなら古いノートPCを置いとくってあたりが現実的かなあ。
2011/01/06 05:50:23 UTCeyasuyuki@twitter
#
アカウントの管理をOpen Directoryでやってるもんだから。
2011/01/06 05:52:02 UTCshiro
#
コマンドラインからも一応操作できなかったっけ。ものすごく面倒だった覚えはあるけど>XServe
2011/01/06 05:52:10 UTC(び)
#
そうですね。ただ、シリアル端子を持っているノートって、かなり古いモデルじゃないとないような。
#
dsclだっけ
#
古いのだと違う名前だったかも
2011/01/06 05:53:15 UTCshiro
#
あっそうか。そんな話、前にもここでしたような気がする。>シリアル端末
2011/01/06 05:53:27 UTC(び)
#
そういえばしましたね
#
で、USB->RS232C変換アダプタを持っていたんですが、職場の机の引き出しに入れといたら、机ごと行方不明になりました
2011/01/06 05:54:36 UTCshiro
#
机ごととは豪快な。
2011/01/06 05:56:20 UTC(び)
#
もう一回買っとくべきなんだけど、面倒くさくて買ってない、という顛末です。
#
まぁそういう職場なんです :-(
2011/01/06 05:57:58 UTCshiro
#
「こんなこともあろうかと」っていう時にしか使わないものの管理って難しい。持っててもどこにしまったか忘れていざって時に役に立たなかったりするし。
2011/01/06 05:59:29 UTC(び)
#
ですねぇ
2011/01/06 05:59:59 UTCeyasuyuki@twitter
#
でかいけどサーバ用にはこんなの http://online.plathome.co.jp/item/detail/41345853 を買っておくほうが安心かも。
2011/01/06 06:00:22 UTC(び)
#
計算機がらみ以外だと、非常用持ち出し袋とか、保険証券とか
#
Mono9より専有面積が小さくないと意味ないよー
#
ノートの液晶が死んだ時に備えて、ということも込みで考えるならありか。
2011/01/06 06:09:11 UTC(び)
#
新しいMBP、コネクタ類が全部左サイドに集められてるんだけど、これってすごい使いづらい。せめてUSBコネクタは両サイドに欲しい。
2011/01/06 06:17:31 UTCeyasuyuki@twitter
#
Apple Remote(赤外線リモコン)が家のどこかにはあるけど見当たらなくて1台買いました。 RT shiro 「こんなこともあろうかと」っていう時にしか使わないものの管理って難しい。持っててもどこにしまったか忘れていざって時に役に立たなかったり
2011/01/06 13:50:53 UTCkoguro
#
私は、サーバ用に http://www.amazon.co.jp/dp/B002TY14F0 使ってます。VGA入力の8インチLCDディスプレイです。
2011/01/06 14:06:34 UTCzundan@twitter
#
お RT : koguro: 私は、サーバ用に http://www.amazon.co.jp/dp/B002TY14F0 使ってます。VGA入力の8インチLCDディスプレイです。 http://bit.ly/fftIQ9
2011/01/06 22:18:53 UTCshiro
#
引数にかかわらず空リストを返す関数を書いたらなんかかわいかった (^_'())
2011/01/06 23:54:55 UTCleque
#
Pascal Constanza さんのってこれでしょうか http://common-lisp.net/project/closer/filtered.html
#
暇を見て読んでみます