You must be logged in to take this course → LOGIN | REGISTER NOW
[course_title] course offers the three main programming paradigms: functional, object-oriented, and declarative dataflow. The course covers the functional programming, its techniques and its data structures. You will explore the simple formal semantics for all concepts. The concepts will further illustrate with practical code that runs on the accompanying open-source platform, the Mozart Programming System.
Upon completion, you will be able to identify problems, break them down into their basic steps, and design algorithms and abstractions to solve them. You will also be able to write small concurrent programs in the deterministic data flow paradigm.
Assessment
This course does not involve any written exams. Students need to answer 5 assignment questions to complete the course, the answers will be in the form of written work in pdf or word. Students can write the answers in their own time. Each answer needs to be 200 words (1 Page). Once the answers are submitted, the tutor will check and assess the work.
Certification
Edukite courses are free to study. To successfully complete a course you must submit all the assignment of the course as part of the assessment. Upon successful completion of a course, you can choose to make your achievement formal by obtaining your Certificate at a cost of £49.
Having an Official Edukite Certification is a great way to celebrate and share your success. You can:
- Add the certificate to your CV or resume and brighten up your career
- Show it to prove your success
Course Credit: Université catholique de Louvain
Course Curriculum
Introduction | |||
Course Motivation and Overview | 00:15:00 | ||
Practical organization of the course | 00:07:00 | ||
Our first paradigm: functional programming | 00:07:00 | ||
Introduction to Mozart system | 00:04:00 | ||
Single assignment in the functional paradigm | 00:03:00 | ||
Static scope and identifier redeclaration | 00:06:00 | ||
Learning the syntax of Oz | 00:05:00 | ||
Introduction to functions and numbers | 00:07:00 | ||
Functions that call other functions: composition and recursion | 00:08:00 | ||
Overview of invariant programming | 00:00:00 | ||
Factorial with communicating vases | 00:06:00 | ||
Sum of digits with communicating vases | 00:04:00 | ||
The golden rule of tail recursion | 00:07:00 | ||
Invariant programming to calculate powers | 00:09:00 | ||
Lists informally | 00:03:00 | ||
Defining lists with grammar rules | 00:06:00 | ||
Useful representations for lists | 00:05:00 | ||
Tail recursion for lists | 00:08:00 | ||
Pattern matching | 00:07:00 | ||
List functions and the kernel language | 00:05:00 | ||
Append in the kernel language | 00:03:00 | ||
Why Append is tail recursive | 00:04:00 | ||
Contextual environment | 00:06:00 | ||
Procedure Values | 00:04:00 | ||
Examples of higher-order programming | 00:13:00 | ||
Records | 00:11:00 | ||
Full Kernel Language | 00:00:00 | ||
Introduction to trees | 00:03:00 | ||
Ordered binary trees | 00:03:00 | ||
Search trees and lookup | 00:08:00 | ||
Insert function | 00:06:00 | ||
Balanced trees | 00:02:00 | ||
Delete function | 00:13:00 | ||
Goal-oriented programming | 00:02:00 | ||
Execution speed and big-O notation | 00:09:00 | ||
Temporal complexity of the function Pascal | 00:05:00 | ||
Best case, average case, and worst case | 00:04:00 | ||
Upper and lower bounds | 00:05:00 | ||
Spatial complexity | 00:08:00 | ||
Moore’s Law and program optimization | 00:07:00 | ||
Intractable problems and the class NP | 00:10:00 | ||
Conclusions on performance | 00:04:00 | ||
Overview of correctness and semantics | 00:09:00 | ||
Proving a program is correct using the semantics | 00:13:00 | ||
The abstract machine | 00:06:00 | ||
An example execution in the abstract machine | 00:06:00 | ||
Semantic rule for each instruction | 00:05:00 | ||
Procedure definition and call semantics | 00:00:00 | ||
Semantics: the ultimate programming tool | 00:09:00 | ||
Assessment | |||
Submit Your Assignment | 00:00:00 | ||
Certification | 00:00:00 |
Course Reviews
No Reviews found for this course.