Compilers
About this Course
The course lectures will be presented in short videos. To help you master the material, there will be in-lecture questions to answer, quizzes, and two exams: a midterm and a final. There will also be homework in the form of exercises that ask you to show a sequence of logical steps needed to derive a specific result, such as the sequence of steps a type checker would perform to type check a piece of code, or the sequence of steps a parser would perform to parse an input string. This checking technology is the result of ongoing research at Stanford into developing innovative tools for education, and we're excited to be the first course ever to make it available to students. An optional course project is to write a complete compiler for COOL, the Classroom Object Oriented Language. COOL has the essential features of a realistic programming language, but is small and simple enough that it can be implemented in a few thousand lines of code. Students who choose to do the project can implement it in either C++ or Java. I hope you enjoy the course!Created by: Stanford University
Level: Introductory
Related Online Courses
Information Security is everywhere: as the world becomes more and more digitized, so it becomes more and more hackable. Cyber attacks, data breaches, and even cyber warfare are all very real - so... more
How do you protect the critical data that is increasingly being stored in the cloud? Learn how to build a security strategy that keeps data safe and mitigates risk. In this course, part of the... more
Welcome to this Spark AR Studio advanced course. In this course, you will learn how to use Spark AR advanced skills and techniques to create and design augmented reality (AR) filters and use custom... more
Software testing gets a bad rap for being difficult, time-consuming, redundant, and above all - boring. But in fact, it is a proven way to ensure that your software will work flawlessly and can... more
Are you a web engineer, designer, or creative thinker looking to apply AI or use Machine Learning in your next web application but are unsure where to begin? Or maybe you’re overwhelmed by other c... more