Haskell OCCT Bindings

Hi all, I wanted to share some Haskell OCCT bindings that I've been working on. They're hosted here, on Github.

There are API docs over on Hackage. I've also been working on a library that acts as high level wrapper, with an API that's aiming to be more idiomatic Haskell (as opposed to closely copying the OCCT API) which I've been calling waterfall-cad.

Dmitrii Pasukhin's picture

Thank you for sharing your Haskell OCCT bindings project with us. We appreciate your efforts in developing this resource and providing convenient access to both the repository and the API documentation on Hackage.

Your initiative to create a high-level wrapper with a more idiomatic Haskell API, named waterfall-cad, sounds promising. Simplifying the API while maintaining functionality is indeed a valuable project.

We would be interested in further collaboration and would gladly support the publication of your project on the OCCT3d platform once it's released. In the meantime, we can redirect individuals with similar needs to your project, fostering a community-driven approach to addressing common challenges.

Best regards, OCCT Team.

Joseph Warren's picture

Hi Dmitrii,

Thanks for your response, it's great to see interest from the OCCT team.

What does "Publishing the project on the OCCT3d Platform" entail?

While the Haskell bindings are not "feature complete", in the sense that I've only extracted the subset of the API that I need, I've not currently got plans to wrap the entire API. (I'm sure you're more aware than me just how big the full OpenCascade API is).

Similarly, while I'm still adding things to Waterfall-CAD, the project has a full release, in that it's published to the Haskell package ecosystem (Hackage), and I've already used it to design real objects.

On an unrelated note, is there a logo I could use to identify the `opencascade-hs` project?
It's not clear to me what the trademark implications of using the OpenCascade logo for this? Would that be okay?

Dmitrii Pasukhin's picture

Publication means publishing your project into PROJECTS & PRODUCTS.

As for a logo or trademark, I need to clarify that and will return to you with details.

Best regards, Dmitrii.