Skip to content

Amrita-TIFAC-Cyber-Blockchain/2024_20CYS312_Principles_of_Programming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

20CYS312 - Principles of Programming Languages



Pre-requisite: 20CYS113 - Computer Programming and 19CSE201 - Advanced Programming

Course Instructor: Ramaguru R, Assistant Professor (Senior Grade), TIFAC-CORE in Cyber Security.

📚 Course Outcome

CO# CO Description
CO1 Understand and implement pure functional programs in Haskell
CO2 Understand and implement programs in Rust
CO3 Formulate abstractions with higher order procedures

⌚ Course Plan and Status

Lecture No. Topic CO No. of Hours
# Course and Class Introduction #
1 Programming Paradigms - Overview of various Programming Paradigms #
# Assignment - 1 CO1
2 Introduction to Functional Programming CO1
2 Programming with Haskell CO1
3 Haskell: GHCi interpreter CO1
# Practice Exercises - 1 CO1 Evaluate on next Lab
4 Haskell: functions and types CO1
# Quiz - 1 and Lab Evaluation - 1 CO1
5 Haskell: functional composition CO1
3 Haskell: GHCi interpreter CO1
6 Haskell: numbers, lists, tuples CO1
7 Haskell: type classes, pattern matching CO1
# Tutorial Exercises - 2 CO1 Evaluate on next Lab
8 Haskell: higher order functions: currying, lambdas, maps and filters folds, IO monad. CO3
# Quiz - 2 and Lab Evaluation - 2 CO1
# Assignment - 2 CO1
# Mid-Term Examination CO1, CO3
9 Introduction to Rust CO2
10 Rust: Data types, Operators, Decision Making, Loops CO2
11 Rust: Functions, Tuple and Array CO2
12 Rust: Ownership, Borrowing, Slices CO2
13 Rust: Structure, Modules CO2
14 Rust: Error Handling CO2
15 Rust: Package Manager CO2
# End-Semester Examination

Dates and Deadlines

Course Start 08 - Jan - 2024
Assignment - 1: Opens 09 - Jan - 2024
Assignment - 1: Submission 21 - Jan - 2024
Haskell Practice Exercise - 1: Opens 24 - Jan - 2024
Haskell Practice Exercise - 1: Submission 27 - Jan - 2024
Haskell Quiz - 1 16 - Feb - 2024
Haskell Lab Evaluation - 1 28 - Feb - 2024
Haskell Practice Exercise - 2: Opens 23 - Feb - 2024
Haskell Practice Exercise - 2: Submission 26 - Feb - 2024
Haskell Quiz - 2 13 - Mar - 2024
Haskell Lab Evaluation - 2 13 - Mar - 2024
Haskell Tutorial - 1: Opens 14 - Mar - 2024
Haskell Tutorial - 1: Submission 15 - Mar - 2024
Haskell Tutorial - 1: Opens 22 - Mar - 2024
Haskell Tutorial - 1: Submission 27 - Mar - 2024
Mid-Term Exam 24 - Apr - 2024
Assignment - 2: Opens 29 - Apr - 2024
Assignment - 2: Submission 11 - May - 2024
Rust Quiz - 3 11 - May - 2024
End Semester Exam 15 - May - 2024
Results Publication 19 - Jun - 2024

Haskell

Resources

Rust

Resources

About

20CYS312 - Principles of Programming Languages - 6th Sem - B.E. CSE(CYS) - ASC, CBE

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published