Sunday, October 19, 2008

New schedule for Lisp50

Unfortunately, John McCarthy will not be present at Lisp50 due to severe health issues. However, there will be a live phone interview with John McCarthy during this event. The schedule has slightly changed because of this.

Monday, October 13, 2008

The Lisp50 schedule is now available

Location: Nashville Convention Center (co-located with OOPSLA 2008)

Room: 204

Date: Monday, October 20, 2008

More information: Lisp50 website


8:30-9:15  Guy Steele and Richard Gabriel: The Evolution of Lisp
9:15-10:00  JonL White: From Massively Monster Machines to MicroChips - Forces Affecting Lisp Language Design through Five Decades
10:00-10:30  Coffee Break
10:30-11:15  Herbert Stoyan: Lisp 50 years ago - what the documents tell
11:15-12:00  Alan Kay interviews John McCarthy
12:00-13:30  Lunch Break
13:30-14:15  Fritz Kunze: Careening through Lisp mind fields
14:15-15:00   Pascal Costanza: ContextL - Adding support for Context-oriented Programming to Common Lisp
15:00-15:30   Coffee Break
15:30-16:15   Warren Teitelman: Transforming Lisp into a Programming Environment
16:15-17:00   Kent Pitman: Common Lisp - The Untold Story
17:00-17:30   Break
17:30-18:15   William Clinger: Retrospective on Scheme
18:15-19:00   Rich Hickey: Clojure, a new dialect of Lisp
19:00-20:00   Panel Discussion: The Future of Lisp

The following panelists will discuss the next 50 years of Lisp at the panel discussion:

  • William Clinger, Northeastern University, USA

  • Rich Hickey, Independent Consultant, USA

  • Kent Pitman, HyperMeta Inc., USA

  • Martin Simmons, LispWorks Ltd., UK

  • Daniel Weinreb, ITA Software, USA (moderator)

Friday, October 10, 2008

William Clinger will speak at Lisp50

William Clinger
William D Clinger first encountered Lisp in 1975, in a course on automatic theorem proving. He has been at Northeastern University since 1994, where most of his research involves the design, specification, and implementation of functional or higher-order languages. He contributed to several of the defining reports on Scheme, wrote the compilers for two implementations, and invented efficient algorithms for hygienic macro expansion, accurate decimal-to-binary conversions, and bounded-latency generational garbage collection.

Retrospective on Scheme
Scheme began as a sequential implementation of the Actor model, from which Scheme acquired its proper tail recursion and first class continuations; other consequences of its origins include lexical scoping, first class procedures, uniform evaluation, and a unified environment. As Scheme developed, it spun off important new technical ideas such as delimited continuations and hygienic macros while enabling research in compilers, semantics, partial evaluation, and other areas. Dozens of implementations support a wide variety of users and aspirations, exerting pressure on the processes used to specify Scheme.

Pascal Costanza will speak at Lisp50

Pascal Costanza
Pascal Costanza has a Ph.D. degree from the University of Bonn, Germany, and works as a research assistant at the Programming Technology Lab of the Vrije Universiteit Brussel, Belgium. His past involvements include specification and implementation of the languages Gilgul and Lava, and the design and application of the JMangler framework for load-time transformation of Java class files. He has also implemented ContextL, the first programming language extension for Context-oriented Programming based on CLOS, and aspect-oriented extensions for CLOS. He is furthermore the initiator and lead of Closer, an open source project that provides a compatibility layer for the CLOS MOP across multiple Common Lisp implementations.

ContextL: Adding support for Context-oriented Programming to Common Lisp
There is an increased need for applications that can dynamically adjust their behavior to the context of use. Three years ago, we have introduced ContextL as an extension to Common Lisp, our first language extension that explicitly supports Context-oriented Programming (COP). In COP, programs consist of partial class and method definitions that can be selected and composed at runtime as needed. Employing potentially crosscutting runtime adaptations to class and method definitions, COP encourages continually adjusting behavior of programs according to their context.

Since then, we have carried out a number of successful application and language experiments which show that the basic building blocks of COP remain stable. Among others, we have implemented multiple context-dependent views, coordination of screen updates, context-dependent discerning of phone calls, and selecting context-dependent billing schemes. We have also taken first steps towards the design and requirements engineering stages for context-aware applications.

On the one hand, this talk introduces the basic language constructs for COP, shows some non-trivial examples, and some promising next steps in the field of COP currently being undertaken in several research groups. On the other hand, this talk will also illustrate how much easier it is to implement non-trivial language extensions, such as ContextL, in Lisp than in other languages, not only as a basis for a research platform, but also for frameworks that are used in large-scale industrial settings.

