1

ジェネリック関数を作成しましたが、ジェネリック変数の文字列表現が必要です。それらを簡単に入手する方法はありますか?

例えば:

fun arg:(string*'a) = (#1 arg) ^ toString((#2 arg)

それが私が基本的にやりたいことです。

したがって、そのメソッドが呼び出された場合、("hello", true")「hellotrue」が必要です。もっと複雑な構造がある場合は、可能であればそれを印刷したいと思います。

4

1 に答える 1

2

短い答えはノーです。

Haskell とは異なり、SML には型クラスがなく、たとえば新しい型を表示することはできません。

「唯一の」方法は、作成する型ごとに特定の show または toString 関数を作成することです。MLton には、インデックス付きの値の型に関する非常に優れた記事があるため、「のみ」と言います。

于 2013-01-20T15:38:55.650 に答える