Virtual Reality and the Future of Natural and Computer Languages

An abstract of a lecture given at the Columbia University Computer Science Department in 1994.


Virtual Reality has lead me to explore some of the extremes of what might be possible in both natural languages and programming languages, and these two explorations have influenced each other in surprising ways.

I originally became involved with VR in the hopes of improving user interfaces for large and complex computer programming tasks. In the course of this work, I became convinced that advanced user interfaces would influence the core as well as the surface of programming language design. Some of the most entrenched ideas about computer programming languages might be understood better as mnemonic devices to help users cope with text-based or text-influenced user interfaces. I have explored this possibility by designing a series of user interface-intensive programming languages that reject seemingly ubiquitous ideas like parsers and source code.

I also started to wonder about the role of symbols and abstraction in natural language. I have postulated a new type of natural communication, as a thought experiment, that might be at least theoretically possible at some time in the future. There would be excellent modeling and programming tools for networked VR in this future, and a community of people highly skilled in the fast construction of shared virtual worlds. Members of this community could hypothetically communicate by creating rapidly changing content in a shared, objective world. They would create and share content directly, instead of referring to contingencies indirectly with words or other symbolic devices. This is what I call post-symbolic communication.

While it might at first seem that symbols, abstractions, and categories would be needed to communicate anything substantial, even in this future, that does not appear to be the case. For just one example, instead of abstract categories or platonic ideals, it might be possible to create a concrete, but very large, collection of objects that are to be considered as similar. Such a collection could be held inside a virtual jar, for instance, that is small on the outside but big inside, and could be available as conveniently as a word.

Another way to say this is that concreteness could be as versatile as abstraction, if it becomes very easy to make and change concrete things. If it is at least possible that our understanding of the range of potential natural languages has been limited by assumptions based on text, it is certainly worth re-examining our assumptions about computer languages.


Go back to Jaron's home page.