Functional Programming

  • Computer Science |

Description

The purpose of this course is to introduce the theory and practice of functional programming (FP). The characteristic feature of FP is the emphasis on computation as evaluation. The traditional distinction between program and data characteristic of imperative programming (IP) is replaced by an emphasis on classifying expressions by types that specify their applicative behavior. Types include familiar (fixed and arbitrary precision) numeric types, tuples and records (structs), classified values (objects), inductive types such as trees, functions with specified inputs and outputs, and commands such as input and output. Well-typed expressions are evaluated to produce values, in a manner that is guaranteed to be type- safe. Because functional programs do not cause side-effects we can take advantage of simple mathematical principles in reasoning about applicative behavior and analyzing the runtime properties of programs. such as computer graphics, artificial intelligence, digital video and audio fundamentals with emphasis on practical tools and techniques used in computer games industry

Program

Bachelor of Computer Science - 132 CRs

Objectives

  • - Understand basic functional programming techniques.
    - Design programs using types.
    - Develop programming mathematical techniques for verification and analysis.
    - Use of abstract types and modules to structure code.
    - Exploit parallelism in applications

Textbook

Thompson S., Haskll: The Craft of Functional Programming, Addison-Wesley

Course Content

content serial Description
1Introducing functional programming
2Basic types and definitions
3Data types, tuples and lists
4Programming with lists
5I/O in Haskell
6Reasoning about programs
7Generalization: patterns of computation
8Higher-order functions
9Overloading, type classes and type checking
10Algebraic types
11Abstract data types
12Lazy programming
14Programming with monads
14Domain-Specific Languages
15Revision

Markets and Career

  • Generation, transmission, distribution and utilization of electrical power for public and private sectors to secure both continuous and emergency demands.
  • Electrical power feeding for civil and military marine and aviation utilities.
  • Electrical works in construction engineering.

Start your application

Start The your journey to your new career.