0

タイプは mobile->mobile である必要があります

どこ

datatype mobile = int のオブジェクト | モバイル・モバイルのワイヤー

コードでエラーが発生する コンストラクターと引数がパターンと演算子とオペランドが一致しない

fun reflect  (Object v) = Object v
   | reflect (Wire(x,t1,t2)) = Wire(x,reflect t2,reflect t1);
4

1 に答える 1

2

エラーメッセージは非常に示唆的です。Wireコンストラクターには2つの引数があり、関数内に3つの引数を指定Wirereflectます。

修正版:

fun reflect (Object v) = Object v
  | reflect (Wire(t1,t2)) = Wire(reflect t2,reflect t1)
于 2013-01-18T08:09:11.187 に答える