Enhancing non-Perl bioinformatic applications with Perl: Building novel, component based applications using Object Orientation, PDL, Alien, FFI, Inline and OpenMP
Christos Argyropoulos

TL;DR
This paper demonstrates how Perl's modern features and integrations can be used to rapidly develop high-performance, component-based bioinformatics applications, revitalizing Perl's role in data-intensive biological research.
Contribution
It showcases novel methods for enhancing bioinformatics tools using Perl's object orientation, PDL, FFI, Inline, and OpenMP, enabling efficient, modular, and parallel bioinformatics workflows.
Findings
Perl can be effectively used to create high-performance bioinformatics modules.
Parallel processing can be integrated into Perl-based bioinformatics tools using OpenMP and MCE.
The approach facilitates rapid development of complex, data-intensive bioinformatics applications.
Abstract
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsGenetics, Bioinformatics, and Biomedical Research · Computational Physics and Python Applications