Thursday, October 9, 2008

Warren Teitelman will speak at Lisp50

Warren Teitelman
Dr. Warren Teitelman received his B.S. in Mathematics from CalTech in 1962, and his M.S. in 1963 and Ph.D. in 1966 from M.I.T., there being no program in computer science at M.I.T. at that time. He joined Bolt Beranek and Newman in 1966, where, as DARPA principal investigator, he was responsible for the design, implementation, and support of BBN-Lisp. He left BBN in 1972 to join Xerox PARC where he continued as DARPA principal investigator now responsible for Interlisp. Interlisp pioneered many of the concepts and functionality of modern IDEs (integrated development environment).

For this work, he received the ACM Software Systems Award for 1993: "For pioneering work in programming environments that integrated source-language debuggers, fully compatible integrated interpreter/compiler, automatic change management, structure-based editing, logging facilities. Interactive graphics, and analysis/profiling tools in the Interlisp System."

Dr. Teitelman left Xerox Parc in 1984, and joined Sun Microsystems where he was a Distinguished Engineer and Director of Window Systems, responsible for SunWindows, Sunview, Open Windows, XView, Open Look Toolkit, News, X11-News server, The News Toolkit. In 1990, he became Sun's Director of Multimedia.

He left Sun in 1992, and after brief stints at Rational Corporation - Director of C++ Development Environment, Lucid Corporation - Vice President of Engineering, and Caere Corporation - Vice President of Engineering, he joined BayStone Software in 1995 as VP of Engineering and CTO. BayStone was acquired by Remedy Corporation in 1998. He joined Google in 2003.

Transforming Lisp into a Programming Environment
Dr. Teitelman was first introduced to Lisp during his graduate studies at M.I.T. He wrote the software portion of his dissertation using Lisp 1.5. on MIT's CTSS (Compatible Time Sharing System). As a result of that experience, he became interested in transforming Lisp from a programming language into a programming environment. His talk will describe this passage which covered the years 1966 - 1980, and saw the introduction of many innovative features, such as history, spelling correction and undo, analysis and profiling tools, integrated interpreter and compiler, the first Lisp-based client-server window system, and more.

JonL White will speak at Lisp50

JonL White
White (a.k.a. "JonL") was first instructed in the way of computers--of numeric and symbolic computation--whilst in High School at a special "University" school associated with the Illinois state university system. The year, coincidentally, was 1958. He and a fellow mathematics student were subsequently hired by the University Computer Lab, where they jointly wrote code for the IBM 650, and actually developed a working compiler for next machine, the IBM1620. JonL received a Bachelor's degree in Mathematics from Carnegie-Mellon University, and a Masters in Applied Mathematics from Harvard University; after he had completed all the requirements of the Ph.D. program (ABD), he took a leave of absence to work at the MIT AI Lab in the fall of 1969. During the next few years, he advanced the state of Lisp development in many ways, and supervised numerous part-time undergraduates who assisted in the work, such as: Hillary Orman, Richard Stallman, Guy Steele, Eric Rosen, and Stavros Macrakis.

During the year 1977 he took a sabbatical leave to work at IBM's Watson Research Laboratories on the Lisp/370 project there, and returned to MIT the next year to head up the NIL project (NIL: a "New Implementation of Lisp.") By early 1980, he had distributed PDP-10 Maclisp to about five dozen other University sites (most with "AI" research groups.) After a meeting in April 1980 with the government agency mainly involved in AI research funding, JonL, Dick Gabriel, Scott Fahlman, and Guy Steele (by then at CMU, and involved with Gabriel at LLL) observed that the aforesaid four were involved in at least four different Lisp systems going in "five different directions"; in short order, they instituted a movement to coalesce efforts into a common direction. A bit later, after Dave Moon joined the conversations, the effort got a name: "Common Lisp."

JonL has played a signal part in the Association of Lisp Users, from the second conference hosted by this group -- the Lisp Users and Vendors Conference, 1991 in San Diego where he was the conference chair. Later he was elected to the Board of Directors of the ALU, and served as Program Chair for the International Lisp Conferences 2005 and 2007. He also played a significant part in the ANS Standardisation of Common Lisp, taking place between 1987-1994; he authored the LOOP proposal, and contributed to the Compilation and CLOS subcommittees.

