矢量(矢量Foo)-> (Ptr(Ptr Foo)->IO a)->奥一个?
我正在为 ac 库制作一个简单的包装器,需要将向量列表传递给它。它需要一个指向数组的指针数组。为了制作一个漂亮的界面,我想要向量(或向量列表),…
Haskell 中 FFI 的 Union 和 Type**?
我需要知道如何与 FFI 解析 Unions 和 Type**(例如 int**)? 我知道我需要一个结构的可存储实例,我也可以将它用于联合吗? 像这样的联合: typedef…
Haskell FFI:顶级 FunPtr 到顶级函数?
似乎最好只为顶级函数创建一次 FunPtr,而不是在需要时创建一个新函数(针对同一函数)并处理其释放。 我是否忽略了除 foreign import ccall "wrapper…
LIRC 与 Haskell 的接口
我在用 Python 制作小型应用程序原型时一直在使用 pyLirc 。出于性能原因(除其他外),我正在转向 Haskell,但找不到任何提供类似功能的模块。我应该…
如何找到 LC_XXX 区域设置整数常量的值,以便我可以将它们与 cffi 一起使用
我有这段代码: (define-foreign-library libc (:unix "libc.so.6")) (use-foreign-library libc) (defcfun "setlocale" :pointer (category :int) (l…
将 Haskell ByteString 转换为 C++标准::字符串
我想将 Haskell 中的严格 ByteStrings 转换为 C++ 的 std::string,通过 FFI。由于 ByteString 可能包含 NULL 字符,因此转换为 CString 作为中间步骤…
从 python 调用 prolog 谓词
我有一些 .pl 文件,我想从 python 脚本调用其中声明的谓词。我怎样才能做到这一点? 例如, test.pl 的 rD( [], Ans, Ans ). rD( [X|Xs], Ans, Acc )…
是否可以在 Haskell 中创建 PHP 扩展?
是否可以使用 Haskell 创建 PHP 扩展? 通常 PHP 扩展是使用 C 编写的。使用 Haskell FFI 为存根 C 扩展提供功能是否可行(甚至是一个好主意)? 这种…
从 OCaml 获取 C 二进制数据
(为了论证而忽略字节序 - 这只是一个测试用例/概念证明 - 而且我也永远不会在实际代码中使用 strcpy!) 考虑以下简单的 C 代码: #include #include…
使用JNA检测AppData\LocalLow的位置
我正在尝试在 Windows 7 上使用 JNA 检测 Java 上的 AppData\LocalLow 工作的位置。但可用于该作业的最接近的函数是: W32API.HRESULT SHGetFolderPat…
嵌入时如何使用LuaJIT的ffi模块?
我正在尝试将 LuaJIT 嵌入到 C 应用程序中。代码是这样的: #include #include #include #include #include int barfunc(int foo) { /* a dummy funct…
Haskell 中的 FFI,有关 LANGUAGE CPP 的问题以及如何将 ac 结构与 FFI 一起使用
我对 Haskell 中的 FFI 有一些疑问 ,我知道我必须使用语言 pragma {-# LANGUAGEforeignFunctionInterface #-} 但是当我使用 {-#LANGUAGE CPP,foreign…
跨平台 Ruby FFI 库
我正在为 google 的 cityhash 库(c++)编写 FFI ruby 包装器。那么,使其跨平台(linux、windows、macos)的最佳方法是什么?在gem安装过程中是…