Python でカリー化してみた

Python でカリー化したらなんか便利なんじゃね、などと思ったので何となく作ってみた。

ソースは github GitHub - shomah4a/pycurry: function currying for python

使い方はこんな感じ

import pycurry

@pycurry.curryfunc
def test(aa, bb, cc):
    print aa, bb, cc

f = test(10) # => カリー化される
test(10, 20, 30) # => 実行される

f(40, 50) # => 引数が足りたので実行される
f(200, cc=400) # => これでも実行される

g = f('aaa') # => まだ足りないのでさらにカリー化
g([10]) # => 実行される

なんか使えるんかなあ。