Evolutionary linguistics and historical pragmatics can inform each other on a theoretical as well as on a methodological level. This paper introduces a computational model to study the impact of pragmatic factors on language evolution and change. It explores the validity of the frequently cited statement that ‘[i]t would not be entirely inappropriate to regard languages in their diachronic aspects as gigantic expression-compacting machines’ (Langacker, 1977, 107). In particular, I advocate a model of language that includes a coding aspect as well as an in- ferential aspect, and demonstrate how these two aspects interact with each other through the processes of underspecification and overspecification. The developed model exemplifies how language makes use of lossy compression to adapt to its environment, and how ambiguity func- tions as a necessary prerequisite for language evolution. By applying the modelled processes to study the origins of language, a new account of protolanguage is put forward to complement the existing approaches to the issue.