Técnicamente, hay una sola cosa, en la especificación del lenguaje se llama principalmente 'módulo', pero también se encuentra esta afirmación: "La definición del objeto define un único objeto (o: módulo) ..." (Scala Language Specification)
Por otra parte, sólo se puede hablar de un objeto compañero, cuando en realidad acompaña algo:
"en general, un módulo compañero de una clase es un objeto que tiene el mismo nombre que el clase y se define en el mismo alcance y unidad de compilación. Por el contrario, la clase se llama clase compañera del módulo. " (piense de nuevo: objeto complementario = módulo complementario)
Estar en el estado complementario agrega características a la clase complementaria, a saber, visibilidad (por ejemplo, la clase puede ver los campos privados del módulo complementario). Mismo alcance y unidad de compilación significa que deben definirse en el mismo archivo fuente y el mismo paquete.
Hay un interesting thread on LtU donde se discute objeto de Scala frente terminología módulo. También contiene un enlace a un documento de Odersky y Zenger si está intrigado; mostrando cómo miraron particularmente el sistema de módulos del lenguaje ML (OCaml es una gran influencia en Scala), y cómo lo enmarcan como varios enfoques de composición modular (sugiriendo que el módulo es un concepto más genérico; rasgos como módulos mixin, ...)
Creo que 'module' era una palabra clave de Scala en algún momento. Se cambió a 'object' para hacer que el lenguaje (sensación) sea más accesible para los desarrolladores convencionales. – missingfaktor
[Esta esencia] (https://gist.github.com/1324982) podría ser de alguna ayuda. – missingfaktor
Gracias por la información adicional. –