Написание функции с типом 'a -> string

Для целей отладки я хотел бы иметь функцию в OCaml, которая преобразует в строку произвольного типа, в отладчике она сейчас есть, но было бы здорово иметь такую.

Библиотека sexplib была бы идеальной, но факт в том, что я не могу изменить все типы, которые мне нужно добавить с помощью sexp , и я также не могу использовать camlp4.

Есть ли какие-нибудь. такая функция? (Его не будет в производственном коде, поэтому я принимаю грязные решения)

Что-то вроде класса типов Haskell Show было бы именно тем, что я имел в виду. } val bip = новый Bippy val bop: Bippy # Boppy = bip.bop bop тогда ...

Это проще объяснить в коде:

class Bippy {
  val x = 42

  class Boppy {
    val y = "hello world"
  }

  val bop = new Boppy
}

val bip = new Bippy
val bop: Bippy#Boppy = bip.bop

bop затем передается другому методу, которому необходимо найти значение x из содержащего экземпляра Bippy . Какое волшебное заклинание для этого?

Экземпляр bop получен из кода, который я не контролирую, поэтому добавление новых методов в Boppy здесь не вариант.

5
задан Kevin Wright 7 February 2011 в 21:35
поделиться