East Carolina University
Department of Computer Science

CSCI 3675
Organization of Programming Language
Standard Syllabus


3 credits Prepared by Karl Abrahamson, May 2018

Catalog entry

P: CSCI 2540 or CSCI 3200. Applied course in programming language constructs. Emphasis on run-time behavior of programs. Provides appropriate background for advanced-level courses involving formal and theoretical aspects of programming languages and compilation process.

Course summary

Programming languages are the notation in which programmers express their creations. It is said that natural language influences how people think. Whether or not that is true, it is certainly the case that programming languages strongly influence how programmers and software developers think.

This course explores different kinds of programming languages: their philosophies, components, structure, advantages and disadvantages. It also covers issues such as specification of syntax and semantics of languages, foundational issues, lambda calculus, and how programming languages are implemented.

The student should come away with an appreciation for different forms of programming languages, and should be able to explain when and why they are useful. The student should be able to apply different programming styles to solving problems, regardless of the language used. The student should have sufficient background to understand programming language documentation, and to learn new languages that follow particular styles.

Course topics

Student learning outcomes

Textbook

Programming Language Pragmatics, 2015, by Michael Scott

Grading

Grading is based on five homework assignments, a comprehensive final examination, six quizzes, a group presentation, and class participation. The homework will count a total of 45%, the final exam 40%, quizzes 5%, presentation 5% and calss participation 5%.

Grade meanings

Grade Meaning
A  Achievement substantially exceeds basic course expectations
A−  
B+  
B Achievement exceeds basic course expectations
B−  
C+  
C Achievement adequately meets basic course expectations
C−  
D+  
D Achievement falls below basic course expectations
F Failure – achievement does not justify credit for course