I was writing a comment asking if it was really easier. Then I took a look at Cython. Yes, this looks easier than Perl's XS, which I have some experience with! There are ways to do something similar in Perl these days, notably https://metacpan.org/pod/FFI::Platypus. But these are relatively new (starting in the 2010s) compared to the history of Perl, and Cython goes back to the early 2000s.
cestith|3 months ago
There are some of these modules for other languages than those listed here, a lot of them as high level as Perl (including Raku and even another Perl system for some reason).
https://metacpan.org/dist/Inline-C/view/lib/Inline/C.pod
https://metacpan.org/dist/Inline-ASM/view/ASM.pod
https://metacpan.org/dist/Inline-CPP/view/lib/Inline/CPP.pod
https://metacpan.org/dist/Inline-CPR/view/CPR.pod
https://metacpan.org/pod/Inline::Lua
https://metacpan.org/dist/Inline-Java/view/lib/Inline/Java.p...
https://metacpan.org/pod/Inline::Guile
https://metacpan.org/dist/Inline-SLang/view/SLang.pod
There are even tools to convert from Inline to XS for C and C++.
https://metacpan.org/dist/InlineX-CPP2XS/view/CPP2XS-Cookboo...
https://metacpan.org/pod/InlineX::XS
autarch|3 months ago