In English and other Germanic languages, noun compounds are formed simply by “appending” the nouns in a certain order. For example, phrases like this are very common:
electricity price comparison service
In Portuguese, Spanish and probably other Romance languages, this kind of compounding has to be done with the aid of prepositions. The translation of the phrase above to Portuguese is:
serviço de comparação de preços de eletricidade
What determines how noun compounds are formed in a language? Is there something like a parameter (as in the principles and parameters theory) that explains this?
I'm focusing only on "open" compounds (not idiomatic ones) formed exclusively by nouns. As Molly mentioned, this might be related to the Adj/N word order in the language. This hypothesis is quite reasonable, since in the Germanic languages the head in these compounds comes at the end, whereas in Romance languages, they come at the beginning, matching the Adj/N word order.
But even if this correlation does hold cross-linguistically, how does it relate to the need for prepositions? Maybe prepositions help avoiding ambiguities when the adjectives are postnominal? Could it be related to processing preferences?