■吉里吉里/KAG/TJS雑談質問スレ■その23at GAMEDEV■吉里吉里/KAG/TJS雑談質問スレ■その23 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト874:名前は開発中のものです。 11/05/20 19:26:16.66 eAwQCbJq 吉里吉里の関数は「ファーストクラスオブジェクト」と言って、 変数に代入が可能な要素になっています(その仕組みのおかげで、 SystemButtonLayerに関数を指定して、後から実行してもらう 事が出来ます)。 ですが、ファーストクラスオブジェクトとしての関数は、 「関数そのもの」と「関数が実行されるコンテキスト」の 2つの要素だけで構成されています。関数を実行する際に 与える引数は、含まれていません。 つまり、吉里吉里の素の表記では、引数まで含めて関数を 遅延評価するために変数に代入してやることは出来ません。 (続く) 875:名前は開発中のものです。 11/05/20 19:29:42.81 eAwQCbJq そこを何とかするための小技が「funccall」の一連の仕組みです。 詳細に書くと「目的の関数と引数を含めた新たなコンテキスト」を 作って、そのコンテキストで「目的の関数を目的の引数で呼び出す関数」 を作り、最終的にその関数を返値として返すという処理をしてるんですが、 自分で書いてて何言ってるんだという感じですね。 すいません、ややこしいのでなかなかうまく説明できる気がしません。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch