0
我々は次のdayatypeを持って、私はdidnのMLのデータ型や関数は
- val add_complex =
fn (Rec(x, y), Rec(x', y')) => (Rec(x + x', y + y'))
| (Rec(x,y), z) => (Rec(x + real(z), y + imaginary(z)))
| (z, Rec(x, y)) => (Rec(real(z) + x, imaginary(z) + y))
| (z,z') => (Rec(real(z) + real(z'), imaginary(z) + imaginary(z')));
val add_complex = fn : complex * complex -> complex
」:さて、この本は別の関数を定義し
- val real =
fn (Rec(x,y)) => x
| (Polar(r,a)) => r * Math.cos(a);
val real = fn : complex -> real
- val imaginary =
fn (Rec(x,y)) => y
| (Polar(r,a)) => r * Math.sin(a);
val imaginary = fn : complex -> real
関数
add_complex
にある
z
が何であるかを理解してください。それは、zを取得しており、極性変数にそれを解析 - ??
- は、それは(意味、私は=(もしそうであれば、B)、コンパイラはそれを知っているので、どのように極性意味Zを書くことができる極性であります?
それができるようにするもの、極性ではありませんか?あなたのコードで