Programming Languages
Offered By: University of Virginia via Udacity
Course Description
Overview
This class will give you an introduction to the fundamentals of programming languages. Key concepts include how to specify and process valid strings, sentences and program structures.
Syllabus
- String Patterns
- Find and specify classes of strings using regular expressions.,Learn how to escape problematic characters.,Represent a Finite State Machine.
- 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.
- Grammars
- How to specify and deconstruct valid sentences.,Parsing grammars and discovering errors using regular expressions.,Use generators to parse strings.
- Parsing
- Turning sentences into trees.,Discover malformed input.,Set precedence to prioritize parsing of strings.
- Interpreting
- Simulating programs.,Write an HTML interpreter.,Calling functions and interpreting function definitions.
- Building a Web Browser
- Interpreting HTML and JavaScript,Build your own web browser.,Optimize the performance of your web browser.
- Wrap-up
- Use regular expressions to parse HTML and JavaScript,Write an HTML interpreter.,Write a JavaScript interpreter.
Taught by
Wes Weimer
Related Courses
Cyber-Physical Systems: Modeling and SimulationUniversity of California, Santa Cruz via Coursera Digital Systems: From Logic Gates to Processors
Universitat Autònoma de Barcelona (Autonomous University of Barcelona) via Coursera Kent's Blog Posts as Screencasts
egghead.io Embedded Systems - Shape The World: Microcontroller Input/Output
The University of Texas at Austin via edX Computation Structures (Spring 2017)
Massachusetts Institute of Technology via MIT OpenCourseWare