From Massively Monster Machines to MicroChips: Forces Affecting Lisp Language Design through Five Decades
This talk will explore some of the constraints imposed by the character of computer hardware on Lisp's design over the past half-century, as well as being shaped by research goals. It will be presented mostly as an account by someone who was both an eyewitness and a protagonist in the struggle to create a better programming language. Even his own background as an undergraduate and graduate student (at CMU and Harvard respectively) seems to be relevant: for example, frustration with the use of IPL-V in AI classes at CMU, with the use of COMIT at Harvard to code up an Algebraic Simplification project (having no Lisp then!) And interestingly, a major influence of metamathematics shows up in his work on Lisp, giving rise to the notion that "Numbers are Symbols Too." A strong graduate education in mathematics had substantial influences on the ways he approached most significant issues in the use of, and the design of, Lisp -- in directions that often differed from his contemporaries. More specific topics to be discussed in a historical context: the unique, long-lasting alterations and additions to early lisp he made at MIT in the late 1960's and early 1970's time frame, the standardisation process for ANS Lisp, and the evolution of Lisp vendors during the two decades beginning in 1980.

Sunday, October 5, 2008

Fritz Kunze will speak at Lisp50

Fritz Kunze
Fritz Kunze co-founded Franz Incorporated and served as its CEO for 23 years.

Careening through Lisp mind fields
An excursionary romp through the last 20 odd years of history of the Lisp community. Some hopefully measured and neutral observations about the strengths and weaknesses of resources within the Lisp Community. Colorful stories told from a unique perspective and coupled with opinions on what might be possible going forward.

Kent Pitman will speak at Lisp50

Kent M. Pitman
Kent Pitman has been involved in the design, implementation, and use of the Lisp and Scheme programming languages for three decades. Kent has participated intermittently in the Scheme community, both as an early collaborator, in 1981, on the design of T, a Scheme dialect created at Yale, and later as one of several co-authors of various Revised Reports on Scheme. Throughout the 1980's and into the 1990's, he collaborated on the design of Common Lisp. As Project Editor of subcommittee X3J13, he brought that work to completion with the formal standardization of ANSI Common Lisp. He was also US Representative to and Project Editor for ISO SC22 Working Group 16, which in 1997 standardized programming language ISLISP. Kent writes on various technical issues as well as various kinds of social commentary.

Common Lisp: The Untold Story
It takes more to make a programming language than meets the eye. The processes that bring a language into being can be every bit as interesting as the language itself. The backstory of Common Lisp is no exception. Join me as I retrace some of the highlights of my experiences along the way. In this journey I'll mix history with personal observations in a way that I hope will enlighten those who weren't there and entertain, or perhaps even surprise, those who were.

Herbert Stoyan will speak at Lisp50

Herbert Stoyan
Herbert Stoyan started 1970 with work in AI and with LISP programming. In Dresden he implemented LISP without a manual using the book of Berkeley and Bobrow. Later he wrote several books on LISP and AI programming. In 1979 he got interested in LISP history and collected systematically all documents related to LISP. Based on this he published several papers on LISP history. He was head of the chair of AI at the University of Erlangen. His research interest are knowledge acquisition, knowledge representation and historical information system. The last large LISP programm he wrote is a blazon-to-postscript compiler which generates coats-of-arms.

LISP 50 years ago - what the documents tell.
The current state of knowledge about the development of LISP is incomplete. There are the memories of the developer - J.M.CCarthy - and the memories of the programmers and students. The recollections are not free of gaps and do not fit with the written and printed documents in all details. The special problem is that related to September and October 1958 and from March 1959 we have many documents showing the development, but between we miss proofs. In the talk I present the documents, show the logical development and make some speculations how the sequence of events might have been. Additionally I show some old photographs of the acting people.

Thursday, October 2, 2008

John McCarthy will be interviewed by Alan Kay at Lisp50

John McCarthy
John McCarthy has been Professor of Computer Science at Stanford University since 1962. His research is mainly in artificial intelligence. Long ago he originated the Lisp programming language and the initial research on general purpose time-sharing computer systems.

Alan Kay will interview John McCarthy at Lisp50

Alan Kay
Alan Kay is known for his early pioneering work on object-oriented programming and windowing graphical user interface design. He is the president of the Viewpoints Research Institute, and an Adjunct Professor of Computer Science at the University of California, Los Angeles. He is also on the advisory board of TTI/Vanguard. Until mid 2005, he was a Senior Fellow at HP Labs, a Visiting Professor at Kyoto University, and an Adjunct Professor at the Massachusetts Institute of Technology (MIT).

