29得票4回答
如何从Haskell程序调用Bash或Shell脚本?

我正在使用Haskell编写一些Shell脚本,我在Git Bash中运行这些脚本,但是还有一些其他现有的脚本我希望能够从这些脚本中使用。 例如,我想运行Maven目标或执行git pull,但又不想专门与这些工具集成。 有没有办法做到这一点?

28得票4回答
Haskell FFI / C 的性能考虑?

如果我作为一个C程序的库从中调用Haskell,那么向它进行调用的性能影响是多少?例如,如果我有一个大约20kB的问题数据集,并且想要运行类似于:// Go through my 1000 actors and have them make a decision based on // Has...

27得票3回答
在C#中使用高阶Haskell类型

如何在C#(DLLImport)中使用和调用具有高阶类型签名的Haskell函数,例如... double :: (Int -> Int) -> Int -> Int -- higher order function typeClassFunc :: ... -> ...

27得票11回答
在 ffi 上进行 bundle 升级失败

我试图在我的Rails应用程序上执行bundle update,但是我遇到了以下错误:Installing ffi (1.0.11) with native extensions Unfortunately, a fatal error has occurred. Please report ...

26得票4回答
将路径转换为*c_char的最直接方法是什么?

对于给定的std::path::Path,最直接的方式将其转换为以空字符结尾的std::os::raw::c_char是什么?(用于传递给需要路径的C函数)。use std::ffi::CString; use std::os::raw::c_char; use std::os::raw::c...

26得票2回答
如何使用"外部函数接口"从Go语言调用C语言函数

我该如何使用Go的“外部函数接口”来调用C函数? 这个接口在常见问题解答中有提到,但是我在其他文档中没有看到它的提及。

25得票3回答
编译时泛型类型大小检查

我正在尝试编写 Rust 绑定 C 集合库(Judy Arrays [1]),该库只提供了存储指针宽度值的空间。我的公司有相当多的现有代码,使用这个空间直接存储非指针值,例如指针宽度整数和小结构体。我希望我的 Rust 绑定能够使用泛型实现安全访问此类集合,但是在正确处理指针隐藏语义方面遇到了...

25得票1回答
如何将自定义对象文件与Haskell库链接?

我创建了一个Haskell包,它可以调用在CUDA代码中定义的函数。我想在打包过程中将.cu文件编译为目标文件(.o),并强制链接器将其链接起来。 到目前为止,我尝试使用在此问题中找到的技术。我自定义了buildHook来: 运行nvcc 运行默认的buildHook 使用nvcc编译代...

25得票1回答
从Prolog传递任意大小的整数到C

目前,我正在学习如何将SICStus Prolog与C代码进行接口。 我想在SICStus Prolog版本4中使用一个任意大小的整数“汉明重量”的C实现。 我认为我需要用于测试项类型(SP_is_integer)的C函数和用于访问Prolog项(SP_get_integer,SP_get...

24得票2回答
hsc2hs和c2hs有什么区别?

什么是hsc2hs和c2hs之间的区别? 我知道hsc2hs是一个预处理器,但它具体做了什么? c2hs可以从C代码生成Haskell模块,但我是否需要hsc2hs来完成这个操作?