A tightly integrated modelling and optimisation library: A new framework for rapid algorithm development. The development of mathematical programming algorithms and heuristics has traditionally been hampered by the separation of modeller and optimiser. Developers either have to sacrifice performance by switching between a modeller and optimiser and communicating through cumbersome matrix files; or they can work solely with the in-core matrix in the optimiser, where knowledge about the structured algebraic model is missing and thus difficult to exploit. par We present EMOSL, a new combined modelling and optimisation subroutine library that overcomes these drawbacks. It allows the problem to be manipulated using the notation of the model language, which is of course close to the algebraic formulation of the problem. Access is provided directly to the in-core matrix of the optimiser, eliminating the need to communicate via files. Thus the scope and ease of algorithm development is greatly improved, without any degradation of performance. par We substantiate these claims by describing four applications: a block structure extraction tool, and the implementations of three MIP heuristics and cutting planes techniques.