Efficient trade-offs as explanations in functional linguistics: some problems and an alternative proposal