CS 315
Programming Languages

Description: Language evaluation criteria. Describing syntax and semantics. Tools for constructing lexical and syntactical analyzers. Names, bindings, type checking, and scopes. Data types. Expressions and the assignment statement. Statement-level control structures. Subprograms. Abstract data types. Concurrency. Exception handling. Functional programming languages. Logic programming languages. Credit units: 3, Prerequisite: CS 201.

Spring 2024 Semester:

Text Book: Robert W. Sebesta, Concepts of Programming Languages, Global Edition, 12/E, Pearson. Link to the publisher

Official Sylabus of the course: Syllabus Details

Section: 01
Instructor: H. Altay Güvenir (Room: EA-414)
Quizzes

Teaching Assistant: Mehmet Can Şakiroğlu (can.sakiroglu@bilkent.edu.tr).

Projects: Teams

  1. Project 1 Due: Feb. 25, 2024
  2. Project 2 Due: Mar. 10, 2024

Homeworks:

  1. Homework 1 Due: April 18, 2024
  2. Homework 2 Due: May 6, 2024

Midterm Exam: March 30, 2024 (Saturday); 13:30 - 15:30; Rooms for Students: Rooms: EA-Z01, EA-Z03. Open-book, open-notes.

Final Exam: TBA. Rooms: EA-Z01, EA-Z03. Open-book, open-notes.

Grading Policy:

   Quizzes: 10%
   Homeworks: 10%
   Projects: 20%
   Midterm exam: 20%
   Final exam: 40%

Grades: SRS

There will be only one makeup exam for the midterm and one makeup exam for the final exam, which can be taken only by those who have missed the corresponding exam due to officially reported health problems. No makeup examinations will be given for quizzes.

The Minimum Requirement to be able to take the Final Exam:

In order to be able take the final exam a student must earn at least
20% on the midterm exam, AND
20% on the project, AND
20% on the average of homework assignments.

Students who do not satisfy this condition will receive an FZ grade.

The Minimum equirement to pass the course:

Any student who takes the final exam, but earns less than 20%, will get F. Any student who is allowed to take the final exam but did not take it will get FX.

On-line material: