Principles of Programming Languages Course Syllabus, Lecture notes of Operating Systems

A course syllabus for Principles of Programming Languages. It describes the importance of programming languages and their relationship with computer systems. The course aims to teach students the salient features of programming languages and the essence of defining concepts of programming languages. The syllabus includes course structure, learning outcomes, time commitment per module, and grade breakdown. The course is a prerequisite for ASU's Master of Computer Science degree.

Typology: Lecture notes

2021/2022

Uploaded on 05/11/2023

anamika
anamika ๐Ÿ‡บ๐Ÿ‡ธ

4.7

(16)

254 documents

1 / 3

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Principles of Programming Languages Prerequisite (Non-credit version)
Course Syllabus
Principles of Programming Languages
Course Description
Programming languages are one of the most important and direct tools for the construction of
a computer system: in a modern computer different languages are routinely used for different
levels of abstraction. Programming language is important because it defines the relationship,
semantics and grammar which allows the programmers to effectively communicate with the
machines that they program.
Learning Outcomes
By the end of this short course, students at a broad level will be able to:
Objective 1: Understand the salient features in the landscape of programming languages
Objective 2: Understand the essence of defining concepts of programming languages, so to
allow critical choice about the level of abstraction
Course Structure
After reviewing the course materials for these objectives, you will have the opportunity to take
ungraded practice quizzes. This is to make sure you have mastered the learning objectives.
Once you have mastered all of the course learning objectives, you will be prepared to take the
Final Exam. After passing the final exam with an 70% or better, you would have completed
CSE 340: Operating Systems prerequisite for ASU's Master of Computer Science degree.
Course Materials
You do not need to purchase materials for this course.
Time Commitment Per Module
โ— Module 1 (4 hours)
โ— Module 2 (5 hours)
โ— Module 3 (4 hours)
โ— Module 4 (6 hours)
โ— Module 5 (8 hours)
โ— 120 minutes for Final Exam
pf3

Partial preview of the text

Download Principles of Programming Languages Course Syllabus and more Lecture notes Operating Systems in PDF only on Docsity!

Course Syllabus

Principles of Programming Languages

Course Description

Programming languages are one of the most important and direct tools for the construction of a computer system: in a modern computer different languages are routinely used for different levels of abstraction. Programming language is important because it defines the relationship, semantics and grammar which allows the programmers to effectively communicate with the machines that they program.

Learning Outcomes

By the end of this short course, students at a broad level will be able to: Objective 1: Understand the salient features in the landscape of programming languages Objective 2: Understand the essence of defining concepts of programming languages, so to allow critical choice about the level of abstraction Course Structure After reviewing the course materials for these objectives, you will have the opportunity to take ungraded practice quizzes. This is to make sure you have mastered the learning objectives. Once you have mastered all of the course learning objectives, you will be prepared to take the Final Exam. After passing the final exam with an 7 0% or better, you would have completed CSE 340: Operating Systems prerequisite for ASU's Master of Computer Science degree.

Course Materials

You do not need to purchase materials for this course.

Time Commitment Per Module

โ— Module 1 ( 4 hours) โ— Module 2 ( 5 hours) โ— Module 3 ( 4 hours) โ— Module 4 ( 6 hours) โ— Module 5 ( 8 hours) โ— 12 0 minutes for Final Exam

Time estimates are based on content provided in the course; additional readings outside the course have not been factored in these time estimates.

Course Grade Breakdown

Course Work Quantity Percentage of Grade Final exam 1 100%

Grade Scale

You will need to pass the final exam with an 70% or better, and successfully pass proctoring requirements for the final exam.

Module 1: Regular Expressions

1.0: Overview 1.1: Lexical Analysis: Language and Syntax 1.2: Lexical Analysis: Regular Expressions 1.3: Lexical Analysis: Concatenation 1.4: Lexical Analysis: Kleene Star 1.5: Lexical Analysis: Regular Expression Examples 1.6: Lexical Analysis: Longest Matching Prefix Rule 1.7: Practice Quiz

Module 2: Syntax and Analysis Parsing

2.0: Overview 2.1: Introduction to Syntax Analysis 2.2: Context Free Grammars 2.3: Leftmost & Rightmost Derivations 2.4: Parse Tree 2.5: Ambiguous Grammar 2.6: Efficient Parsing 2.7: First Sets 2.7.1: Example โ€“ First Sets 2.8: Follow Sets 2.8.1: Example โ€“ Follow Sets 2.9: Conditions for Predictive Recursive Descent Parser 2.10: Writing a Predictive Descent Parser 2.11: Practice Quiz