Rust-Haskell FFI 项目教程
rust-haskell-ffiToy example of calling Rust from Haskell项目地址:https://gitcode.com/gh_mirrors/ru/rust-haskell-ffi
1. 项目的目录结构及介绍
rust-haskell-ffi/
├── LICENSE
├── Makefile
├── README.md
├── fact.rs
├── main.hs
└── point.rs
LICENSE: 项目许可证文件。Makefile: 用于编译和构建项目的Makefile。README.md: 项目说明文档。fact.rs: Rust库文件,包含一个示例函数。main.hs: Haskell主文件,调用Rust库中的函数。point.rs: Rust库文件,包含另一个示例函数。
2. 项目的启动文件介绍
main.hs 是项目的启动文件,它负责调用Rust库中的函数。以下是 main.hs
的简要介绍:
module Main where
import Foreign.Rust.Fact (factorial)
import Foreign.Rust.Point (Point(..), distance)
main :: IO ()
main = do
print $ factorial 5
let p1 = Point 0 0
p2 = Point 3 4
print $ distance p1 p2
main
函数是程序的入口点。factorial
函数从 fact.rs
中调用。Point
和 distance
函数从 point.rs
中调用。
3. 项目的配置文件介绍
Makefile 是项目的配置文件,它定义了编译和构建项目的规则。以下是 Makefile
的简要介绍:
all: build
build:
rustc fact.rs -o libfact.so
rustc point.rs -o libpoint.so
ghc -o main main.hs libfact.so libpoint.so
clean:
rm -f *.o *.hi main libfact.so libpoint.so
all
: 默认目标,调用 build
。build
: 编译Rust库并链接Haskell主文件。clean
: 清理生成的文件。
以上是 Rust-Haskell FFI 项目的简要教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。
rust-haskell-ffiToy example of calling Rust from Haskell项目地址:https://gitcode.com/gh_mirrors/ru/rust-haskell-ffi
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...