defter*
defter / katalog / CS 315

CS 315 Programming Languages

CS 315 is about understanding what's actually happening when you write code in any language, how syntax gets parsed, how names bind to values, how types are checked, and what design tradeoffs separate C from Haskell from Prolog. You'll build small analyzers with Lex/Yacc, do projects exploring functional and logic paradigms, and grind through quizzes and open-book exams on the Sebesta textbook. After CS 202-level data structures, this is where you stop treating your compiler as magic and start seeing languages as designed artifacts, which pays off later in compilers, PL theory, and any time you have to learn a new language quickly.

Kredi 3 ECTS 5 Fakülte Mühendislik Fakültesi Bölüm Bilgisayar Mühendisliği Ön koşul CS 201 Koordinatör H. Altay Güvenir

CS 315 zor mu?

Son 34 dönemde dersin ortalaması 2,35 (3.661 öğrencinin notu, 4,00 üzerinden), yani sınıf ortalaması C+ civarında. Zorluk hocaya ve şubeye göre değişir; ölçülebilir olan bu sayı. Diğer derslerle karşılaştır →

CS 315 dersinde kaç midterm var, ağırlıkları ne?

İzlencede 1 midterm var, ağırlığı %20. Final %40. Kalan %40 dersin öteki kalemlerinde. Tam dağılım aşağıda.

CS 315 dersinin ön koşulu var mı?

Evet. Bilkent kataloğuna göre ön koşulu: CS 201.

CS 315 bu dönem kim veriyor?

2026-2027 Güz döneminde 1 şube açık, dersi Halil Altay Güvenir veriyor. Şube saatleri ve kontenjanlar aşağıda.

CS 315 dersinde hangi kitap okunuyor?

İzlencede zorunlu kitap: Concepts of Programming Languages, Robert W. Sebesta, 12th Edition, Pearson.

CS 315 kaç kredi?

3 Bilkent kredisi, 5 AKTS.

Haftalık müfredat 14 hafta

Hafta 114–20 Eyl
Giriş kavramları: syntax ve semantics
Preliminaries, syntax, semantics
preliminariessyntaxsemantics
Hafta 221–27 Eyl
Syntax tanımlama: regular expression ve CFG
Describing Syntax (Regular Expressions & Context Free Grammars)
syntaxregular expressioncontext free grammar
Hafta 328 Eyl – 4 Eki
Lexical analysis ve parsing
Lexical Analysis and Parsing
lexical analysisparsing
Hafta 45–11 Eki
Parser generator araçları: Lex ve Yacc
Parser generator tools (Lex & Yacc)
parser generatorLexYacc
Hafta 512–18 Eki
İsimler, binding ve scope kavramları
Names, Bindings, and Scopes
namesbindingsscopes
Hafta 619–25 Eki
İsimler, binding ve scope kavramları
Names, Bindings, and Scopes
namesbindingsscopes
Hafta 726 Eki – 1 Kas
Veri tipleri
Data Types
data typeveri tipi
Hafta 82–8 Kas
Veri tipleri
Data Types
data typeveri tipi
Hafta 99–15 Kas
İfadeler, Atama ve Control Structures
Expressions and Assignment Statement, Statement-Level Control Structures
expressionassignment statementstatement-level control structures
Hafta 1016–22 Kas
Altprogramlar
Subprograms
subprogramaltprogram
Hafta 1123–29 Kas
Subprogram'ların implementation'ı
Implementation of Subprograms
subprogramsimplementation
Hafta 1230 Kas – 6 Ara
Concurrency, Exception ve Event Handling; Functional Programming
Concurrency, Exception Handling, and Event Handling; Functional programming
concurrencyexception handlingevent handlingfunctional programming
Hafta 137–13 Ara
Functional programming paradigması
Functional programming
functional programming
Hafta 1414–20 Ara
Logic programming paradigması
Logic programming
logic programming

Değerlendirme 100% · 6 adım

10%
10%
10%
10%
20%
40%
Quiz Quizzes 10%
Project Project1, Project2 20%
Homework Homeworks 10%
Midterm: Open-Book Midterm 20%
Final: Open-book Final 40%
en büyük tek kalem %40 · sınav ağırlığı %70 · 34 dönem ortalaması 2.35 (3661 öğrenci) nasıl hesaplanıyor
Notunu hesapla
KalemAğırlık Notun (100 üzerinden)
Quizzes%10
Project1%10
Project2%10
Homeworks%10
Midterm%20
Final%40
Bildiğin notları gir; girmediklerin hesaba katılmaz.

