@book{adams_digital_1954,
	address = {Cambridge, MA},
	title = {Digital {Computers}: {Business} {Applications}—{Notes} from a {Special} {Summer} {Program}},
	publisher = {MIT Press},
	author = {Adams, Charles W. and Gill, Stanley},
	year = {1954}
  }

Translation rather than virtualization

“It has been stated that the net result of automatic coding techniques is to cause one machine to imitate another. Alternatively, they may be thought of as allowing the programmer to write his programs in a different language, one that is translated to the machine’s internal language by the processing routines. In order to make things easy for the programmer, we should make the new language as convenient as possible for him to use. The original statement of the problem to be solved comes to him in some language, and his job is to convert it into a language that can be pre sented to the machine. We should make this gap as narrow as possible, i.e., the language accepted by the processing routines should be as similar as possible to the language in which the problems arise.” (16-6)

Difficulties

“Here, however, there are technical difficulties. Firstly, the languages that are used in practice contain an immense variety of symbols (especially in the fields of science and engineering). Not only would the automatic processing of such information be complicated, but there simply do not exist transcription devices with keyboards adequate to handle all the symbols (and any manual translation would defeat our purpose). Secondly, (and this is more fundamental), very few of the seemingly precise statements made even in technical subjects can in fact be interpreted unambiguously without an intelligent knowledge of the subject matter — and this is quite beyond the ability of machines at present. [new paragraph] Notwithstanding these formidable obstacles, automatic coding is slowly advancing.” (16-6)