The topic of programming languages is an important and rapidly changing area of computer science. This course introduces students to the basic concepts and terminology used to describe programming languages. Instead of studying particular programming languages, the course focuses on the linguistics of programming languages, that is, on the common, unifying themes that are relevant to programming languages in general. The algorithmic, or procedural, programming languages are particularly emphasized. Examples are drawn from early and contemporary programming languages, including Fortran, Algol 60, PL/I, Algol 68, Pascal, C, C++, Eiffel, Ada and Java.
This course is not designed to meet the needs of the student who wishes to learn to program in a particular programming language. However, any student who completes this course should be able to learn any new programming language with relative ease.
Topics may include the following.
The prerequisites for this course are:
Professor |
Michael Wharton
CSE 2006 E-mail: [my first name]@cse.yorku.ca |
||
Lecture schedule | Monday, 4:00 PM - 5:30 PM Wednesday, 4:00 PM - 5:30 PM |
||
Location | Stedman Lecture Hall (SLH) C |
||
Text (required) |
Concepts of Programming Languages, Ninth Edition, by Robert W. Sebesta Please click here for additional information about the textbook. |
||
Evaluation | component | weight | |
5 exercise sets midterm test final examination |
10 % 30 % 60 % |
||
Grading system | "The letter-grade system is the fundamental system of assessment of performance in undergraduate programmes at York University." | ||
grade | value | interpretation | |
A+ A B+ B C+ C D+ D E F |
9 8 7 6 5 4 3 2 1 0 |
exceptional excellent very good good competent fairly competent passing marginally passing marginally failing failing |