ポイントフリーコンバータ

Haskell風に書かれた関数定義やラムダ式を、(.)やflipを使ったポイントフリースタイルに変換するプログラムを作ってみた。
http://kar.s206.xrea.com/js/pointfree.html

使用例1

例えばここにある問題を解かせてみる。

ポイントフリースタイル入門 - melpon日記
問題1
foo x y = f (g x y)

http://d.hatena.ne.jp/melpon/20111031/1320024473

入力欄に、

foo x y = f (g x y)

と書いて実行を押すと、

(f.).g

と表示される。

使用例2

次に、同じ変数を複数箇所で使う例

ポイントフリー - 西尾泰和のはてなダイアリー
square = (*)<*>id -- \x -> x * x

http://d.hatena.ne.jp/nishiohirokazu/20100520/1274364170

入力欄に、

\x -> x * x

と書いて実行を押すと、

(*)<*>id

と表示される。

とりあえずこの2つはあってたけど、いろいろミスあるかも。