NAME SHARYANTO::MaybeXS - Do task using non-core XS module, but provide pure-Perl/core fallback VERSION version 0.02 SYNOPSIS use SHARYANTO::MaybeXS qw(clone uniq); my $clone = clone({blah=>1}); DESCRIPTION This module helps when you want to bootstrap your Perl application with a portable, dependency-free Perl script. In a vanilla Perl installation (having only core modules), you can use App::FatPacker to include pure-Perl dependencies to your script. This module provides fallback for some tasks that usually need to be done using a non-core XS module, by providing alternatives using pure-Perl or core XS module. FUNCTIONS clone($data) => $cloned Try to use Data::Clone's "clone", but fallback to Clone::PP's "clone". uniq(@ary) => @uniq_ary Try to use List::MoreUtils's "uniq", but fallback to using pure-Perl implementation. SEE ALSO Clone::Any can also uses multiple backends, but I avoid it because I don't think Storable's "dclone" should be used (no Regexp support out of the box + must use deparse to handle coderefs). HOMEPAGE Please visit the project's homepage at . SOURCE Source repository is at . BUGS Please report any bugs or feature requests on the bugtracker website When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature. AUTHOR Steven Haryanto COPYRIGHT AND LICENSE This software is copyright (c) 2014 by Steven Haryanto. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.