http://www.perlmonks.org?node_id=834590


in reply to Re^3: Generate unique ids of maximum length
in thread Generate unique ids of maximum length

And this is why I've collapsed the char-level suffix tree to the substring-level:

I've always done that too, for exactly the reason you mentioned. I just don't create a tree from the collapsed sequences. I just keep the currently relevant collapsed sequence in a scalar (was called $flux, now called $unsplit).

I contemplated returning each item as an alternating list of required and optional components (as follows), but I wanted to keep the code a short as possible.

( ... [ 'Le', 'noc', '3', '_', 'd', 'uallayer_', '3' ], [ 'Le', 'noc', '5', '_', 'c', 'arina_', '1' ], ... )

Update: Added last para and accompanying illuatration.