Replies: 2 comments 2 replies
-
I completely respect the work done in c2ffi. We did discuss trying it out it in Clozure/ccl#13. I admit that it's possible that I have a little bit of "not-invented-here" syndrome. But I genuinely do place a high value on libclang's stable interface. I also feel that the process of generating the interface databases is an important part of building CCL (and one that has been neglected), so I want to be able to keep it under control. This code generated the FFI files in the current release of CCL for FreeBSD, so we're already past the proof-of-concept stage. I'm confident that other platforms will be able to follow. |
Beta Was this translation helpful? Give feedback.
-
What exactly is the 'high value' on libclang's stable interface? Have there been any known failures? I agree that stability and of the importance of the interface database, but this definitely sounds like an NIH problem. I'm not trying to disparaging the opinions expressed on this topic, but if I were wearing a Product Manager hat here, you'd have to do better than that to convince me. Some initial thoughts:
I can totally see from a developer perspective why the current path is desirable. But, from an overall project perspective, long term, is this really the best design choice? To me, write a c2ffi output driver and be done with it. Outsource support and development of parsing to someone that's already volunteered and is maintaining that functionality. |
Beta Was this translation helpful? Give feedback.
-
c2ffi has the ability to output SEXPs, and to add new drivers. Perhaps the path of least resistance lies in modifying c2ffi for our purposes? The clang and parsing work is already done and it seems that the output driver updates may be all that's required.
Edit: c2ffi is currently LGPL, but the author has suggested on the README that he's open to changing this.
Beta Was this translation helpful? Give feedback.
All reactions