This is essentially a stub page for discussion of possible design directions for a Perl 6-based BioPerl implementation. As the Perl 6 specification is still being developed, this will take a while to come to fruition, but it's worth setting up a discussion page. For the time being we will be targeting Rakudo Perl6, specifically Rakudo using the MoarVM backend.
Development is on-going at the GitHub repository, though this will likely be moved within the main BioPerl GitHub space.
Basic Perl6 classes/roles implemented
Most code are almost direct ports of the original code, though in a number of places we use a Role instead of an interface (abstract) class, namely b/c these also have the benefit of introducing sane default options or requirements w/o the overhead of inheritance.
- Bio::Role::Describable (role replacement for Bio::DescribableI)
- Bio::Role::Indentifiable (role replacement for Bio::IndentifiableI)
- Bio::Role::Range (role replacement for Bio::RangeI)
Implemented but may not be used:
- Bio::Root (much of the parts in Root may be overkill for Perl 6; we may simply take advantage of core base class/roles as much as possible)
- Bio::Role::Annotation (role replacement for Bio::AnnotationI) - this is a stub that may be replaced with something based on feedback
Also, a few additional pieces are present including:
- Bio::Location (possibly reworked as a role)