Brief Introduction
Take this class and learn how to build your own simple web browser complete with the ability to parse and understand HTML and JavaScript.Course Summary
This course covers programming languages concepts such as syntax, semantics, data types, and control structures. Students will learn how to implement a programming language using a functional programming language.Key Learning Points
- Learn the fundamentals of programming languages concepts such as syntax, semantics, data types, and control structures
- Gain hands-on experience implementing a programming language using a functional programming language
- Understand the importance of programming language design and how it affects software development
Related Topics for further study
Learning Outcomes
- Ability to design and implement a programming language
- Understanding of programming language concepts and their impact on software development
- Experience with functional programming language
Prerequisites or good to have knowledge before taking this course
- Basic knowledge of programming concepts
- Familiarity with a functional programming language such as Haskell or Ocaml
Course Difficulty Level
IntermediateCourse Format
- Online
- Self-paced
Similar Courses
- Compilers
- Operating Systems
Related Education Paths
Notable People in This Field
- John McCarthy
- Alan Turing
Related Books
Description
This course is an introduction to the fundamentals of programming languages. Concepts include how to specify and process valid strings, sentences and program structures.Requirements
- This course assumes previous programming experience, comparable to what is covered by the Udacity CS101 course. See the Technology Requirements for using Udacity.
Knowledge
- Instructor videosLearn by doing exercisesTaught by industry professionals
Outline
- lesson 1 String Patterns Find and specify classes of strings using regular expressions. Learn how to escape problematic characters. Represent a Finite State Machine. lesson 2 Lexical Analysis Breaking strings down into important words. Write your own lexer that can tokenize HTML strings. Use regular expressions to parse lex and tokenize HTML and JavaScript. lesson 3 Grammars How to specify and deconstruct valid sentences. Parsing grammars and discovering errors using regular expressions. Use generators to parse strings. lesson 4 Parsing Turning sentences into trees. Discover malformed input. Set precedence to prioritize parsing of strings. lesson 5 Interpreting Simulating programs. Write an HTML interpreter. Calling functions and interpreting function definitions. lesson 6 Building a Web Browser Interpreting HTML and JavaScript Build your own web browser. Optimize the performance of your web browser. lesson 7 Wrap-up Use regular expressions to parse HTML and JavaScript Write an HTML interpreter. Write a JavaScript interpreter.
Summary of User Reviews
Read reviews for Udacity's Programming Languages course. Discover what users think about the course and how it helped them. Explore the most common pros and cons mentioned by users.Key Aspect Users Liked About This Course
The course provides a great overview of programming languages and their features.Pros from User Reviews
- Well-structured course content
- Engaging and knowledgeable instructors
- Practical exercises and projects
- Good value for money
Cons from User Reviews
- Some topics could be explained in more detail
- Not enough hands-on coding practice
- Not suitable for complete beginners