Wolfram Function Repository (Under Development)
Instantuse addon functions for the Wolfram Language
Make a pair of lists consisting of alternate terms from the original list
ResourceFunction["BisectList"][{a_{1},a_{2},a_{3},a_{4},a_{5},a_{6},…}] makes the list {{a_{1},a_{3},a_{5}…},{a_{2},a_{4},a_{4},…}}. 
The lists being riffled have the same length:
In[1]:= 

Out[1]= 

BisectList gives back the sublists:
In[2]:= 

Out[2]= 

Here the riffled lists have different lengths:
In[3]:= 

Out[3]= 

BisectList ignores the last term:
In[4]:= 

Out[4]= 

Here the head of the expression is not a list:
In[5]:= 

Out[5]= 

Add consecutive pairs of a list:
In[6]:= 

Out[6]= 

Apply BisectList twice:
In[7]:= 

Out[7]= 

Pull out the interleaved subsequences, making them both positive:
In[8]:= 

Out[8]= 

In[9]:= 

Out[9]= 
