Я заметил, что, включенный в источник примера OpaWhiteBoard, здесь есть файл .ml: https://github.com/hhugo/OpaWhiteBoard/blob/master/src/opacairo/cairo.ml
Похоже, это OCaml с некоторыми директивами ("##").Я предполагаю, что это означает, что можно писать расширения для Opa в OCaml, правильно?
Да, вы можете с OPA-plugin-builder.
Книга все еще находится в стадии разработки (http://opalang.org/resources/book/index.html), и мы завершим работу над сборкой плагинов, как только сможем.
Но вы можете догадаться, как это работает, глядя на Makefile: https://github.com/hhugo/OpaWhiteBoard/blob/master/Makefile
И плагин cairo.ml: https://github.com/hhugo/OpaWhiteBoard/blob/master/src/opacairo/cairo.ml
Директива '##' здесь, в частности, для регистрациифункции и их типы в OPA.
Точнее, вы можете получить некоторую информацию и пример здесь: http://opalang.org/resources/book/index.html#hello_binding