COE4167930 - Principles of Programming Languages
Syllabus
Lectures
Assignments
Labs
Lectures
Week
Topic(s)
Slide(s)
Additional Resources
Week I
29.09
Chapter 1 - Preliminaries
Ch 01:
ppt
|
pdf
Programming Languages
- Languages in GitHub
-
https://madnight.github.io/githut/
-
GitHut: A small place to Discover Languages in GitHut
- Tiobe Index :
https://www.tiobe.com/tiobe-index
/
-
PYPL PopularitY of Programming Language
-
The 7 Most In-Demand Programming Languages
-
Stackoverflow Developer Survey Results
-
The best programming languages to learn in 2022
Week II
06.10
Chapter 2: Evolution
Ch 02:
ppt
|
pdf
- Bubble sort in different languages
(
http://www.rosettacode.org/wiki/Bubble_Sort
)
Week III
13.10
Chapter 3: Syntax and Semantics
Ch 03:
ppt
|
pdf
-
https://en.wikipedia.org/wiki/Syntax_(programming_languages
)
-
https://en.wikipedia.org/wiki/Semantics_(computer_science
)
-
https://en.wikibooks.org/wiki/Introduction_to_Programming_Languages/Grammars
-
https://medium.com/@mikhail.barash.mikbar/grammars-for-programming-languages-fae3a72a22c6
-
https://docs.oracle.com/javase/specs/jls/se7/html/jls-2.html
-
https://learn.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference
-
https://download.microsoft.com/download/D/2/4/D240EBF6-A9BA-4E4F-A63F-AEB6DA0B921C/Regular%20expressions%20quick%20reference.pdf
Week IV
20.10
Chapter 4: Lexical and Syntax Analysis
Ch 04:
ppt
|
pdf
Regular Expression Tutorials
- Regex Tutorial (
html
)
- Regular Expressions Basics! (
html
)
Lex & Yacc (
html
)
Parser Generators (
html
)
Getting Started With Antlr (
html
)
Week V
27.10
Chapter 5: Names, Bindings, and Scopes
Ch 05:
ppt
|
pdf
-
https://www.tutorialspoint.com/what-is-binding-and-binding-time-in-compiler-design
-
https://en.wikipedia.org/wiki/Scope_(computer_science
)
-
https://gkonat.github.io/assets/publication/declarative_name_binding_and_scope_rules-sle12.pdf
-
https://en.wikibooks.org/wiki/Introduction_to_Programming_Languages/Binding#:~:text=Binding%20time%20is%20the%20moment,defined%20at%20language%20design%20time
.
-
Week VI
03.11
Chapter 6: Data Types
Ch 06:
ppt
|
pdf
-
https://en.wikipedia.org/wiki/Data_type
-
https://towardsdatascience.com/introduction-to-data-types-and-type-systems-in-programming-3e8aec6da7f2
-
https://www.tutorialspoint.com/computer_programming/computer_programming_data_types.htm
-
https://www.w3schools.in/c-programming/data-types
Week VII
Ch6 continued + Presentations
Week VIII
Midterm Week
Week IX
24.11
Chapter 7: Expressions and Assignment Statements
Ch 07:
ppt
|
pdf
-
https://en.wikipedia.org/wiki/Assignment_(computer_science
)
-
https://en.wikipedia.org/wiki/Expression_(computer_science
)
-
https://docs.oracle.com/database/121/LNPLS/expression.htm#LNPLS01319
Week X
1.12
Chapter 8: Control Structures
Ch 08:
ppt
|
pdf
Week XI
08.12
Chapter 9: Subprograms
Ch 09 :
ppt
|
pdf
Week XII
15.12
Chapter 10 : Implementing Subprograms
Ch 10 :
ppt
|
pdf
Week XIII
22.12
Chapter 11: Abstract Data Types and Encapsulation Concepts
Ch 11 :
ppt
|
pdf
Chapter 12: Support for Object-Oriented Programming
Ch 12 :
ppt
|
pdf
Week XIV
29.12
Chapter 13: Concurrency
Chapter 14: Exception Handling and Event Handling
Ch 13 :
ppt
|
pdf
Ch 14 :
ppt
|
pdf
Grades
- Grades (html)