Isn't this a bit of an overkill? Languages are either 1 or 2 components, right?