Create a Programming Language and Learn Advanced Python – Full Course
Offered By: freeCodeCamp
Course Description
Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Embark on a comprehensive journey to create your own programming language while mastering advanced Python concepts in this extensive course. Dive deep into computer fundamentals, exploring logic gates, arithmetic operations, and memory systems. Progress through key programming concepts, including lexical analysis, parsing, and object-oriented programming principles. Gain hands-on experience with Python, implementing class variables, methods, and inheritance. Explore essential data structures like lists, tuples, dictionaries, stacks, and binary trees. Develop a strong foundation in tree traversal techniques and recursion. Apply your knowledge to build a lexer, parser, and interpreter in Python. Enhance your language with advanced features such as brackets in expressions, variables, unary operations, boolean and comparison operators, if statements, and while loops. By the end of this course, you'll have created a functional programming language while significantly advancing your Python skills.
Syllabus
Intro
Logic gates
How computers do arithmetic
Computer memory
Programming
Lexical analysis
Parsing
Object-oriented programming
Encapsulation
Abstraction
Inheritance
Polymorphism
OOP in Python
Class variables
Class methods
Static methods
Inheritance in Python
Lists
Tuples
Dictionaries
Stacks
Binary trees
Tree traversal techniques
Interpreter
Binary trees in Python
Preorder traversal
Postorder traversal
Recursion
Lexer in Python
Parser in Python
Interpreter in Python
Brackets in expressions
Variables
Unary operations
Boolean and comparison operator
If statements
While loops
Taught by
freeCodeCamp.org
Related Courses
CompilersStanford University via Coursera Compilers
Stanford University via edX Introduction to NLP and Syntactic Processing
Packt via Coursera Data Manipulation in Alteryx
DataCamp Advanced Software Construction in Java
Massachusetts Institute of Technology via edX