Welcome,
Guest
.
Login
.
Türkçe
NİNOVA
COURSES
HELP
ABOUT
Where Am I:
Ninova
/
Courses
/
Faculty of Computer and Informatics
/
BLG 458E
/
Course Informations
Return to Faculty
Home Page
Course Information
Course Weekly Lecture Plan
Course Evaluation Criteria
Course Resources
Course Information
Course Name
Turkish
Fonksiyonel Programlama
English
Functional Programming
Course Code
BLG 458E
Credit
Lecture
(hour/week)
Recitation
(hour/week)
Laboratory
(hour/week)
Semester
-
2
2
-
-
Course Language
English
Course Coordinator
Hayri Turgut Uyar
Course Objectives
Teaching students the functional programming paradigm.
Teaching students modern functional programming languages such as Haskell.
Improving the students' understanding of imperative programming constructs by contrasting them with functional concepts.
Teaching students the functional programming techniques that can also be beneficial in imperative programming languages.
Course Description
Programming paradigms and functional programming principles. Recursion. Algebraic data types. Pattern matching. Higher-order functions. Type classes. Functional data structures. Lazy evaluation. Monads.
Course Outcomes
Students learn the functional programming principles and understand their significance.
Students can develop small- to moderate-sized projects using a functional programming language.
Students can judge whether they would need to employ functional programming in a given project and choose the appropriate tools for achieving such a goal.
Students can apply functional programming techniques to improve their coding skills in imperative programming platforms.
Pre-requisite(s)
Data Structures
Required Facilities
Other
Textbook
"Haskell: The Craft of Functional Programming", Simon Thompson, Addison-Wesley, 2011, ISBN 9780201882957.
Other References
"Structure and Interpretation of Computer Programs", Harold Abelson, Gerald Jay Sussman, MIT Press, 1996, ISBN 9780262510875.
Courses
.
Help
.
About
Ninova is an ITU Office of Information Technologies Product. © 2025