Programming Languages

Product type
Logo Harvard Extension School

Need more information? Get more details on the site of the provider.

Description

This course provides an introduction to the formal semantics of programming languages: it provides tools and techniques for understanding the meaning of programs. Such tools allow us to answer questions about the correctness of programs, program analyses, and program transformations, and to understand some of the issues and complexities of programming language design. These questions and issues include the following: Are two programs indistinguishable? When I execute my program, will it encounter a run-time type error? Is it possible for a program written in this language to crash? Is this compiler optimization safe? Is programming language feature A more expressive than programming language…

Read the complete description

Frequently asked questions

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.

Didn't find what you were looking for? See also: Programming (general), C/C++, IT Security, Software / System Engineering, and Web Accessibility.

This course provides an introduction to the formal semantics of programming languages: it provides tools and techniques for understanding the meaning of programs. Such tools allow us to answer questions about the correctness of programs, program analyses, and program transformations, and to understand some of the issues and complexities of programming language design. These questions and issues include the following: Are two programs indistinguishable? When I execute my program, will it encounter a run-time type error? Is it possible for a program written in this language to crash? Is this compiler optimization safe? Is programming language feature A more expressive than programming language feature B? Topics covered in this course include dynamic semantics, including operational, axiomatic, and denotational semantics; static semantics, including type systems and abstract interpretation; language features, including exceptions, mutable locations, modules, and objects. The recorded lectures are from the School of Engineering and Applied Sciences course Computer Science 152. Prerequisites: CSCI E-250; CSCI E-207 is recommended. Students must have good programming skills, be comfortable with recursion, basic mathematical ideas, and notations. (4 credits)

There are no reviews yet.

Share your review

Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate $1.- to Stichting Edukans.

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.