関数型言語Part3
■ このスレッドは過去ログ倉庫に格納されています
0419デフォルトの名無しさん
NGNG>無名だから自分自身を直接呼び出せないって制限があるだけ。
ああ、これは言われて気がついたのですが、なるほどですね。
Perlなら関数リファレンスを引数に取る無名関数を定義、かつ
それのリファレンスをどこかの変数に入れて、
無名関数を評価するときにおいて自身のリファレンスを無名関数に
渡すことも可能か?!無名関数のリファレンスを取ること自体が
いけないのかもしれないですね。。。
>あとは埋めこみ構文ということで、スコープが書く場所によって違う。
これはそうですね。関数内において、値を計算することと関数を定義する
ことが式という枠組みで見れば等価っていう感じでしょうか。違うかな(汗
関数の実引数としてlambdaを定義。関数の戻り値としてlambdaを定義。
なんとなくですが、
http://ja.wikipedia.org/wiki/%E3%83%A9%E3%83%A0%E3%83%80%E7%AE%97%E6%B3%95
ここで言われている、ラムダ算法なるものの概要が分った気がしました。。。
>基本的にラムダ計算では関数抽象 (プログラムの定義) と
>関数適用 (プログラムの実行) の 2つの操作しかない。
Perlでクロージャの有効な使い方を学ぼうと思っていいろいろ調べていたら、
やっぱりラムダやLISPのプログラミングテクニックについてちゃんと
理解してナイトダメみたいですね。難しい、鬱だ
■ このスレッドは過去ログ倉庫に格納されています