Newsletter Downloads
SIGPLAN programming language curriculum workshop: Discussion Summaries and recommendations
- Eric Allen,
- Ras Bodik,
- Kim Bruce,
- Kathleen Fisher,
- Stephen Freund,
- Robert Harper,
- Chandra Krintz,
- Shriram Krishnamurthi,
- Jim Larus,
- Doug Lea,
- Gary Leavens,
- Lori Pollock,
- Stuart Reges,
- Martin Rinard,
- Mark Sheldon,
- Franklyn Turbak,
- Mitchell Wand,
- Mark W. Bailey
Injecting programming language concepts throughout the curriculum: an inclusive strategy
As research in programming language design,implementation,and application advances,we must regu- larly revisit the undergraduate curriculum to ensure course content advances similarly.However,no matter how diligent our efforts,the undergraduate ...
Programming languages in a liberal arts education
Liberal arts curricula emphasize breadth of a student's educational experience, critical reasoning, and intellectual discourse to a greater degree than pre-professional training or engineering programs. This substantially impacts how the topic of ...
Programming languages as part of core computer science
While the programming languages course played a key role in Curricula '68, '78, and '91, Curriculum 2001 replaced most of the content in programming languages with sections on learning to program. We argue that the need for a programming languages ...
High-level problems in teaching undergraduate programming languages
This paper discusses several problems in teaching programming languages. A language tends to indoctrinate its users and desensitize us to its problems and limitations. In addition, many language issues don't arise until programs reach a certain scale, ...
Why teach programming languages in this day and age and how to go about it
The question is not whether a computing curriculum should include a rigorous course on programming languages, but which topics make up the minimum that we wish every student to understand, and how we should teach these topics.
We need more than one: why students need a sophisticated understanding of programming languages
Over the course of their careers, students will need to master a number of diverse programming languages because different languages are best suited to different tasks and because the set of "popular" languages evolves over time. In addition, sometimes ...
Implementing domain-specific languages as the foundation of an honors intro CS course
This position paper describes an honors introductory Computer Science course focused on designing and implementing domain-specific programming languages. The course presents programming language design as a fundamental tool for software engineering. ...
Addressing the disconnect between the good and the popular
For several decades universities have taught programming languages as a fundamental part of their un-dergraduate curriculum. These courses cover the core topics used in the design of good programming languages. However, widely used commercial languages ...
Teaching programming languages in a post-linnaean age
Programming language "paradigms" are a moribund and tedious legacy of a bygone age. Modern language designers pay them no respect, so why do our courses slavishly adhere to them? This paper argues that we should abandon this method of teaching languages,...
Languages and performance engineering: method, instrumentation, and pedagogy
Programs encounter increasingly complex and fragile mappings to computing platforms, resulting in performance characteristics that are often mysterious to students, practitioners, and even researchers. We discuss some steps toward an experimental ...
Use concurrent programming models to motivate teaching of programming languages
Undergraduate computer science students typically have only a limited understanding of their favorite languages and no inkling of other programming paradigms. Yet modern programmers typically work with several languages, and the availability of cheap ...
Rethinking pedagogy for teaching PL with more than PL concepts in mind
Individual department goals drive undergraduate computer science educators to teach with varying priorities on preparing students for continuing to graduate school or embarking on a career that leverages their education immediately after college. ...
Marketing the programming languages course
Programming languages as a required course is disappearing from undergraduate computer science programs. This is not surprising given that the course often proves to be challenging for faculty to teach and unpopular among students. The author argues ...
Some thoughts on teaching programming and programming languages
It is argued that the teaching of programming is central to the education of skilled computer professionals, that the teaching of programming languages is central to the teaching of programming. that these topics must include the specification, ...
Programming language concepts for software developers
This note describes and motivates our current plans for an undergraduate course on programming language concepts for software development students. We describe the competences we expect students to acquire as well as the topics covered by the course. We ...
An aspect-oriented approach to the undergraduate programming language curriculum
Three key forces are shaping the modern Computer Science (CS) curriculum: (1) new topics/courses are squeezing out existing ones; (2) a focus on "big picture" and interdisciplinary aspects of CS is leading to curricula in which the traditional core ...
Programming languages: fundamental concepts for expanding and disciplining the mind
In this white paper, we propose a list of essential concepts of programming languages, and discuss the techniques we have used to teach these concepts.