What’s the difference between using XS and the Inline::C module? This was mentioned by someone in this question and has made me curious.
What’s the difference between using XS and the Inline::C module? This was mentioned by
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Inline::C generates XS and builds the generated module. It does this at run-time, although it caches past builds.
Inline::C is possibly easier to use, but there are a few downsides. The first time it runs, it slows down startup, it requires permissions to create files at run-time, and it requires the tools to compile the module. Furthermore, it makes it harder for a sysadmin to install.
The upside is that you can grab the generated XS and eliminate Inline::C once things start shaping up. This makes it useful for prototyping.