My solution to the @flatten(list)@ exercise in section 7.6 doesn’t use reverse, as the hint suggests. Here’s my version:
def flatten(), do:  def flatten([head|tail]), do: flatten(head) ++ flatten(tail) def flatten(head), do: [head]
I’m curious what the solution looks like if you do use reverse to solve this problem. Anybody care to share their solution?