His contributions have been recognized with the Charles Stark Draper Prize of the National Academy of Engineering "for the vision, conception, and development of the first practical networked personal computers," the Alan. M. Turing Award from the Association of Computing Machinery "for pioneering many of the ideas at the root of contemporary object-oriented programming languages, leading the team that developed Smalltalk, and for fundamental contributions to personal computing," and the Kyoto Prize from the Inamori Foundation "for creation of the concept of modern personal computing and contribution to its realization."

Wednesday, October 1, 2008

Rich Hickey will speak at Lisp50

Rich Hickey
Rich Hickey, the author of Clojure, is an independent software designer, consultant and application architect with over 20 years of experience in all facets of software development. Rich has worked on scheduling systems, broadcast automation, audio analysis and fingerprinting, database design, yield management, exit poll systems, and machine listening.

Clojure, a new dialect of Lisp
Functional programming, interoperability, extensibility and concurrency objectives call for different decisions at many Lisp design points. Meeting those objectives in a Lisp dialect testifies to the continued vitality of the Lisp idea. This talk will provide a rationale for Clojure as a substantive and unique dialect of Lisp, and details of its design and implementation on the JVM.

Richard Gabriel and Guy Steele will speak at Lisp50

Richard P. Gabriel, IBM Research
Richard P. Gabriel received a PhD in Computer Science from Stanford University in 1981, and an MFA in Poetry from Warren Wilson College in 1998. He has been a researcher at Stanford University, company president and Chief Technical Officer at Lucid, Inc., vice president of Development at ParcPlace-Digitalk, a management consultant for several startups, a Distinguished Engineer at Sun Microsystems, a Consulting Professor of Computer Science at Stanford University, and lead guitarist for a rock 'n' roll band. He is a Distinguished Engineer at IBM Research, looking into the architecture, design, and implementation of extraordinarily large, self-sustaining systems as well as development techniques for building them. Until recently he was President of the Hillside Group, a nonprofit that nurtures the software patterns community by holding conferences, publishing books, and awarding scholarships. He sits on Hillside's Board of Directors. He helped design and implement a variety of dialects of Lisp. He is author of four books (Performance and Evaluation of Lisp Systems, MIT Press; Patterns of Software: Tales from the Software Community, Oxford University Press; Writers' Workshops and the Work of Making Things, Addison-Wesley Press; and Innovation Happens Elsewhere: Open Source as Business Strategy, Morgan Kaufmann), and a poetry chapbook (Drive On, Hollyridge Press), with two books of poetry in preparation: Leaf of my Puzzled Desire and Drive On. Since March 2000 he has written a poem a day. He has published more than 150 scientific, technical, and semi-popular papers, articles, and essays on computing. He has won several awards, including the AAAI/ACM Allen Newell Award. He is a poet. He lives in California.

Guy L. Steele, Jr., Sun Microsystems
Guy L. Steele Jr. (Ph.D., MIT, 1980) is a Sun Fellow and heads the Programming Language Research Group within Sun Microsystems Laboratories in Burlington, MA, USA. Before coming to Sun in 1994, he held positions at Carnegie-Mellon University, Tartan Laboratories, and Thinking Machines Corporation. He is the author or co-author of several books on programming languages (Common Lisp, C, High Performance Fortran, the Java Language Specification) as well as The Hacker's Dictionary (also known on the Internet as the Jargon File).

He has served as program chair for four ACM conferences on programming languages and also on the program committees of over 30 other conferences. He has served on accredited standards committees for the programming languages Common Lisp, C, Fortran, Scheme, and ECMAScript. He is an inventor or co-inventor on over 40 computer-related patents. He designed the original EMACS command set and was the first person to port TeX.

He is a Fellow of the American Association for Artificial Intelligence (1990) and a Fellow of the Association for Computing Machinery (1994). He has been awarded the ACM Grace Murray Hopper Award (1988), a Gordon Bell Prize (1990), and the ACM SIGPLAN Programming Languages Achievement Award (1996). He has been elected to the National Academy of Engineering of the United States of America (2001) and to the American Academy of Arts and Sciences (2002).

The Evolution of Lisp
This play is a word-for-word recreation of the presentation of the paper, The Evolution of Lisp, at the ACM History of Programming Languages II Conference, which took place at the Cambridge Center Marriott Hotel, Salon III, at 8:30am on Thursday, April 22, 1993. The role of Guy L. Steele Jr, will be played by Guy L. Steele Jr., and Richard P. Gabriel will play Richard P. Gabriel. The following were the bios for them at that time:

Biography of Guy L. Steele, Jr.
Guy L. Steele Jr. received his A.B. in applied mathematics from Harvard College (1975), and his S. M.and computer science and artificial intelligence from M.I.T. (1977 and 1980). He has been an assistant professor of computer science at Carnegie-Mellon University; a member of technical staff at Tartan Laboratories in Pittsburgh, Pennsylvania; and a senior scientist at Thinking Machines Corporation.

He is author or coauthor of three books: Common Lisp: The Language (Digital Press); C: A Reference Manual (Prentice-Hall); and The Hacker's Dictionary (Harper&Row), which has been revised as The New Hacker's Dictionary, edited by Eric Raymond with introduction and illustrations by Guy Steele (MIT Press).

He has published more than two dozen papers on the subject of the Lisp language and Lisp implementation, including a series with Gerald Jay Sussman that defined the Scheme dialect of Lisp. One of these, Multiprocessing Compactifying Garbage Collection, won first place in the ACM 1975 George E. Forsythe Student Paper Competition. Other papers published in are Design of a LISP-Based Microprocessor with Gerald Jay Sussman (November 1980) and Data Parallel Algorithms with W. Daniel Hillis (December 1986). He has also published papers on other subjects, including compilers, parallel processing, and constraint languages. One song he composed has been published in the Communications of the ACM (The Telnet Song, April 1984).

The Association for Computing Machinery awarded him the 1988 Grace Murray Hopper Award. He was elected a Fellow of the American Association for Artificial Intelligence in 1990. He led the team that received a 1990 Gordon Bell Prize honorable mention for achieving the fastest speed to that date for a production application: 14.182 Gigaflops.

He has served on accredited standards committees X3J11 (C language) and X3J3 (FORTRAN) and is currently chairman of X3J13 (Common Lisp). He was also a member of the IEEE committee that produced the IEEE Standard for the Scheme Programming Language, IEEE Std 1178-1990. He represents Thinking Machines Corporation in the High Performance FORTRAN Forum.

He has served on Ph.D. thesis committees for seven students. He has served as program chair for the 1984 ACM Conference on Lisp and Functional Programming and for the 15th ACM Symposium on Principles of Programming Languages (1988); he also served on program committees for 30 other conferences. He served a five-year term on the ACM Turing Award committee, chairing it in 1990. He served a five-year term on the ACM Grace Murray Hopper Award committee, chairing it in 1992.

He has had chess problems published in Chess Life and Review and is a Life Member of the United States Chess Federation. He has sung in the bass section of the MIT Choral Society (John Oliver, conductor) and the Masterworks Chorale (Allen Lannom, conductor) as well as in choruses with the Pittsburgh Symphony Orchestra at Great Woods (Michael Tilson Thomas, conductor) and with the Boston Concert Opera (David Stockton, conductor). He has played the role of Lun Tha in The King and I and the title role in Li'lAbner. His "Crunchly" cartoons appear in The New Hacker's Dictionary. He designed the original EMACS command set and was the first person to port TeX.

Biography of Richard P. Gabriel
Richard P. Gabriel received his Ph.D. in Computer Science from Stanford University in 1981. He has been a researcher at Stanford University, a company president and Chief Technical Officer of Lucid, Inc., and a Consulting Professor of Computer Science at Stanford University. He helped design and implement a variety of dialects of Lisp. He is author of one book, Performance and Evaluation of Lisp Systems (MIT Press). He has published more than 100 scientific, technical, and semi-popular papers, articles, and essays on computing. He is the lead guitarist in a working rock 'n' roll band and a poet.

This was the abstract for the talk:
Lisp is the world's greatest programming language-or so its proponents think. The structure of Lisp makes it easy to extend the language or even to implement entirely new dialects without starting from scratch. Overall, the evolution of Lisp has been guided more by institutional rivalry, one-upsmanship, and the glee born of technical cleverness that is characteristic of the "hacker culture" than by sober assessments of technical requirements. Nevertheless this process has eventually produced both an industrial strength programming language, messy but powerful, and a technically pure dialect, small but powerful, that is suitable for use by programming-language theoreticians. We pick up where McCarthy's paper in the first HOPL conference left off. We trace the development chronologically from the era of the PDP-6, through the heyday of Interlisp and MacLisp, past the ascension and decline of special purpose Lisp machines, to the present era of standardization activities. We then examine the technical evolution of a few representative language features, including both some notable successes and some notable failures, that illuminate design issues that distinguish Lisp from other programming languages. We also discuss the use of Lisp as a laboratory for designing other programming languages. We conclude with some reflections on the forces that have driven the evolution of Lisp.