可以在sml中获取泛型变量的字符串表示形式吗
我已经编写了一个泛型函数,现在需要泛型变量的字符串表示。有没有一种简单的方法可以得到它们 例如:可以在sml中获取泛型变量的字符串表示形式吗,sml,Sml,我已经编写了一个泛型函数,现在需要泛型变量的字符串表示。有没有一种简单的方法可以得到它们 例如: fun arg:(string*'a) = (#1 arg) ^ toString((#2 arg) 这就是我基本上想要做的 因此,如果用(“hello,true”)调用该方法,我希望输出“hellotrue”。如果可能,如果有更复杂的结构,我希望打印出来。简短的答案是否定的 与Haskell不同,SML没有类型类,也不可能派生新类型的示例 “唯一”的方法是为您创建的每种类型创建特定的show或t
fun arg:(string*'a) = (#1 arg) ^ toString((#2 arg)
这就是我基本上想要做的
因此,如果用
(“hello,true”)
调用该方法,我希望输出“hellotrue”。如果可能,如果有更复杂的结构,我希望打印出来。简短的答案是否定的
与Haskell不同,SML没有类型类,也不可能派生新类型的示例
“唯一”的方法是为您创建的每种类型创建特定的show或toString函数。
我说“仅”,因为MLton有一篇关于的非常好的文章,这正是我最终得到的,每种类型都有一个func。问题解决了一些相同的问题,尽管它是在比较中。结论是一样的,只要在为更“复杂”的类型构建toString函数时使用“简单”的toString函数即可。