Scheme事始め4:自作関数
- ラムダ関数(ただの関数)は「関数である」ことしか決めないので、それに名前をつけてとっておくには、そのための方法が必要になる
> (define linear (lambda (a b x ) (+ (* a x ) b))) > (linear 2 3 4) 11
-
- これは、「定義しましょう、linear というものを、「ただの関数として、ただし、それは3つの変数a,b,xを使って次のような関係式として」と読める
- また同じことは
> (define (linear a b x) (+ (* a x ) b))
-
- とすることもできる。あえてこれに別の『訳文』をつけるとすれば、「定義しましょう、「linear a b x」とは「(+ (* a x ) b)」と同じである、と」となる
- 訳文解釈上は別に見えるが、これをどちらで書いても、計算機としては同じものとして扱っていることになる