Skip to content

Chapel reverse-complement clean-up

Chapel reverse-complement clean-up

Description

There are some problems with submitted Chapel reverse-complement versions. I've opened this issue to list them and propose ways to address them.

Proposal

  • Chapel reverse-complement 4 should be removed.

    • Chapel versions 4 and 5 are near-duplicates, where I believe both were added as part of this week's updates.
    • Version 4 looks like the original version I submitted in issue #509 (closed) last spring. Version 5 looks like the update I made last month as noted in #509 (comment 370151).
    • Version 5 is strictly better than version 4, so version 4 should be removed.
  • Chapel reverse-complement from #527 (closed) should be added.

    • Issue #527 (closed) was marked as "Done" and closed, but I'm not seeing its code on the live site.
  • Chapel reverse-complement 2 should be removed or updated.

    • I believe this version is failing because of the (new?) check using an odd-sized input. We apparently have not been testing odd-sized inputs in our nightly regression testing, so this got past us. I plan to add a test of odd-sized inputs to our test runs to prevent this from happening in the future.
    • Reviewing version 2, it seems old, slow, large, and less idiomatic than versions 3, 5, and #527 (closed), so I think it could be removed.
    • Alternatively, if you'd prefer to preserve it for historical purposes, I'd be happy to get it working with odd-sized inputs.

Benefits & Costs

  • Removing version 4 should be easy and will remove an outdated code
  • Adding the version from #527 (closed) should hopefully also be easy and will provide an interesting point of comparison to the gcc 8 version.
  • Removing version 2 would be an easy way to deal with its incorrect handling of odd problem sizes and fine given the newer versions.
    • Alternatively, I'd be happy to fix it for odd problem sizes and re-submit the fixed version for inclusion in a future update. Let me know if you have a preference.

Thanks!

Edited by Isaac Gouy