【问题标题】:Reflect a tree using sml使用 sml 反射树
【发布时间】:2013-01-01 19:55:31
【问题描述】:

类型应该是mobile->mobile

在哪里

数据类型 mobile = int 的对象 |手机*手机线

代码给了我错误构造函数和参数在模式和运算符和操作数不一致

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

【问题讨论】:

    标签: reflection tree functional-programming sml


    【解决方案1】:

    错误信息非常具有指示性。 Wire 构造函数有 2 个参数,而您在 reflect 函数中为 Wire 提供 3 个参数。

    修正版:

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

    【讨论】:

      猜你喜欢
      • 2020-02-18
      • 2020-07-09
      • 2021-03-04
      • 2017-01-30
      • 2023-03-03
      • 2021-03-03
      • 1970-01-01
      • 1970-01-01
      • 2017-05-15
      相关资源
      最近更新 更多