似非原重雄 @esehara
Python大好き
(eq? function lisp)
プロセスの手続きによるLispの記述
functional language
Unbound valiable
たぶんバスワード
「関数型言語」の正確な定義はしない
プログラムの書き方として関数型指向を使う
Pythonは関数型「指向」っぽく
lambda_fizzbuzz
代入って難しいよね
def hoge(fuga): uwaaa = fuga uwaaa[0] = "foobar" return uwaaa a = [1,2,3] print hoge(a) # ['foobar', 2, 3] print a # ['foobar', 2, 3]
クロージャーが「箱」
関数という「箱」に値を保管する
closure = lambda x: lambda: x foo = closure([1,2,3]) print foo() # [1, 2, 3] foo()[0] = "foobar" print foo() # ['foobar', 2, 3] print foo() # ['foobar', 2, 3]