我只是想收集一些一般信息,因为我正在寻求提高ActiveModelSerializers的性能。
我之前从未编写过本机扩展,但已经查看了一些C扩展和Rust扩展。
我的问题:
答案 0 :(得分:2)
由于Ruby API是用C语言编写的,因此应该可以为它创建Crystal绑定,然后在Crystal中编写Ruby扩展。
例如,查看crystalyzed_ruby
项目:
https://github.com/phoffer/crystalized_ruby
答案 1 :(得分:1)
这个问题现在可能被问了一百万次。您可以尝试这样做,但请记住Crystal有一个GC,所以在Crystal中编写本机扩展名真的没什么意义。使用没有GC的C或Rust。