Ağırlıklar CS 315 izlencesinden. Hocanın bu dönemki dağılımı farklı olabilir; bağlayıcı olan ders izlencesidir. Harf notu sınırlarını hoca belirliyor, o yüzden hedefi sen giriyorsun. İzlencede FZ şartı var, sayfanın sonundaki kutuda.

Önerilen kaynaklar 1 kitap

📕
Zorunlu
Concepts of Programming Languages, Robert W. Sebesta, 12th Edition, Pearson

Bu dersi alınca · 7 öğrenme çıktısı

Bilkent'in resmî syllabus'ünden. Sağdaki etiket o çıktının hangi değerlendirmeyle ölçüldüğünü söylüyor.

🤖 GenAI politikası

Students are encouraged to use any technology, including generative artificial intelligence tools, for preparing the projects and homework assignments.

Ders notları · henüz yok

CS 315 için defter ekibi henüz not yazmadı.

İlk dosyayı sen atarsan: not, slayt, geçmiş sınav, çözüm, cheat-sheet, ne varsa. defter ekibi öğrenci paylaşımlarından bu dersin notlarını yazar. Drive linki / PDF / ZIP, hepsi olur.

← katalog

Geçmiş GPA dağılımı 34 dönem · ort. 2.35

DönemDers ort.
2025-2026 Spring 2.93 1 şube · 15 öğr
2025-2026 Fall 3.01 1 şube · 20 öğr
2024-2025 Spring 2.65 1 şube · 79 öğr
2024-2025 Fall 2.62 3 şube · 135 öğr
2023-2024 Spring 2.63 1 şube · 52 öğr
2023-2024 Fall 2.23 3 şube · 172 öğr
2022-2023 Spring 2.23 1 şube · 60 öğr
2022-2023 Fall 2.66 3 şube · 143 öğr
2021-2022 Spring 2.47 1 şube · 62 öğr
2021-2022 Fall 2.53 3 şube · 167 öğr

Dersin dönem ortalaması, o dönemin bütün şubeleri birlikte. Kaynak STARS'ın ders değerlendirme raporu. Rapor yalnız kampüs ağından ya da Bilkent VPN ile açılıyor: CS 315 raporu · Bilkent VPN bilgisi. Öğrenci anket cevaplarını defter'de tutmuyoruz. Tüm derslerin ortalamaları →

Bu dönem · 2026-2027 Güz · 1 şube · 35 kontenjan · 13 boş

haftada 3 saat ders

Haftalık ızgarada 4 saat görünüyor, kayıt sistemi dersi 3 saat yazıyor. Aradaki 1 saat yedek saat: Bilkent programlarında derse genelde bir fazla saat ayrılır ve çoğu zaman kullanılmaz. Hangisinin düşeceği dönem başlayınca belli olur.

1
Halil Altay Güvenir
Pzt15:30–17:20EB-103Per10:30–12:20EB-103
13
boş / 35
▾ 22 doldu · 21 gün
Düzensiz açılıyorSon yıllarda 38 güz, 14 bahar dönemi. Belirli bir düzeni yok, açıldığında almak mantıklı olabilir.

⚠️ FZ engelleyen şartlar

At least 20% on the midterm exam, AND 20% on the project, AND 20% on the average of homework assignments.

Hocalar 1 bu dönem · 9 geçmiş

Bu dönem (2026-2027 Fall) · 1 section
Halil Altay Güvenir
Geçmişte ders veren (9 kişi)
H. Altay Güvenir, Aynur Dayanık, Ertuğrul Kartal Tabak, Karani Kardaş, Buğra Gedik, Ramazan Gökberk Cinbiş, Abdullah Ercüment Çiçek, Pınar Duygulu Şahin, Uluç Saranlı

Bu ders 14 programın seçmeli havuzunda.

Basic Engineering Elective Elektrik-Elektronik Mühendisliği · havuzda 24 ders Technical Elective Bilgisayar Mühendisliği · havuzda 85 ders Technical Elective Fizik · havuzda 228 ders

ve 11 program daha.

Havuz listesi bölümün QME müfredatından; en küçük havuzlar önce yazılıyor, çünkü büyük "serbest seçmeli" havuzunda olmak dersi anlatmıyor. Seçmeli havuzunda olmak o dersi alabileceğin anlamına gelmez: ön koşul ve kontenjan ayrıca geçerli.

Bunu alınca açılanlar · 2 ders CS 315'i ön koşul sayıyor

Aynı koddan diğer dersler · katalogda 78 CS dersi · CS nedir?