[Chapel Merge] Revcomp cleanup

Branch: refs/heads/main
Revision: 0366c27
Author: bradcray
Link: Revcomp cleanup by bradcray · Pull Request #19805 · chapel-lang/chapel · GitHub
Log Message:

Merge pull request #19805 from bradcray/revcomp-refactor

Revcomp cleanup

[trivial, not reviewed]

In discussing a bug workaround in the revcomp variation added in #19597
with Engin today, I found myself questioning why I hadn't gotten more
creative, for example by hoisting the logic that skips past the header line
outside of the revcomp procedure itself. I think that the answer is simply
"because I was trying to minimize the diff with revcomp3", which isn't really
a good answer. So this version takes a more dramatic restructuring to avoid
the lame bug workaround. In doing so, I also found other logic that could
be cleaned up, such as the while loop that reads in the data (duh). This
brings the code size down to 595 gz bytes which is a new record for us.

Modified Files:
M test/studies/shootout/reverse-complement/bradc/revcomp-blc.chpl

Compare: https://github.com/chapel-lang/chapel/compare/741a8412b516...0366c2743623