Ace::S...nscript(3pm)

🧬 NAME 🧬

okay bestie so this is Ace::Sequence::Transcript β€” no wait, it's literally described as a Simple "Gene" Object πŸ’… iykyk, the naming is giving chaos but we move. It's Ace::Sequence::Transcript up top and Ace::Sequence::Gene everywhere else, and that's just how it is, no cap.

It's from the User Contributed Perl Documentation crew ✨


✨ SYNOPSIS ✨

ok so real quick, here's the vibe of how you actually use this thing:

    # open database connection and get an Ace::Object sequence
    use Ace::Sequence;

    # get a megabase from the middle of chromosome I
    $seq = Ace::Sequence->new(-name   => 'CHROMOSOME_I,
                              -db     => $db,
                              -offset => 3_000_000,
                              -length => 1_000_000);

    # get all the transcripts
    @genes = $seq->transcripts;

    # get the exons from the first one
    @exons = $genes[0]->exons;

    # get the introns
    @introns = $genes[0]->introns

    # get the CDSs (NOT IMPLEMENTED YET!)
    @cds = $genes[0]->cds;

like, look at her go 🫢 she's got the whole gene anatomy mapped out β€” exons, introns, and someday (not today!!) the CDSs.


🌸 DESCRIPTION 🌸

Ace::Sequence::Gene is a subclass of Ace::Sequence::Feature. She inherits every single method Ace::Sequence::Feature has β€” all of them, no stealing β€” but then she also adds the ability to retrieve the annotated introns and exons of the gene. That's her whole specialty, that's her thing, that's her main character energy πŸ‘‘


πŸŽ€ OBJECT CREATION πŸŽ€

okay listen, you will not ordinarily create an Ace::Sequence::Gene object directly. Like, don't do that, bestie. That's not the move.

Instead, these objects get created for you in response to a transcripts() call to an Ace::Sequence object. She just shows up. Unbothered. Perfect. πŸ’…


πŸ’– OBJECT METHODS πŸ’–

Most methods are inherited from Ace::Sequence::Feature β€” she's sharing the whole closet. But the following methods are also supported:

  • exons() β€” gives you the annotated exons.
      @exons = $gene->exons;

Return a list of Ace::Sequence::Feature objects corresponding to annotated exons. cute little exon features, all lined up 🧚

  • introns() β€” gives you the annotated introns.
      @introns = $gene->introns;

Return a list of Ace::Sequence::Feature objects corresponding to annotated introns. yes babes, the in-between bits get love too πŸ’œ

  • cds() β€” gives you... well, supposedly the coding sequence.
      @cds = $gene->cds;

Return a list of Ace::Sequence::Feature objects corresponding to coding sequence. THIS IS NOT YET IMPLEMENTED. 😭 so like, don't rely on it, she's still in her beta era.

  • relative() β€” the coordinate system toggle, she's the vibe check for your numbers.
      $relative = $gene->relative;
      $gene->relative(1);

This turns on and off relative coordinates. By default, the exons and intron features will be returned in the coordinate system used by the gene. If relative() is set to a true value, then coordinates will be expressed as relative to the start of the gene. The first exon will (usually) be 1. ✨

note the "usually" β€” the original says usually, and we respect the original πŸ’―

πŸ”₯ SEE ALSO πŸ”₯

go read these next bestie, they're all linked up:

Ace, Ace::Object, Ace::Sequence,Ace::Sequence::Homol, Ace::Sequence::Feature, Ace::Sequence::FeatureList, GFF


πŸ‘‘ AUTHOR πŸ‘‘

Lincoln Stein <lstein@cshl.org> with extensive help from Jean Thierry-Mieg <mieg@kaa.crbm.cnrs-mop.fr> 🫢 iconic collab fr fr

Copyright (c) 1999, Lincoln D. Stein

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See DISCLAIMER.txt for disclaimers of warranty.


ok so that's the whole thing, you're fully caught up bestie 🌈 this little gem came to you via perl v5.42.3 on 2026-08-19, and that's the tea πŸ“ go forth and annotate those exons πŸ’–πŸ’…βœ¨

πŸ“¦ where this page comes from