// (2007/6/12) 間違えて、この日の日記を一回消してしまいました。 最近実験的に追加した機能で「need_result」というものがあります。 意味ですが、これは「関数呼び出し元が、戻り値を必要としているかどうか」をtrueかfalseかで返す擬似変数です。 例で示します。 foo: fun(){ if(need_result){ "yes".p }else{ "no".p; } } a: foo(); //=> yes foo(); //=> no このとおり、関数呼び出しの結果が使われないような関数呼び出しで、need_resultはfalseとなります。 利用方法として、例えば「副作用が無い関数なので、戻り値が使われないような使い方をされたらエラーにしたい」場合とか fib: fun(i){ assert need_result; if(i<2){ return 1; }