是否可以在 OCaml 中创建 solib
Is it possible to create solib in OCaml
我想在 OCaml 中为 Linux/FreeBSD 实现共享库,我需要它有 C 接口。这样我就可以为各种语言实现绑定。我有几个问题:
- OCaml 是垃圾回收的,恐怕传递给外部代码的对象可能会被 GC 处理。是否可以禁用 GC?也许有另一种方法可以解决此类问题?
- 有没有办法像 C++
extern "C"
或类似的方式编写 OCaml 代码,以便将其公开为 C 符号?
- 有没有类似的更适合写solibs的高级语言?我仍然需要用 C/C++ 编写语言编译器,这样将它移植到新架构会相对容易。
我试图完成的事情无法按照提到的方式完成。决定通过 D-Bus 公开库,因为很难正确地实现大量编程语言的绑定,但现在每种语言都有 D-Bus 电池。
P. S.: Rust 可能是实现 C solib 的好工具。
我想在 OCaml 中为 Linux/FreeBSD 实现共享库,我需要它有 C 接口。这样我就可以为各种语言实现绑定。我有几个问题:
- OCaml 是垃圾回收的,恐怕传递给外部代码的对象可能会被 GC 处理。是否可以禁用 GC?也许有另一种方法可以解决此类问题?
- 有没有办法像 C++
extern "C"
或类似的方式编写 OCaml 代码,以便将其公开为 C 符号? - 有没有类似的更适合写solibs的高级语言?我仍然需要用 C/C++ 编写语言编译器,这样将它移植到新架构会相对容易。
我试图完成的事情无法按照提到的方式完成。决定通过 D-Bus 公开库,因为很难正确地实现大量编程语言的绑定,但现在每种语言都有 D-Bus 电池。
P. S.: Rust 可能是实现 C solib 的好工具。