nodejs / nan

Native Abstractions for Node.js
MIT License
3.28k stars 502 forks source link

[discussion] integrating nan or similar with io.js #349

Open trevnorris opened 9 years ago

trevnorris commented 9 years ago

nan has done wonders for the community, but there are still missing bits. If these can be addressed there is a good desire to bring this into io.js itself. This thread should serve as a discussion on what are all the missing bits, what we can do about them and how to eventually get this into io.js.

The most prominent issue is lack of ABI compatibility. Needing to recompile with every new release, especially now with more frequent V8 updates, is difficult. @bnoordhuis mentioned that using templates is not a good form of ABI compatibility because they don't play well with the linker. (Ben, if you have any additional thoughts on this please feel free to include anything I've missed).

Ben007 commented 8 years ago

A bit outdated but just saw this discussion.I am trying to put up a cross platform native addon. I can't tell how hard it is to catch up with all the changes and differences. Looking forward to see a common API!

I think the pressing need is to abstract the module interface, so that's what I think we should focus on.

@geoffkizer exactly.

@kzc It was years ago, and most likely that whatever was lacking at the time now exists. And in terms of V8, I'm saying that no existing functionality can can't be sacrificed because some VM doesn't support it. The abstraction needs to allow all public APIs to continue working as they do today.

@trevnorris nothing new with spider monkey. @obastemur implemented the missing features into spider.