This requires to make line numbers a first-class citizen in the module hierarchy but it is fortunately not _too involved_.