XS, I Spoke too soon
Well in my last post like almost all other XS post I started out by lamenting the sad truth that there was little in the way or resources for XS in 2010 and things haven't improved much since then.
Well I was wrong. While doing a little research for this post I stumbled onto XS-Fun up on github and was so surprised at what I found I decided to do a quick review on it for today's post.
Well it is new tutorial, less than an year old and a work in progress with three short chapters in POD format.
Well it is worth the read as they introduce the novel approach to drop 'h2xs' from the picture and dive right into actually using XS code with practical examples. So to use the authors own words
Eliminating the use of h2xs and bundling any C libraries we use (that we haven't wrote by ourselves) remove a lot of needless complexity.
Which is the bane to most newbie XS programers and a great way to start out. They also tell you to start with a set version of Perl '5.14.2' again a good way to go. Now what they should also say if for you to start out on a Unix/Linux system as playing with XS on windows is a pain.
So I am thinking to myself why spend the time writing my own tutorial when I can add to in the missing parts of the one that is there, get some editing from other XS programers and generally add to the greater good of the Perl community.
So I think I will do a pull requests and stub out a few 'Chapters' that the others can have a look at and we will see where things fall. I think I might just write up my DBD::Oracle patch as a chapter or two as it is a good example on a non h2xs code base.
Well lets see what tomorrow brings, Maybe they want my help maybe not
yapc talks this week.
XS Fun
https://www.youtube.com/watch?v=sD1-bgKm36c
The Perl API for the Mortally Terrified
https://www.youtube.com/watch?v=-XITNDvqoTo
Foreign Function Interface (FFI): Never Need to Write XS Again
https://www.youtube.com/watch?v=cY-yqQ_nmtw
like you said in your last post, you learn it because you have to.
The biggest problem for me to learn XS is there is not a real need.