Reno 2010
Working Group on Language Design
The first activity of the group was a lunch meeting at SPLASH 2010 to discuss the organization of the
zeroth meeting.
- Date: Tuesday, 19 October, 2010 (?)
Attending
- Jonathan Edwards
- Andrew Black
- James Noble
- Dave Ungar
- Crista Lopes
- Eelco Visser
- ...
Manifesto
- From: Jonathan Edwards
- Date: Aug 15, 2010 7:32 AM
- Subject: Working Group on Programming Language Design
A few of us feel that there is currently no good forum for discussing programming language design issues; researchers interested in language design are isolated and lack a place to exchange ideas and criticism. Computer science conferences no longer serve this role, because they have become fixated on rigorous evaluation. There is nothing wrong with rigorous evaluation of things that can be so evaluated, but language design ideas, particularly in their formative stages where feedback is most crucial � and when there may be neither implementation nor experience with their use � cannot be so evaluated. Indeed, many landmark papers on language design could not be published today: Liskov on data abstraction, or Parnas on modules, or Dijkstra on goto. These papers consisted of reasoned arguments for the power of a new idea. We need a venue where such ideas and arguments are still welcome and where they can be refined by constructive criticism.
Ivan Chermayeff wrote "Design is directed toward human beings. To design is to solve human problems by identifying them and executing the best solution." Programming languages are not just for instructing computers, they are a medium for expressing software designs and communicating such designs to other programmers. Thus, an understanding of the human element is a vital part of good language design. As a result, programming language design is not just mathematics, science, or engineering, although it involves all of these. Other fields, like Architecture, recognize Design (with a capital D) as a distinct practice with its own methodologies. Steve Jobs wrote: "In most people's vocabularies, design means veneer. It's interior decorating. It's the fabric of the curtains or the sofa. But to me, nothing could be further from the meaning of design. Design is the fundamental soul of a human-made creation." Good design finds a balance between conflicting goals that are qualitative in nature. It requires insight, experience, and judgment; in sum: good taste. We need to affirm what really matters about programming languages, both to ourselves and the wider community.
For these reasons, the venue that we wish to develop must balance the benefits of openness and diversity against the need to maintain a high-quality membership and high-value conversations. A proven structure is that of an IFIP working group, with a slowly evolving permanent membership and a number of invited visitors, explicitly managed to maintain a high quality of discourse. Indeed, we have asked a number of WG members to suggest improvements to this formula, and they could not.
For these reasons we are considering proposing to IFIP Technical Committee 2 (Software: Theory and Practice) the creation of a new working group on Programming Language design. We would like to propose you as one of the initial members of this group.
Our first cut at the aims and scope of this incipient group are as follows.
AIMS
To explore and evaluate new ideas in the field of programming language design.
SCOPE
- the exploration of programming paradigms and major language features, both established and novel
- the design of notations for such paradigms and features;
- the design of programming environments that support the use of such notations;
- the investigation of software systems that implement such program notations;
- the evaluation of the above paradigms, designs and implementations, and
- the promulgation of "design thinking" among researchers, practitioners, students and teachers.
IFIP WGs typically meet for a week once every 11 to 13 months; there are no papers or proceedings, although papers often develop later from the discussions and presentations at the meeting. Please let us know whether or not you are interested in being part of such a group.
Andrew P. Black <black@cs.pdx.edu>