This document provides an overview and syllabus for the CS350 Programming Language Design course taught by Dr. Amal Khalifa in Fall 2022. The course will survey language design issues, features of modern languages, and programming paradigms. Students will complete reading assignments, team projects, homework assignments, and module tests. The textbook is Concepts of Programming Languages by Robert Sebesta. The course will be delivered using a team-based learning approach.
This document provides an overview and syllabus for the CS350 Programming Language Design course taught by Dr. Amal Khalifa in Fall 2022. The course will survey language design issues, features of modern languages, and programming paradigms. Students will complete reading assignments, team projects, homework assignments, and module tests. The textbook is Concepts of Programming Languages by Robert Sebesta. The course will be delivered using a team-based learning approach.
This document provides an overview and syllabus for the CS350 Programming Language Design course taught by Dr. Amal Khalifa in Fall 2022. The course will survey language design issues, features of modern languages, and programming paradigms. Students will complete reading assignments, team projects, homework assignments, and module tests. The textbook is Concepts of Programming Languages by Robert Sebesta. The course will be delivered using a team-based learning approach.
WHY CS350? dr. Khalifa, Fall22 3 WHY CONCEPTS OF PROGRAMMING LANGUAGES?? Fosters more careful programming Opens new avenues of expression Facilitates learning a new programming language Helps in choosing the appropriate language Encourages the appreciation of implementation difficulties Enhances the ability to design new languages
More broadly, it is the study of human to
computer communication.
dr. Khalifa, Fall22 4
COURSE GOALS Survey of language design issues and their implications for translation and run-time support. Overview of modern programming languages features including abstract data and control structures, binding and scope rules, subprograms, parameter passing mechanisms, Exception Handling, as well as support for concurrency. Describe different paradigms of programming languages such as: Object-oriented, functional, and Logic programming languages.
dr. Khalifa, Fall22 5
TEXT BOOK Robert W. Sebesta, Concepts of Programming Languages (12th edition), Pearson Education (2008). ISBN 0-321-49362-1 E-book : check your RedShelf.
ASSESSMENT AND GRADING More deta ils to RAP : 25% follow!! Individual : 30% Team: 50% peer-eval: 20%
Team Projects : 25%
Homework Assignments : 30% A 90 – 100 Module Tests : 20% B 80 – 89 C 65 – 79 D 50 – 64 F Below 50
dr. Khalifa, Fall22 11
POLICIES Class attendance Stay at home in case you feel sick! Assigned seats QR code
Active engagement, share knowledge from which both peers and
instructor can learn. Assignments should be done individually 20% penalty for late assignments (up to 5 days past-due)
Missed exam regulations
Virtual office hours
dr. Khalifa, Fall22 12
Q&A DISCUSSION BOARD Use this forum to post any questions you may have regarding the course material, assignments, exams, etc. Expect a reply within 48 hrs. Always check discussions threads to avoid asking the same question. You can sign-up for notifications to be receive an email when a reply is posted.