2008-02-01から1ヶ月間の記事一覧
いけないと思いつつ、コンテンツの享受(つまり本を読む)。 on lispより。setfの引数は汎変数なんだ。しらなかった。なんとなく使ってた。 arcの=の引数も汎変数じゃないか。あーよくわからない。define-modify-macroを使えば楽に汎変数として動作するマク…
deftemでtemplateを定義している。 instでテンプレートにコンテンツを埋め込んでいる。データ構造の実装はtableみたい。構造体っぽいかんじだけど。 そういえばperlと同様に構造体は言語コアで提供しないのかなぁ。 関数で抽象化しろって感じ? (deftem post…
どうでもいいはなしなんだけれど、ポルシェはいいなぁ。ドイツプロダクトってやっぱりいい。 ポルシェ好きなのかフェラーリ好きなのかはっきりしないpgなのだけれども、arcはやっぱり職人気質なかんじだなぁ。pgとジョブズ、arcとapple(mac)というメタファー…
on lisp そのまま(しかも不完全版)だけれど、amb計算用。 (= paths* ()) ;; cc stack. (= failsym '@) (def choose ( (o choices) ) (if (no choices) (fail) (point cc (do (push (fn () (cc (choose (cdr choices)))) paths* ) (car choices))))) (= fai…
しばらく進めよう。 arc自体を見るのはもう少しなれてからだなあ。 いろいろ気になってしょうがない。情報源はsource位しかないのだけれど。
Yコンビネーターっぽい使い勝手。 arc> (= x (rfn ff (x) (prn "hello " x) (sleep 3) (ff x) )) arc> (x "world") 無限ループ。
aで始まるのはどういう意図なんだ? awhenとか。実用処理系としてどうなのなんて話がforumで出てるみたいだけど。 paulが培ってきたノウハウがつまっている感じはする。
arc.arcのsystem "mkdir -f " というのはubuntuでは実行できないため、修正してみたり。 "system -p " とかでいいのかな。
再帰呼び出してきdefopを書いてみたが動かなかった。 理解が足りていないのか、想定している抽象化が間違っているのか。
thread回りを見てみる必要があるか。 gambit-Cみたいにthreadが軽量だったりするのだろうか。 process間の通信とかの抽象化はpgにこだわりあるのかな。 (asv)を起動してarcプロンプトに戻る方法がわからん。 初歩的。
あー、もうチケット売り切れてた。 甘く見てた。同僚のperlerに少し話したらチケット買ってたから話を聞かせてもらお。
(let tmp 0 (defop said req (aform [(= tmp (arg _ "foo0")) (pr "arg foo0 is " (arg _ "foo0")) (br) (aform [(pr "saved foo0 is " tmp) (br) (pr "arg foo1 is " (arg _ "foo1") ".") ] (input "foo1") (submit "input foo1 !")) ] (input "foo0") (sub…
blog.arcのソースを少し見る。後で調べること。 defop deftem html(whitepage, center, widtable, tag, br, w/bars link) aif notfound get-user
Oracle人員を募集しているIT会社は気にする必要はない。なんて。 最近その意味がだんだんと分かるようになってきた。リレーショナルモデルの中途半端な実装であるSQLが提供する中途半端な抽象化を何でわざわざ採用するのか。 自分で案件毎に最適な抽象化の層…
うん、やっぱりすごい。簡単だけれどblogのサービスが100行程度でかかれている。 (なんかforumとかcombinatorとかと同じコードが使われているっぽいし。ユーザ登録フォームとか。)グレアムが言う、すさまじい抽象化とはこのことか。 こんなことやられたら…
defopがおもしろそう。kahuaを試そうとしたら、2つのUbuntu(Dell Power edge とThinkpad T43)の片方で動いたのに、片方で動かない。 休日ベッドの上でThinkpad広げて色々遊ぼうと思ったのに、どうしても動かすことができなかった。 まぁDellマシンでは動くん…
難しく考えていたけど、bigtableってjoinとかがない単なるテーブルってことなのかな。 GFSとmapreduceはしっくりきたのだけれど、bigtableはいまいちしっくりこない。複数台マシンを統括してデータを読み書きする部分とか、チューニングが色々いりそうだけれ…
javaハッカーに進めて見たところ、やはりjavaで実装されているapache software faundation のプロダクトというだけあって、食いつきがよかった。 彼は今まさにmysqlのブラックホールテーブルなどを駆使してログの集計をやろうとしており、独自に分散処理を実…
Hadoopは結構本格的に開発されているみたいだな。Yahooも本腰入れて採用しようとしているらしい。http://www.infoq.com/jp/articles/hadoop-interview同僚のjavaハッカーにすすめてみよう。ちょうどログの分散処理解析を検討していた所だ。 javaだというと食…
googleのwebフロントエンドにおける分散処理技術については、あまり目にしない。 GFS, MapReduce, BigtableのPaperに記述している事例はほとんどがバッチ処理である。インデクシングとかリンク解析とか。googleのつよみは、大規模な統計処理をどこよりも速く…
新バージョンが公開されている模様。 array, hash のアクセス演算子、「.」、「!」が利用できるらしい。http://arclanguage.org/item?id=2166新しいエッセーとかもまだ読めていない。
調べている。仕事がらみで必要なので。arcから少し離れてしまっている。 googleの公開している論文(?)をいろいろ読んでみたが、手の込んだ採用活動のようで、結局コアの部分はわからない。 map reduceは、開発者が並列処理を意識しなくてもよい。抽象化の手…
分散処理というのは、言語レベルで実現できる感じではなさそう。 (言語の境界をどう定義するかによるが。)OS的な環境を含めて提供する必要がある。ファイルシステムとかリソース管理とか。 (Limbo on infernoはそういったアプローチなのかもしれない。)arc…
Subversion, Trac環境の構築。 朝方まではまったあげく、Ubuntuで試したところすんなりうまくいきそうだったのでマシン調達の方向で解決することにした。aptは偉大だ。よくわからないでパッケージを使うのはよくないという人もいたりするのだけれど。あんな…
夕食に渋谷のカレーやにいく。googleのmap reduceの論文をいまさらながらに読んでいたら、アメリカ人に「こいつ英語ができる」と勘違いされ、話しかけられてしまった。 片言の英語で対応したが、聞き取る力がないことを実感。googleの論文をみて、sentence s…
同僚何人かと昼食に行き、それとなくlispの話になったけど、自分と周りの認識の差に愕然とした。 どうやってデータ構造を表現するんだ(javaみたいにクラスがないじゃないか) 入出力をどうやって扱うのか。 関数だけでどうやって計算するのか。 オブジェクト…
まだ会社。仕事が終わらなくてブログ更新できない。 つかれた。開発部門に移って1ヶ月。pythonユーザであることを話したのが運の尽き。 tracのヴァージョンアップを緊急でやれという話になった。(あまり関係ないとおもうけど。。)昨日一日いろいろ試したが…
それにしても、具体的に何かを作らないと、面白くない。 ハッカーになるためにはそれしかない。やりたいことはつきないが、選択して残りの人生というリソースを投資しないと何も始まらない。 処理系を書く -- 個人的にはarcとかschemeとかで満足。難易度も高…
最近アツそうなerlang。googleでも並列処理用の言語を独自で開発して使っていると聞く。 仕事で大量のトランザクションをさばいたり、ろくでもない数のデータを扱うため、並列処理の仕組みがいろいろ気になる。万能であるところのlisp(arc)にerlang的並列処…
http://ssl.ohmsha.co.jp/cgi-bin/menu.cgi?ISBN=978-4-87311-348-72月発売っていつごろだろう。楽しみ。やっぱり最近lispが熱い。いい傾向だ。 普通のやつらの上をいくのには悪い傾向かも。。