Practical FFI with Platypus

Practical FFI with Platypus

By Graham Ollis (‎plicease‎) from DC.pm
Date: Monday, 8 June 2015 15:00
Duration: 20 minutes
Target audience: Any
Language: English
Tags: ffi infrastructure libffi nativecall

You can find more information on the speaker's site:


Foreign Function Interfaces (FFI) are a popular interoperability technique in a number of scripting and virtual machine languages. Given that Perl’s strength lies in its flexibility, FFI is an ideal technique for Perl programmers to include in their arsenal of interoperability. Although a good handle on your target foreign language is helpful (languages such as Assembly, C/C++, Rust, Fortran and the like), FFI does not require any experience in C or the Perl internals, or any specific foreign language, making it a great alternative to XS.

With the release of FFI::Platypus this year, performance and ease of development have improved significantly for those extending Perl using FFI. In this all new presentation we will cover several small but practical topics to get you started in the exciting world of FFI. Topics will include performance, structured record data (C “structs”) and foreign language interoperability (calling languages other than C). We will finish off with some thoughts about the future of Perl and how FFI can help get us there.


Attended by: Graham Ollis (‎plicease‎), Dave Rolsky (‎autarch‎), Nova Patch (‎patch‎), Charles McGarvey (‎CCM‎), Fitz Elliott, James Dwyer (‎Jim‎), Liam McNerney (‎Lthemick‎), Michael Conrad (‎nerdvana‎), Greg Cole (‎wingfold‎), Patrick Cronin, J. Maslak, Steve Nolte (‎mcsnolte‎), Thomas Sibley (‎trs‎), Chas. Owens (‎cowens‎), Peter Sandin, Adam Schobelock, Julian Brown, Jonathan Taylor, Irina Todeva, Maxwell Cabral, Andrew Grangaard (‎spazm‎), Chad Granum (‎Exodist‎), Mark Wells, Maximilian Witte, Ryan Haudenschilt, Joshua Miller, Dan Muey, shane utt (‎sutt‎), Bruce Gray (‎Util‎), Paul Millard, Jeremy Koch, Christopher Eades (‎Chro‎), William Souder (‎dogrr‎),