April 6, 1995 Letter from SIGCSE Officers
to the College Board and
to the Educational Testing Service


April 6, 1995

Donald Stewart, President
The College Board
45 Columbus Avenue
New York, New York 10023-6992

Wade Curry, Director
The Advanced Placement Program
The College Board
45 Columbus Avenue
New York, New York 10023-6992

Dear Mr. Stewart and Mr. Curry:

As elected officers of the Special Interest Group on Computer Science Education (SIGCSE), we are writing to you to express our concern about the process that has led to the recent decision by the Advanced Placement Computer Science (APCS) Test Development Committee to change from Pascal to C++ as the language to be used on the APCS Examination.

Some Historical Background

When the APCS exam first appeared in 1984, there was considerable agreement throughout the computer science community about the content of the CS syllabus for the first two semesters (CS1 and CS2). National task forces, sponsored by the Education Board of the Association for Computing Machinery (ACM), published national recommendations for CS1 and CS2 in 1984 and 1985. These groups worked in consultation with the APCS Test Development Committee, and the APCS curriculum paralleled the CS1/CS2 recommendations.

Further, after much discussion through the early 1980's, computer science educators throughout the country reached a remarkable consensus on the use of Pascal as the appropriate language. While some other languages were used in introductory courses at the college level at some colleges, Pascal was clearly the language of choice at the great majority of colleges for CS1/CS2.

While this consensus continued through the late 1980's, the early 1990's brought a significant increase in experimentation within these courses. Many colleges and universities were searching for new approaches, and the content of beginning courses varied considerably. For example, the national recommendations published by ACM and IEEE in Curricula 1991 identified appropriate topics for CS majors, but these were packaged in a dozen different sets of courses. While some themes were common for CS1 and CS2 in these curricula, the introductory courses outlined in Curricula 1991 show considerable diversity.

Similarly, colleges and universities are showing much more diversity in their choices of programming languages for the introductory CS courses. At the SIGCSE Technical Symposia in the last few years, for example, presentations have discussed many languages for CS1 and CS2, including Pascal, C++, Ada, ML, Miranda, and Scheme. In these discussions, it seems clear that Pascal is becoming less popular, but it is premature to say that another language has taken over as the clear language of choice.

AP's Change of Language

This letter expresses the SIGCSE Officers' concern that the announced change to C++ has not seemed to include the same level of dialog with CS educators that was part of the discussion in the 1980's. While the APCS Test Development Committee may have conducted some informal surveys, the change to C++ did not involve the same level of public dialog seen earlier. Several examples may illustrate the closed nature of this decision.

Impact of AP's Change to C++

From our perspective as SIGCSE officers, the decision to change to C++ has significant consequences nationally at both the high school and college level.

At the high school level, APCS provides the only national guidelines for curricula beyond general computing literacy. Secondary schools interested in expanding their curricula or looking for direction turn to AP as the only recognized, published recommendations available for high schools. As a result, schools invest in hardware and software, teachers learn and prepare materials. With the scarcity of education dollars, schools may buy textbooks and compilers only with the assurance that ``Pascal will remain an acceptable language, ...''

As new C++ compilers often require capabilities not present on older machines, a change to C++ may require schools to purchase new hardware as well as software. Even schools with adequate machinery will need to purchase all new compilers and textbooks. Teachers of APCS also will need to retrain and to invest considerable time in a completely new set of handouts. It is reasonable to expect that such costs will be beyond the reach of many school districts.

At the college and university level, the change to C++ will make a dramatic difference in the nature of the background of their students. Further, since AP students often are among the best of the incoming students, the change in programming language is likely to affect courses at several introductory levels. CS departments seek to attract the best students available, and every department must rethink its beginning curriculum if APCS students enter knowing a different language.

With the extensive experimentations already in progress in CS courses, a change in APCS to C++ compounds difficulties already encountered as colleges and universities seek to rethink their curricula. A change to a single language C++ without national discussion seems to be counter to the diversity of approaches currently under discussion.

A Modest Proposal

As SIGCSE Officers, we are concerned that the contemplated change by APCS to C++ has strong national implications, but has not had broad national discussion. Further, this change is occurring at a time of great curricular experimentation, with rather little consensus. With this in mind, we ask the College Board to consider the following proposal.

  1. Any decision to change language in APCS (and certainly any dropping of Pascal) should be delayed for two years, until 1997 (with the implementation of any such decision extending well beyond that time).

  2. During this time, the APCS Test Development Committee should hold open sessions to discuss draft proposals at national meetings, such as SIGCSE and NECC, and at regional meetings, such as those sponsored by the Consortium for Computing in Small Colleges (CCSC). Additional feedback might be obtained from participants in regional AP workshops, sponsored by the College Board. Drarts also should be circulated to CS department chairs and heads of undergraduate CS programs.

Since the College Board seeks to promote a national dialog between high schools and colleges, we hope the AP program will encourage such open discussion concerning the selection of one or more languages for introductory computer science. A reconsideration of the imminent change to C++ would encourage such discussion and provide an opportunity to move the country forward in its experimentation and dialog concerning introductory computer science.

Thank you for your consideration of this request.

Sincerely yours,

Henry M. Walker, SIGCSE Secretary/Treasurer

with the support and approval of the SIGCSE Board
Lillian N. Cassel, SIGCSE Chair
G. Michael Schneider, SIGCSE Vice-Chair
Janet Hartman, Board Member
J. Paul Myers, Jr., Board Member
Margaret Reek, Board Member

cc: Professor Susan B. Horwitz, University of Wisconsin, Madison
SIGCSE Membership


created July 31, 1995
last revised July 31, 1995

Henry M. Walker