結城浩@Haskell修行中です。

Haskellの式とパターンマッチにはちょっぴり慣れてきましたが、
まだdataやtypeを作るまではたどりついていません。
Monadは遠いです。
http://www.hyuki.com/haskell/
には、nobsunやytsさんたちから、
コメントやアドバイスもいただけて うれしいです。

余談はさておき、
悪戦苦闘しているうちにふとこんなクイズを思いつきました。

■クイズ「Haskellで自分自身を出力するプログラムを書け」

結城にはまだ書けないのですが…
Perlでは以前書いたことがあります。
以下のようになります。

$q=q(print"\$q=q($q);$q");print"\$q=q($q);$q"

これを動かすと、これと同じ文字列を出力します。

> type self.pl
$q=q(print"\$q=q($q);$q");print"\$q=q($q);$q"
> perl self.pl > out
> diff self.pl out

Haskellではどうなるんでしょうか。

----
結城浩 http://www.hyuki.com/
http://www.textfile.org/
In the beginning God created the heaven and the earth. (Genesis 1:1)



--
ML: haskell-jp / quickml.com
使い方: http://QuickML.com/