insert el [] prec = [el] insert el (x:xs) prec = if (prec el x) then (el:(x:xs)) else (x:(insert el xs prec)) insertionsort [] prec = [] insertionsort (x:xs) prec = (insert x (insertionsort xs prec) prec)