Corrige el error: Aplanar un array

Estoy intentando escribir una función para aplanar un array de subarrays en un solo array. En otras palabras, quiero transformar esto: [[1, 2], [3, 4]] en [1, 2, 3, 4].

Este es mi código:

def flatten(arr)
  res = []
  for i in 0..arr.size-1
    res + arr[i]
  end
  res
end

Pero... no parece funcionar. Corrige mi código para que aplane correctamente el array.

Ejemplos

flatten([[1, 2], [3, 4]]) ➞ []
// Expected: [1, 2, 3, 4]

flatten([["a", "b"], ["c", "d"]]) ➞ []
// Expected: ["a", "b", "c", "d"]

flatten([[true, false], [false, false]]) ➞ []
// Expected: [true, false, false, false]

Notas

N/A