BP_PAPPLMAKER(1p)
π BP_PAPPLMAKER β the 1p manual, but make it cute β¨
okay bestie, so this page is literally the manual for papplmaker.PLS, and it lives in the Perl user-contributed docs section (1p, iykyk). Sit down, grab a strawberry π, and let's get into it.
πΈ NAME πΈ
papplmaker.PLS β it's an Analysis tools module generator. that's it, that's the whole vibe. π
β¨ SYNOPSIS β¨
here's the group chat receipts β all the ways you can call it:
# get some help
papplmaker.PLS -h
# generate module for program 'seqret'
papplmaker.PLS -n edit.seqret
# ditto, but specify where to find 'seqret'
papplmaker.PLS -n edit::seqret
-l http://localhost:8080/axis/services
# ditto, but specify a non-default access method to 'seqret'
papplmaker.PLS -n edit::seqret
-l http://corba.ebi.ac.uk/IOR/Analyses.ref
-a corba
# generate modules for all available analyses
# (using default location and default access method)
papplmaker.PLS
# do not generate but see what would be generated
papplmaker.PLS -s
papplmaker.PLS -S
# generate module for analysis 'edit::seqret'
# but name it 'MySeqret'
papplmaker.PLS -n edit::seqret -m MySeqret
# ...and use it
use MySeqret;
print new MySeqret->sequence_direct_data ('tatatacccgt')
->osformat ('embl')
->wait_for
->outseq;
# ditto but put the result into directory '/tmp/my'
# (directories do not need to exist)
papplmaker.PLS -n edit::seqret -m MySeqret -d /tmp/my/
# generate modules for all analysis whose names
# matches given regular expression (case insensitive)
papplmaker.PLS -r 'edit'
# ditto, but name generated module with your own names
# (letting papplmaker.PLS substitute parts of your names)
papplmaker.PLS -r 'edit' -m 'My_$ANALYSIS'
the way that -s and -S are just vibes and generate nothing?? obsessed. π«Ά
π¦ DESCRIPTION π¦
okay so the module Bio::Tools::Run::Analysis gives you access to local and remote analysis tools in one unified way β and that unified way is defined over in Bio::AnalysisI. it uses a general approach: you set arbitrary input data, and you retrieve results by naming them. very flexible, very slay.
but β and here's the plot twist π β sometimes it's way more convenient to have a specific module that represents exactly one analysis tool, and that already knows what the available input and result names are. no guessing, no reading docs at 3am.
and that is literally what the generator papplmaker.PLS does: it creates those dedicated modules. β¨
papplmaker.PLS uses the same access method as the general module β which means that depending on the parameter access it can use SOAP, CORBA, or any other (supported) protocol, or it can access a local analysis (available on the same machine where papplmaker.PLS is invoked). so many options, so little time. π
it does its job in one of two modes:
- either for one named analysis, specified by the
-noption - or it uses the
Bio::Tools::Run::AnalysisFactorymodule to find out what analyses are available β and you can limit that number by matching against a regular expression given by the-roption. π
the generated module (or modules, plural, we're flexible) are named by default similarly to the names of the corresponding analyses. but you can change that with the -m option β which is lowkey a template, and inside it the following strings are recognised and replaced:
$ANALYSISor${ANALYSIS}β gets replaced by the name of the analysis.$CATEGORYor${CATEGORY}β gets replaced by the name of the category where the analysis belongs to.$SERVICEor${SERVICE}β gets replaced by the entire name of the service. (which is usually a concatenation of a category and an analysis name, and ngl it's also used as the default module name, btw. π)
π so what's the difference between "service", "analysis" and "category"?? π
bestie this is the part where it gets confusing, fr fr. sometimes these terms mean slightly different things depending on the access method you're using to talk to them. so here's the tea:
- An "analysis" is a program (an application, a tool) running somewhere β but sometimes on a local machine. an example of an analysis is
seqret(from the EMBOSS package). πΈ - Analyses can be grouped into categories by their functions or by the type of data they deal with β but sometimes there are no categories at all, and that's fine, we respect it.
- Each analysis can be accessed using a higher level of abstraction: a "service". a service is usually a protocol-dependent wrapper, such as a Web Service, or a CORBA service. for example there's an
edit::seqretservice which represents the analysisseqretin the categoryedit. iconic. π
π FEEDBACK π
π¬ Mailing Lists
user feedback is an integral part of the evolution of this and other Bioperl modules β literally, it's the main character of the whole development arc. so send your comments and suggestions preferably to the Bioperl mailing list. your participation is much appreciated. π«Ά
bioperl-l@bioperl.org - General discussion
http://bioperl.org/wiki/Mailing_lists - About the mailing lists
π Reporting Bugs
report bugs to the Bioperl bug tracking system so we can keep track of the bugs and their resolution. bug reports can be submitted via the web:
http://redmine.open-bio.org/projects/bioperl/
π§ AUTHOR π§
Martin Senger (senger@ebi.ac.uk) β thank you for your service, king π
π COPYRIGHT π
Copyright (c) 2003, Martin Senger and EMBL-EBI. All Rights Reserved.
this script is free software; you can redistribute it and/or modify it under the same terms as Perl itself. π
β οΈ DISCLAIMER β οΈ
this software is provided "as is" without warranty of any kind. no cap, no promises, no takebacks. π
π BUGS AND LIMITATIONS π
None known at the time of writing this. (iconic behaviour honestly β not me being shocked. π)
and that's the whole page bestie!! this was perl version v5.36.0, dated 2023-01-22, and it's the BP_PAPPLMAKER(1p) manual. mwah. π
β¨π
π¦ where this page comes from
- debian bookworm: bioperl-run 1.7.3-9 Β· Perl
- ubuntu noble: bioperl-run 1.7.3-9 Β· Perl
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms