Onward!
Chair: Richard P. Gabriel,
Sun Microsystems, Inc., onward!@oopsla.acm.org
The Onward! Track contains papers describing new paradigms and metaphors in computing,
new thinking about objects, new framings of computational problems and systems, and new technologies.
Onward! papers aim to alter or redefine the art by proposing a leap forwardor sidewaysregarding computing.
|

|
Tuesday, 28 October
Wednesday, 29 October
Thursday, 30 October
Free Culture: The limited but essential role of property in building
an environment for creativity
Tuesday, 28 October
8:30-10:00
Larry Lessig,
Stanford University,
lessig@pobox.com
|
 |
This talk will sketch the boundaries of protection that
intellectual property law should set, but argue that extremism has now
defeated these limits. The consequence is an environment within which
modular creativity is increasingly constrained.
Presenter
Lawrence Lessig is a Professor of Law at Stanford Law School and founder
of the school's Center for Internet and Society. He is one of the country's leading commentators on legal
aspects of new communications technologies and cyberspace.
He is Professor of Law and founder and executive director of the Center for Internet and Society at Stanford Law School.
Professor Lessig teaches and writes in the areas of constitutional law, law and high technology, Internet regulation,
comparative
constitutional law, and the law of cyberspace.
He is the author of many influential publications about cyberlaw and cyberspace, including two books:
The Future of Ideas: The Fate of the Commons in a Connected World (2001) and Code and Other Laws of Cyberspace (1999).
Naturalistic Programming and Run-Time Code Generation
Tuesday, 28 October
10:30-12:00
|
|
These papers explore simplifying programming by examining some of our underlying assumptions about references and constructing
programs.
Beyond AOP: Toward Naturalistic Programming
Cristina Lopes,
University of California, Irvine,
lopes@ics.uci.edu Paul Dourish,
University of California, Irvine,
jpd@ics.uci.edu David Lorenz,
Northeastern University,
lorenz@ccs.neu.edu Karl Lieberherr,
Northeastern University,
lieber@ccs.neu.edu
Software understanding (for documentation, maintenance or evolution) is one of the longest-standing problems in Computer Science.
The use of bct-oriented languages helps, but fundamentally remains far from solving the problem. Most programming languages
and systems have fallen prey to the assumption that they are supposed to capture idealized models of computation inspired
by deceptively simple metaphors such as objects and mathematical functions. Aspect-oriented programming languages have made
a significant breakthrough by noticing that, in many situations, humans think and describe in crosscutting terms. In this
paper we suggest that the next breakthrough would require looking even closer to the way humans have been thinking and describing
complex systems for thousand of years using natural languages. While natural languages themselves are not appropriate for
programming, they contain a number of elements that make descriptions concise, effective and understandable. In particular,
natural languages referentiality is a key factor in supporting powerful program organizations that can be more easily understood
by humans.
|
Routine Run-time Code Generation
Sam Kamin,
Univ. of Illinois at Urbana-Champaign,
kamin@cs.uiuc.edu
The decades-old paradigm of "object code = executable code: is outdated. The paradigm we
propose in this paper is "object code = executable program generator.: Similarly, "software
component" should be "program that, when appropriately invoked by a client, generates machine
language useful to the client." Traditional object files amount to constant functions in the domain
of code-producing functions; in the future, we will routinely employ the full domain of higher-order
code values. In this paper, we argue that such a change in viewpoint can lead to much
wider use of run-time code generation, by overcoming the bureaucratic barriers it usually
encounters. Run-time code generation has numerous applications; when it comes to be used
routinely, many more applications are likely to be discovered.
|
Acceptability-Oriented Computing
Wednesday, 29 October
10:30-12:00
|
|
These papers talk about a new approach to constructing software systems in which the designer identifies key properties that
the execution must satisfy to be acceptable to its users. The resulting system consists of layers of components enforcing
the acceptability properties.
Acceptability-Oriented Computing
Martin Rinard,
MIT,
rinard@lcs.mit.edu
We propose a new approach to the construction of software systems.
Instead of attempting to build a system that is as free
of errors as possible, we instead propose that the designer
identify key properties that the execution must satisfy to
be acceptable to its users. The developer then augments the
system with a layered set of components, each of
which enforces one of the acceptability properties.
The potential advantages of this approach include more flexible,
resilient systems that recover from errors and
behave acceptably across a wide
range of operating environments, an appropriately
prioritized investment of engineering resources, and
reduced development costs because of the ability to
productively incorporate unreliable components into the
final software system and to use
less skilled implementors in the development process.
|
Automatic Detection and Repair of Errors in Data Structures
Brian Demsky,
MIT,
demsky@lcs.mit.edu Martin Rinard,
MIT,
rinard@lcs.mit.edu
We present a system that accepts a specification of key data
structure constraints, then dynamically detects and repairs
violations of these constraints, enabling the program to continue
to execute productively even in the face of otherwise
crippling errors. Our experience using our system indicates
that the specifications are relatively easy to develop once
one understands the data structures. Furthermore, for our
set of benchmark applications, our system can effectively repair
errors to deliver consistent data structures that allow
the program to continue to operate successfully within its
designed operating envelope.
|
The Biology of Information
Wednesday, 29 October
15:30-17:00
Walter Fontana,
Santa Fe Institute,
walter@santafe.edu
|
|
Walter Fontana is a research professor in residence at the Santa Fe
Institute, has served as a Member of the Institute for Advanced Study in
Princeton, NJ, with the Program in Theoretical Biology, and was a member of
the University of Vienna faculty at the Institute for Theoretical
Chemistry and Molecular Structural Biology.
Panel: Reuse Repositories and ReuseThe Realities
Thursday, 30 October
10:30-12:00
|
|
This session starts with a photo-essay on components, reuse, value,
and beauty, and concludes with a panel on libraries, repositories, and reuse.
Without a Name: A Reusable Component Repository
Robert Biddle,
Victoria University of Wellington, New Zealand,
robert@mcs.vuw.ac.nz Angela Martin,
Victoria University of Wellington, New Zealand,
angela@mcs.vuw.ac.nz James Noble,
Victoria University of Wellington, New Zealand,
kjx@mcs.vuw.ac.nz
The Story - this essay concerns components, reuse, value, and
beauty. All photographs were taken at No Name Building Recyclers, Wellington,
New Zealand, with the kind permission of the owners.
|
Panel: Reuse Repositories and ReuseThe Realities
Dave Thomas,
Bedarra Research Labs & Carleton University,
dave@bedarra.com Brian Barry,
Bedarra Corp & eclipse.org,
brian@bedarra.com Ivar Jacobson,
JacZone,
ivar@jaczone.com Linda Northrop,
Software Engineering Institute,
lmn@sei.cmu.edu Clemens Szyperski,
Microsoft Research,
cszypers@microsoft.com & others
This panel (part of the 2003 Onward! program) will discuss repositories,
and reuse. While there is so much hype and noise about components and model
repositories, metadata and reuse there is still very little understood about
how hard it is to design for reuse and to encourage systematic reuse both in
terms of culture, design, and supporting tools and technology. Like standards we have a plethora of component models
to choose from and yet the long predicted component market place has yet to occur or has it already happened?
Our educational colleagues outside of the our community are blindly following
our rhetoric to build eLearning repositories so Learning Objects can be snapped
together just like the OO folks do it! Similarly object zealots are arguing
for OO XML, OO CSS to facilitate reuse OO style.
Our panelists have participated in both the euphoric vision as well as the pragmatic realities of repositories reuse in practice.
The panel has been asked to discuss their future vision for reuse and repositories and in particular what key social, business
and technical enablers will facilitate significant reuse or render the matter irrelevant.
|
|