RiseUpp Logo
Educator Logo

Programming Languages II: Advanced Concepts & Impl.

Explore advanced programming language concepts, including continuations, types, and polymorphism, with hands-on Scala implementation.

Explore advanced programming language concepts, including continuations, types, and polymorphism, with hands-on Scala implementation.

This advanced course in programming languages delves into sophisticated concepts and their implementations. Building on foundational knowledge, it covers continuations, continuation-passing style, operational semantics, type systems, and polymorphism. Students will implement interpreters using Scala and rigorously discuss concepts using operational semantics. The course aims to enhance students' ability to quickly learn new languages, evaluate language suitability for specific tasks, design domain-specific languages, and understand the impact of language design on thought and communication. Through a combination of theoretical understanding and practical implementation, students will gain a deep insight into the inner workings of programming languages.

Instructors:

English

Powered by

Provider Logo
Programming Languages II: Advanced Concepts & Impl.

This course includes

10 Hours

Of Self-paced video lessons

Advanced Level

Completion Certificate

awarded on course completion

2,435

What you'll learn

  • Understand and implement continuations and continuation-passing style

  • Apply small-step and big-step operational semantics to language features

  • Design and implement type systems for various language constructs

  • Master type checking and type inference algorithms

  • Explore parametric and subtype polymorphism in language design

  • Implement interpreters for advanced language features using Scala

Skills you'll gain

continuations
type systems
operational semantics
interpreter implementation
polymorphism

This course includes:

7 Hours PreRecorded video

7 assignments

Access on Mobile, Tablet, Desktop

FullTime access

Shareable certificate

Get a Completion Certificate

Share your certificate with prospective employers and your professional network on LinkedIn.

Certificate

Top companies offer this course to their employees

Top companies provide this course to enhance their employees' skills, ensuring they excel in handling complex projects and drive organizational success.

icon-0icon-1icon-2icon-3icon-4

There are 7 modules in this course

This course provides an in-depth exploration of advanced programming language concepts and their implementations. It is structured into seven modules, each focusing on specific aspects of language design and theory. The curriculum begins with continuations and continuation-passing style, progressing through operational semantics, type systems, type inference, and polymorphism. Students learn to implement these concepts using the Scala programming language, gaining practical experience in interpreter design. The course emphasizes both theoretical understanding through formal semantics and practical application through coding exercises. Key topics include first-class continuations, low-level representations of interpreters, various forms of operational semantics, type rules and checking, type inference algorithms, and different types of polymorphism. Throughout the course, students develop skills in analyzing and implementing complex language features, preparing them for advanced work in language design and compiler construction.

Week 1

Module 1 · 2 Hours to complete

Week 2

Module 2 · 1 Hours to complete

Week 3

Module 3 · 1 Hours to complete

Week 4

Module 4 · 1 Hours to complete

Week 5

Module 5 · 1 Hours to complete

Week 6

Module 6 · 1 Hours to complete

Final Exam

Module 7 · 30 Minutes to complete

Fee Structure

Payment options

Financial Aid

Instructor

Sukyoung Ryu
Sukyoung Ryu

2,672 Students

2 Courses

Leading Research in Computing and Information Security

Sukyoung Ryu is a Professor and Head of the School of Computing at the Korea Advanced Institute of Science and Technology (KAIST). Her research encompasses programming languages, software engineering, and information security. Ryu has been recognized with research awards from Google and Distinguished Paper Awards from ACM SIGSOFT. Currently, she serves as an associate editor for IEEE Transactions on Software Engineering (TSE) and is a member of ACM SIGPLAN CARES. She holds a B.S., M.S., and Ph.D. in Computer Science, all from KAIST. Prior to her position at KAIST, Ryu worked at Sun Microsystems and Harvard University.

Programming Languages II: Advanced Concepts & Impl.

This course includes

10 Hours

Of Self-paced video lessons

Advanced Level

Completion Certificate

awarded on course completion

2,435

Testimonials

Testimonials and success stories are a testament to the quality of this program and its impact on your career and learning journey. Be the first to help others make an informed decision by sharing your review of the course.

Frequently asked questions

Below are some of the most commonly asked questions about this course. We aim to provide clear and concise answers to help you better understand the course content, structure, and any other relevant information. If you have any additional questions or if your question is not listed here, please don't hesitate to reach out to our support team for further assistance.