Crystal Lib Support

I have not used Crystal Lib for a while but coming back and trying to use it was a little bit of a pain.

  • The README might not be accurate
  • output is not what I remember it being
    • less helpful then before
  • PRs are not getting merged

This was a useful tool but is it still supported by the core team?

3 Likes

I like crystal_lib. Very useful tool. To the core team, please continue your development.

If you are making a C binding and want to parse C headers, there is a tool called c2ffi. This tool only outputs a JSON file. However, by reading the output JSON, you may be able to generate and validate bindings.

4 Likes

It is a great tool. I would love to use crystal_lib over other tools.

I have a branch that merges in some of the PRs but I still cannot get it to produce a binding for a project I picked up.

We tried unsuccessfully to find maintainers for it, as we have too much on our plate already.

Whoa, TIL this tool exists! I’ve been manually porting .h files like a noob.

2 Likes

crystal_lib is an experiment. It yielded practical results and I’m sure it can utilized for many use cases. However, it’s currently not advancing any further to reach a productive stage. There are limitations to this approach for generating lib bindings, and there are more promising approaches such as [RFC] C bindings helper · Issue #8307 · crystal-lang/crystal · GitHub.

At this stage, crystal_lib is not a priority of the Core Team. We do not have the resources to continue these efforts. But any help is welcome. We’d be happy to transfer this project to a new maintainer.

3 Likes