Evaluation Strategies and Code Termination in Programming
Master how programming languages evaluate expressions, analyze termination behavior, and write efficient functional code using Call-by-Value and Call-by-Name.
-
๐ฌ
AI instructor
Ask about any lesson and get a clear answer instantly, anytime. -
๐
Start anytime
No schedules or deadlines โ learn at your own pace, whenever suits you. -
๐
In English
Lessons, tasks and certificate โ all fully in your language.
About this course
Every time you run a program, the underlying language must decide when and how to evaluate your expressions. Understanding these evaluation strategies is key to preventing infinite loops and optimizing performance. This text-only course guides you through the core concepts of programming language theory, focusing on how different evaluation strategies like Call-by-Value (CBV) and Call-by-Name (CBN) impact whether your code successfully terminates or runs forever. What you will learn: - Understand the foundational mechanics of Call-by-Value and Call-by-Name evaluation. - Analyze how expression reduction paths determine whether a program terminates or diverges. - Compare evaluation strategies using step-by-step written reduction sequences. - Identify scenarios where Call-by-Name terminates successfully while Call-by-Value fails. - Explore modern applications of these concepts, including lazy evaluation and infinite data streams. - Apply theoretical concepts to write safer, more predictable functional code. You will start with essential terminology and the basics of expression reduction before walking through clear, written comparative examples of execution strategies in action. This course is designed for beginner programmers and computer science students looking to deepen their understanding of functional programming theory; no advanced mathematics or prior compiler knowledge is required. Start reading today to master the mechanics of code execution and termination.
What you'll get
-
๐
Certificate of completion
Add it to your LinkedIn profile -
๐ฌ
Personal AI tutor
Stuck on a lesson? Ask your built-in tutor anything, any time. -
๐ง
Audio version included
Learn on the go โ no screen needed -
โพ๏ธ
Lifetime access
Come back anytime, no expiry -
๐ฑ
Phone or computer
Works anywhere, any device -
๐ธ
14-day refund
No questions asked -
โก
Short & focused
3h of practical content
Reviews
No reviews yet โ be the first to share your experience.
Learners also took
๐ Studentsโ pick
๐ With certificate
Modern Java Essentials: Functional Programming, Records, and Modern Features
Certificate
Hands-on
K32.000
→
๐ Studentsโ pick
๐ With certificate
Asynchronous Programming and Multithreading in C#
Certificate
Hands-on
K32.000
→
โก Best to start
๐ With certificate
Writing High-Performance Python: Optimize Speed and Memory
Certificate
Hands-on
K32.000
→
๐ Most popular
๐ With certificate
Go Programming by Example: Build Reliable Applications
Certificate
Hands-on
K32.000
→
Frequently asked
What do I need to take this course? +
Just a phone or computer with internet. No installs, no special hardware.
How do I pay? +
By card via Stripe. We donโt store card details โ Stripe handles them securely.
Can I get a refund? +
Yes โ full refund within 14 days, no questions asked.
How long will I have access? +
Forever. Once you purchase, the course is yours to revisit anytime.
Will I get a certificate? +
Yes. On completion you'll receive a certificate you can add to your LinkedIn profile.
Built for learners in
Tech
Design
Finance
Marketing
Healthcare
Education
Hospitality
Manufacturing