def mSrt([])=[] addpattern def mSrt([e] as ls)=ls addpattern def mSrt(ls)= print(ls) mMrg(mSrt(ls[0:hf]),mSrt(ls[hf:])) where: hf=len(ls)//2 def mMrg([],l2)=l2 addpattern def mMrg(l1,[])=l1 addpattern def mMrg(l1,l2 if l1[0]>l2[0])= print(l1,'>',l2) l1[0:1]+mMrg(l1[1:],l2) addpattern def mMrg(l1,l2)= print(l1,'<',l2) l2[0:1]+mMrg(l1,l2[1:]) import random a= range(20)|>map$(->random.randint(1,6))|>list mSrt(a)