2006-01-01から1年間の記事一覧

Erlang : Erlide

ErlangのEclipse Plug-in http://sourceforge.net/projects/erlide/

Concurrent Clean : pipe line operator

[id:lethevert:20061201:p1]のpipe line operatorを定義。 (|>) infixl 0 (|>) x f ==: f x class (|>$) infixl 0 a b :: !*a !b -> *a instance |>$ File Char instance |>$ File Int instance |>$ File Real instance |>$ File {#Char}(|>$)オペレータは、…

Concurrent Clean : [quiz] リスト要素の正規化(2)

http://karetta.jp/article/blog/oneline/008668 それはそうと、これはやはり継続を使って解く方がいいと思うのですよね(schemeなので)。 maxInt =: 0x7fffffff ::Tree a = Node a [Tree a] norm t = let ([[t2:_]:_],_) = norm_t t end maxInt in t2 wher…

PICT

並列計算の理論にPi-Calculusというのがあるらしいのですが、それを実装した言語にPICTというのがあるらしくて、そのリンク。 http://www.cis.upenn.edu/~bcpierce/papers/pict/Html/Pict.html http://citeseer.ist.psu.edu/pierce97programming.html

Type System for Erlang

http://web.archive.org/web/19991001153114/www.dcs.gla.ac.uk/~simonm/ というのが過去にあったみたいです。今はサイトが失われていますが。

Erlang : ErlyWeb

ErlyWebとは、Erlangを使ったWeb Framework。 http://erlyweb.org/ 以下、関連して見かけたサイト http://progexpr.blogspot.com/2006/12/erlyweb-blog-tutorial.html http://yarivsblog.com/articles/2006/10/27/introducing-erlyweb-the-erlang-twist-on-w…

トラバースを一回にしても

http://karetta.jp/article/blog/oneline/008668 http://konoe.lab2.kuis.kyoto-u.ac.jp/~hanatani/tdiary/?date=20061206 計算量が減るというわけではないんだな。 逆に、末尾再帰でなくなるせいで、空間計算量が増えるということもないわけではなかったり…

Concurrent Clean : [quiz] リスト要素の正規化(2)

http://karetta.jp/article/blog/oneline/008668 maxInt =: 0x7fffffff ::Tree a = Node a [Tree a] norm t = let (norm_t, m) = f maxInt t m in norm_t where f n (Node i ts) m = let g t (ts,n) = let (t2,n2) = f n t m in ([t2:ts], n2) (ts2,n2) = fo…

Erlang関連の文書

http://www.erlang.se/publications/ からたどれる。

B木

のBはBalancedだと思っていたのですが、どうも不明だそうです。 http://0xcc.net/diary/20040804.html - ところで、DBのインデックスにB木を使っていることをつい最近になるまで分かっていませんでした・・・

速度

Erlangの資料に、こんなことが書いてありました。 'Erlang - A survey of the language and its industrial applications' http://www.erlang.org/doc.html 7.2 Preformance Erlang is sufficiently fast for delivering real telecommunication products. I…

Concurrent Clean

http://tabesugi.net/memo/cur/cur.html#011536 メモ。この書き方は、Cleanでも使える。

Brian Beckman: Monads, Monoids, and Mort

http://channel9.msdn.com/Showpost.aspx?postid=230438 見た。 - 話の内容が多岐にわたっていたので、一言でまとめられない。覚えているところでは、 軍事シミュレーション コンパイラの最適化(デッドコードの話) クレジットカードのセキュリティ どうし…

SDL

http://www.libsdl.org/index.php ふむ。

Linux OS?

http://opentechpress.jp/opensource/article.pl?sid=06/11/20/0917237&from=rss ここで言っているLinux OSというのはなんのことなんだろう? カーネル? glibcを含む? デバイスドライバを含む? ディストリビューションのこと? ディストリビューションに…

投稿したら

ログイン状態が解除されていて、投稿が無視された。

Anders Hejlsberg - LINQChatting about LINQ and ADO.NET Entities

http://channel9.msdn.com/Showpost.aspx?postid=114680 http://channel9.msdn.com/Showpost.aspx?postid=202138 見た。 - LINQは「リンク」と発音するらしい。 Queryをファーストクラスに。 IEnumerableまたはIQueriableを実装するオブジェクトは、LINQの対…

C言語

[id:lethevert:20061129:p2] 言葉が足らなかったような気がするので補足。 たとえば、Cleanのコンパイラは、フロントエンドのCleanCompilerはCleanで、バックエンドのCodeGeneratorはCで書かれているのですが、これは技術的な制約のためではないと思うのです…

Don Syme: Introduction to F#

http://channel9.msdn.com/Showpost.aspx?postid=234632 http://channel9.msdn.com/Showpost.aspx?postid=234889 見た。 「|>」というシンボルを pipe line operator として 「let (|>) x f = f x」 定義していたのは、私がCleanで 「(-->) x f ==: f x」 と…

Singularity: A research OS written in C#

http://channel9.msdn.com/Showpost.aspx?postid=68302 見た。 コメント欄より > This isn't the CLR. In our world, we compile entire MSIL for the kernel into x86 instructions at installation time. There is no libc at the bottom. However, we do …

C言語

http://blog.livedoor.jp/dankogai/archives/50700240.html なんか、ひどく勘違いしているような・・・ - Cleanのライブラリを書くときに、ブリッジ部分をCで書いていますが、移植性のためです。 大抵のOSならCコンパイラがあることが期待できることと、ハー…

MITがSchemeからPythonに?

http://lambda-the-ultimate.org/node/1840 東大はJavaからRubyでしたっけ?

libffi, ffcall

Cleanから共有ライブラリを動的にロードして呼び出すようなモジュールを作ることを考えて調べていたら、libffiとffcallというライブラリが存在することを知った。 どうも、しばらく前に一度流行っていたらしい。 http://sourceware.org/libffi/ http://www.h…

Haskell : Programming in the Age of Concurrency: Software Transactional Memory

http://channel9.msdn.com/Showpost.aspx?postid=231495 見た。Simonがよくしゃべるのに対して、Timの声が小さくて聞き取りづらかった。 - そういえば、singularityという聞きなれない言葉が出てきたなと思っていたら、同じページのRelated Mediaに次のビデ…

Erlangの血統とか

るびまにErlangの紹介が載ってますね。個人的には、内容的にしょぼーんな感じなんですが・・・ - それはそうと、Erlangの先祖を知りました。Prologだそうです。 Erlangは、リアルタイムでパラレルなPrologとして産声を上げた後、関数型から多くの機能を取り…

文字列検索アルゴリズム

について探し物をしていたら、よくまとまった資料を見つけた。(PowerPoint資料) http://www-ikn.ist.hokudai.ac.jp/ikn-tokuron/LN_H16_IKNtokuron-pattern_matching.ppt - bit-parallelismという手法があることを知った。 非決定性有限オートマトンを状態…

Concurrent Clean : メモリアロケートの遅延

自明といえばそうなのですが、遅延評価を利用すると、大きな配列のメモリアロケートを遅延することができたりします。 次のプログラムは、STというレコードを要素に持つ要素数10000の配列を作成し、その26番目と257番目の要素だけを取得するというプログラム…

EXACT STRING MATCHING ALGORITHMS

http://www-igm.univ-mlv.fr/~lecroq/string/index.html お、これは便利だ。

GPLと特許について

http://opentechpress.jp/~mhatta/journal/424 興味深い。

Concurrent Clean : 関数呼び出し

Cleanの関数呼び出しのアセンブリレベルの表現って、ifileI03.sとStdFile.iclを比較すれば、概要がつかめそうと思った。