  Component-Based Software Engineering (CBSE) is a methodology that assembles
pre-existing, re-usable software components into new applications, which is
particularly relevant for fast moving, data-intensive fields such as
bioinformatics. While Perl was used extensively in this field until a decade
ago, more recent applications opt for a Bioconductor/R or Python. This trend
represents a significantly missed opportunity for the rapid generation of novel
bioinformatic applications out of pre-existing components since Perl offers a
variety of abstractions that can facilitate composition. In this paper, we
illustrate the utility of Perl for CBSE through a combination of Object
Oriented frameworks, the Perl Data Language and facilities for interfacing with
non-Perl code through Foreign Function Interfaces and inlining of foreign
source code. To do so, we enhance Polyester, a RNA sequencing simulator written
in R, and edlib a fast sequence similarity search library based on the edit
distance. The first case study illustrates the near effortless authoring of
new, highly performant Perl modules for the simulation of random numbers using
the GNU Scientific Library and PDL, and proposes Perl and Perl/C alternatives
to the Python tool cutadapt that is used to "trim" polyA tails from biological
sequences. For the edlib case, we leverage the power of metaclass programming
to endow edlib with coarse, process based parallelism, through the Many Core
Engine (MCE) module and fine grained parallelism through OpenMP, a
C/C++/Fortran Application Programming Interface for shared memory multithreaded
processing. These use cases provide proof-of-concept for the Bio::SeqAlignment
framework, which can organize heterogeneous components in complex memory and
command-line based workflows for the construction of novel bionformatic tools
to analyze data from long-read sequencing, e.g. Nanopore, sequencing platforms.
