The future of programming—are fundamental changes in computer science programs coming? (panel)

Abstract only Computer programming languages (and their dominance as the means of software development) have been one of the most high-profile topics in the 50-year history of computing --- reaching mature technology and achievements for language definition, translation, usage, analysis, pedagogical...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:SIGCSE 98: 29th SIGCSE: Computer Science Education Technical Symposium 1998-03, Vol.30 (1), p.370-371
Hauptverfasser: Hart, Hal, Caristi, Jim, Dewar, Robert, Gerhardt, Mark, Hamilton, Drew, Haynes, Christopher, Rebelsky, Sam
Format: Artikel
Sprache:eng
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Abstract only Computer programming languages (and their dominance as the means of software development) have been one of the most high-profile topics in the 50-year history of computing --- reaching mature technology and achievements for language definition, translation, usage, analysis, pedagogical approaches, etc. and in terms of their general impact on computing systems This reality has continuously driven the content of Computer Science curriculums to feature programming languages, their definition techniques, and their translation methods as the subject of many core courses, and their usage as a tool to carry out the teaching of the principles in most other courses. The objective of this panel is to, at just past the mid-point of the first century of computing, debate whether this pre-eminent role of programming languages will continue straightforwardly in the second half-century, if radically new styles of programming languages will emerge and dominate, or if programming languages will recede to minor importance compared to alternate software-development paradigms in both usage and teaching impact. And, for each of those propositions, to assess the impacts for change in typical CS curriculums.For most software domains today, so-called 3rd-generation programming languages (e.g., Ada, Scheme, Pascal, C/C++, Modula 2, COBOL, FORTRAN, and recently, Java) enjoy considerable portability between computers and are now widely accepted. In these "procedural" languages programmers still are responsible for designing and coding the software architectures, algorithms, logic, and most data structures to solve the problems. For some well-understood domains (e.g., report writing, inventory control, and some financial programming), 4th-generation languages (4GLs) or "non-procedural" languages are established which essentially allow users to specify "requirements" instead of software solutions, with 4GL compilers that generate code satisfying the requirements; the number of domains for which 4GLs are appropriate increases steadily as domain understanding increases. 5th-generation or automatic programming approaches have been a research topic for many years, with some promising results demonstrated in constrained domains, although the distinction from a 4GL to a 5th-generation language (5GL) is less clear than the earlier transitions. Technologies for formally representing and translating programming languages, and the concepts and methods for teaching their effective
ISSN:0097-8418
DOI:10.1145/274790.274337