Какие типы стандартной библиотеки OCaml нельзя упорядочить?

У меня сбой Маршалинг структуры данных (абстрактный тип ошибки (Custom)). Используется один известный абстрактный тип, а именно Big_int. Однако с маршалами все в порядке. В приложении нет специального кода C. Помимо Nums, также используется библиотека Unix (однако я не верю, что есть какие-либо активные объекты этого типа). Мы' re Marshal'ing with Closures.

Используются две (только) сторонние библиотеки: OCS Scheme (интерпретатор схемы, чистый Ocaml) и Dypgen (расширяемый синтаксический анализатор GLR, также чистый Ocaml). Проблема заключается в новой функции Dypgen, сохраняющей динамически расширенный синтаксический анализатор.

Сообщение об ошибке Ocaml почти бесполезно (оно не определяет, какой абстрактный тип с пользовательским тегом является виновником).

Мы подозревали Lexbuf как виновник, потому что он содержит закрытие над каналом Ocaml и не может быть маршалирован, но, похоже, это не проблема. Итак, мой вопрос:

Какие стандартные библиотечные компоненты нельзя упорядочить?

8
задан Michael Ekstrand 30 January 2011 в 16:21
поделиться