Lacing Longest Level Code Block?

Most nodes I could experiment with longest lacing or cross product, and maybe there’s a node I’m not thinking of that would help, but my lists aren’t aligning the way I need them to. Instead of a list of ones, twos and threes. I was expecting 3 list of 12&3 each

Its an order of operations thing, as you’re not explicitly calling out the sequencing for joining the “@” and “-”. To get around that, I’d do something like this:

Breaking it down into parts:

  1. First get rid of the added complexity of appending the consistent separators. (project+" @ "), but do so in parentheses so that we can utilize lacing on the result.
  2. Then join that combined string with the level, so that we get all the projects and all the levels. Projects want to go first, so @L1 for that while levels want to go second, so @L2. We want to make sure we reuse the short list of projects, so longest lacing. Net result is :
    (project + " @ ")@L1<1L> + level@L2<1L>
  3. Then join the separator to the suffix or module value. ("-"+module), once again using parenthesis to ensure that it’s treated as a single list rather than multiple values.
  4. Append the suffix to the project/level strings wrapped in another set of parenthesis so we can declare longest lacing , resulting in the final code:
    results = ( (project + " @ ")@L1<1L> + level@L2<1L> )@L2<1L> + ("-"+module);
2 Likes

works great, thank you for the detailed response. That makes a lot more sense

1 Like