rle_rec (a:as) = (b, a) : rle_rec (dropWhile (== a) as)
 where
  c = (takeWhile (== a) as)
  b = length (c) + 1


-- Tests
rle_rec (a:as) = (b, a) : rle_rec (dropWhile (== a) as)
 where
  c = (takeWhile (== a) as)
  b = length (c) + 1


-- Tests
rle_rec (a:as) = (b, a) : rle_rec (dropWhile (== a) as)
 where
  c = (takeWhile (== a) as)
  b = length (c) + 1


-- Tests