News Archives

[Colloquium] Implementing Scheme in a Virtual World

September 12, 2008

Watch Colloquium: 

Quicktime file (761 Megs)
AVI file (469 Megs)

  • Date: Friday, September 12th, 2008 
  • Time: 2 pm — 3:15 pm 
  • Place: ME 218

Lance R. Williams 
University of New Mexico 
Department of Computer Science 


Abstract: At any given moment in time, hundreds of thousands of people worldwide are immersed in dozens of virtual worlds playing massive multiplayer online games (MMOG’s). Second Life is unique among MMOG’s because the players themselves create the content of the virtual world they inhabit. They do this (in large part) by means of computer programming and I believe this fact makes Second Life a potentially important resource for computer science educators.

Furthermore, because Second Life supports a programming model where a large number of small scripts execute in parallel and asynchronously, and communicate via message passing, it is an ideal testbed for research in many areas of computer science, including distributed computing, swarm robotics, self-assembly, distributed sensor networks, and artificial life.

In this talk, I first provide an overview of Second Life and its programming model. I then describe and demonstrate a series of evaluators for the Scheme programming language which I have constructed inside the game, including one evaluator where the heap and virtual machine are represented in a completely distributed fashion as a school of swimming fish. In this way, I hope to illustrate Second Life’s value to computer science pedagogy and as a testbed for research in distributed computation.

Bio: Lance R. Williams received his BS in Computer Science from the Pennsylvania State University in 1985 and his MS and Ph.D in Computer Science from the University of Massachusetts at Amherst in 1988 and 1994. His dissertation, in the area of computer vision, was on perceptual completion of surfaces which are only partially visible. After completing his Ph.D., he spent four years at NEC Research Institute in Princeton, NJ where he developed a series of increasingly more general neural models of the process used by the human visual system to compute the shape of object boundaries where they cannot be directly observed. In 1997, Dr. Williams joined the faculty of the Dept. of Computer Science at the University of New Mexico where he is currently an Associate Professor. His research since joining UNM has addressed a range of topics in computer vision, neural computation, digital image processing, and human and computer interaction. Since his first exposure to it in the early 1980′s, he has had an enduring interest in the LISP programming language and its implementation.