YoVDO

Programming Languages

Offered By: University of Virginia via Udacity

Tags

Programming Courses Programming Languages Courses Python Courses Javascript Courses Regular Expressions Courses HTML Courses Lexical Analysis Courses Parsing Courses Finite State Machine Courses

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

Tags

Related Courses

Cyber-Physical Systems: Modeling and Simulation
University 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