Companies Home Search Profile

The Complete Course of Compiler Design 2024

Focused View

The Tech Courses

11:16:45

8 View
  • 1. Welcome and Course Overview.mp4
    02:40
  • 2. Early Day Computers.mp4
    05:17
  • 3. The Importance of Compiler Design.mp4
    02:00
  • 4. Setting Up Development Environment.mp4
    10:29
  • 1. What is a Compiler.mp4
    08:24
  • 2. Compiler vs Interpreter.mp4
    04:06
  • 3. The Compilation Process.mp4
    20:03
  • 4. Question 1.mp4
    00:40
  • 5. Question 1 Answer.mp4
    03:17
  • 1. Lexical Analyzer, Tokens, Lexemes.mp4
    13:57
  • 2. Regular Expressions.mp4
    12:20
  • 3. Question 2.mp4
    00:19
  • 4. Question 2 Answer.mp4
    01:19
  • 5. Finite Automata.mp4
    15:31
  • 6. Examples.mp4
    08:04
  • 7. Transition Tables.mp4
    11:22
  • 8. NFA to DFA.mp4
    08:16
  • 9. Question 3.mp4
    00:37
  • 10. Question 3 Answer.mp4
    01:53
  • 11. Question 4.mp4
    00:27
  • 12. Question 4 Answer.mp4
    01:56
  • 13. Question 5.mp4
    00:25
  • 14. Question 5 Answer.mp4
    02:51
  • 1. Syntax Analysis, Context Free Grammar (CFG).mp4
    13:02
  • 2. How to Parse, Parse Tree, Left Recursion, Left factoring.mp4
    21:12
  • 3. Question 6.mp4
    00:27
  • 4. Question 6 Answer.mp4
    01:27
  • 5. Question 7.mp4
    00:27
  • 6. Question 7 Answer.mp4
    02:00
  • 7. Types of Parsing, Recursive Decent Parsing.mp4
    09:46
  • 8. C++ Recursive Decent Parsing Code.mp4
    09:45
  • 9. First Set and Follow Set.mp4
    12:53
  • 10. Question 8.mp4
    00:18
  • 11. Question 8 Answer.mp4
    01:56
  • 12. Predictive Parsers, LL(k) Parsers.mp4
    14:27
  • 13. Question 9.mp4
    00:24
  • 14. Question 9 Answer.mp4
    04:10
  • 15. Bottom-Up Parsing, LR Parsing.mp4
    18:05
  • 16. LR Parsing Table and Example.mp4
    11:28
  • 17. Question 10.mp4
    00:30
  • 18. Question 10 Answer.mp4
    03:39
  • 1. Semantic Analysis.mp4
    07:57
  • 2. Syntax Directed Translation.mp4
    12:08
  • 3. Question 11.mp4
    00:15
  • 4. Question 11 Answer.mp4
    01:56
  • 1. Intermediate Code Generation.mp4
    06:51
  • 2. Directed Acyclic Graphs.mp4
    06:36
  • 3. Abstract Syntax Tree.mp4
    06:02
  • 4. Notations.mp4
    09:57
  • 5. Question 12.mp4
    00:18
  • 6. Question 12 Answer.mp4
    01:48
  • 7. Three-Address Code.mp4
    06:33
  • 8. Quadruples & Triples.mp4
    11:13
  • 9. Question 13.mp4
    00:18
  • 10. Question 13 Answer.mp4
    03:33
  • 1. Runtime Environments.mp4
    08:31
  • 2. Stack.mp4
    05:44
  • 3. Stack Implementation using C++.mp4
    14:10
  • 4. Heap.mp4
    05:41
  • 5. Activation Records.mp4
    06:44
  • 6. Managing Scope.mp4
    05:41
  • 7. Question 14.mp4
    00:20
  • 8. Question 14 Answer.mp4
    01:31
  • 1. Optimization Techniques.mp4
    03:50
  • 2. Constant Folding.mp4
    02:36
  • 3. Dead Code Elimination.mp4
    03:03
  • 4. Common Sub expression Elimination.mp4
    03:08
  • 5. Question 15.mp4
    00:29
  • 6. Question 15 Answer.mp4
    03:15
  • 1. Code Generation.mp4
    06:46
  • 2. Input to the Code Generator.mp4
    04:55
  • 3. Target Program Code.mp4
    05:41
  • 4. Memory Management.mp4
    05:55
  • 5. Instruction Selection & Examples on generating Assembly code.mp4
    16:56
  • 6. Question 16.mp4
    03:18
  • 7. Question 16 Answer.mp4
    03:18
  • 8. Register Allocation & Assignment.mp4
    09:24
  • 9. Evaluation Order & Example.mp4
    09:58
  • 10. Question 17.mp4
    00:26
  • 11. Question 17 Answer.mp4
    02:25
  • 12. Just-In-Time Compilation.mp4
    07:18
  • 13. Dynamic Compilation vs Static Compilation.mp4
    06:28
  • 14. HotSpot Compilation.mp4
    04:57
  • 1. Domain-Specific Languages (DSLs).mp4
    13:46
  • 2. Mathematical Expression using DSL.mp4
    15:21
  • 3. DSL for the Expression.mp4
    10:58
  • 4. Testing the DSL.mp4
    08:13
  • 5. Problem Statement.mp4
    03:37
  • 6. DSL Function.mp4
    13:22
  • 7. Testing the DSL.mp4
    18:28
  • 8. Question 18.mp4
    00:42
  • 9. Question 18 Answer.mp4
    23:01
  • 1. Building a Simple Lexer.mp4
    35:00
  • 2. Building a Simple Parser.mp4
    21:16
  • 3. Building a Simple ICG.mp4
    16:50
  • 4. Question 19.mp4
    00:14
  • 5. Question 19 Answer.mp4
    01:09
  • 6. Recap of Key concepts and References.mp4
    04:46
  • Description


    Learn how to develop Compilers in a Professional way from Scratch. Build your own C++ Compiler, from A to Z!

    What You'll Learn?


    • At the end of the course you will fully master Compiler Design, to be able to develop your own C++ compilers from scratch
    • You will be able to understand the fundamental theory of Compilers, ending with advanced practical examples & step by step exercises
    • You will become familiar with the user interface, toolbars and basic commands, and you will master all the phases of the configuration process
    • You will learn in a professional way the Lexical Analysis, the Syntax Analysis and the Semantic Analysis
    • You will learn how to generate a code a code from sratch, understanding its interpretation
    • You will understand how to with Runtime Environments, Optimization and Domain Specific Language DSL
    • You will learn other essential topics in compilers: Target Program Code, Memory Management, Allocation & Assignment, Dynamic vs Static Compilation, Hotspot...
    • You will understand how to build a Simple Lexer, a Simple Parser and Simple ICG from scratch, in a practical way
    • You will master the advanced Tips and Tricks to Master Compiler Design, and you will discover the best resources to stay updated
    • You will be able to practice the content learned in a practical way by following all the steps in the complete exercises, quizes and the complete projects
    • You will start with the basics and progressively carry out more complex steps until you reach an advanced level and absolute mastery at the end of the course

    Who is this for?


  • Beginners who have never design a compiler before
  • Developers, engineers, programmers, students... who want to learn how to develop a C++ compiler in a professional way
  • Intermediate or advanced Compile Design student who want to improve their skills even more!
  • What You Need to Know?


  • Having basic notions of Compiler Design and C++ language can help, but if not, do not worry cause the course starts from scratch
  • Installing Visual Studio Code and needed environment (if you don't know how, don't worry, it's very easy, free, and I'll explain it to you in the course!)
  • A decent computer and of course, desire to learn!
  • More details


    Description

    Become a Compiler developer professional and learn one of employer's most requested skills nowadays!

    This comprehensive course is designed so that developers, engineers, programmers, students... can learn Compiler Design from scratch to develop compilers in a practical and professional way. Never mind if you have no experience in the topic, you will be equally capable of understanding everything and you will finish the course with total mastery of the subject.

    After several years working in software and engineering, we have realized that nowadays mastering Compiler Design is very necessary for undesrtand teh structure and set of principles that guide the translation, analysis, and optimization process of a compiler. Knowing how to build your own compiler from scratch can give you many job opportunities and many economic benefits, especially in the world of the development.

    The big problem has always been the complexity to perfectly understand compilers requires, since its absolute mastery is not easy. In this course we try to facilitate this entire learning and improvement process, so that you will be able to carry out and understand your own compilers in a short time, thanks to the step-by-step and detailed examples of every concept.

    With more than 11 exclusive hours of video and almost 100 lectures, this comprehensive course leaves no stone unturned! It includes both practical exercises and theoretical basis to fully master the compiler design. The course will teach you how to develop any C++ compiler in a practical way, from scratch, and step by step.

    We will start with the overview and setup of Visual Studio Code and needed environment and then, we'll cover a wide variety of topics, including:

    • Introduction to Compiler Design and course dynamics

    • Set up, configurations and needed installations for the work environment

    • General familiarization with the user interface and elements

    • The Fundamentals of Compilers

    • Lexical Analysis

    • Syntax Analysis

    • Semantic Analysis

    • Code generation from sratch

    • Runtime Environments

    • Optimization Techniques

    • Domain Specific Language DSL

    • Other topics: Target Program Code, Memory Management, Allocation & Assignment, Dynamic vs Static Compilation, Just-In-Time and Hotspot Compilation...

    • Building a Simple Lexer

    • Building a Simple Parser

    • Building a Simple ICG

    • Advanced Tips and Tricks to Master Compiler Design and the best resources to stay updated

    • Mastery and application of absolutely ALL the functionalities of Compiler Design

    • Quizes, Practical exercises, complete projects and much more!

    In other words, what we want is to contribute our grain of sand and teach you all those things that we would have liked to know in our beginnings and that nobody explained to us. In this way, you can learn to create and manage a wide variety of compilers quickly and make versatile and complete use of Compiler Design. And if that were not enough, you will get lifetime access to any class and we will be at your disposal to answer all the questions you want in the shortest possible time.

    Learning Compiler Design has never been easier. What are you waiting to join?

    Who this course is for:

    • Beginners who have never design a compiler before
    • Developers, engineers, programmers, students... who want to learn how to develop a C++ compiler in a professional way
    • Intermediate or advanced Compile Design student who want to improve their skills even more!

    User Reviews
    Rating
    0
    0
    0
    0
    0
    average 0
    Total votes0
    Focused display
    Category

    C++

    The Tech Courses
    The Tech Courses
    Instructor's Courses
    Hi everybody! The Tech Courses is a dynamic collective of passionate engineers and developers with a shared mission: to provide exceptional learning experiences to students in the world of technology and science. With a focus on clarity, interactivity, and real-world relevance, our courses span a spectrum of tech topics, ensuring both beginners and experienced individuals find valuable insights.What sets The Tech Courses apart is our commitment to bridging theory and practice. Through a blend of video lectures, coding exercises, and real-world life projects, we empower students to not only grasp complex concepts but also apply them effectively. This approach fosters a vibrant learning community where mentorship and peer interaction are fundamental.By combining our technical expertise with a genuine dedication to education, The Tech Courses creates an environment where students can develop a strong foundation, refine problem-solving skills, and stay updated of technological advancements. In other words, our approach nurtures not just skill acquisition, but a lifelong enthusiasm for learning within the dynamic tech landscape.
    Students take courses primarily to improve job-related skills.Some courses generate credit toward technical certification. Udemy has made a special effort to attract corporate trainers seeking to create coursework for employees of their company.
    • language english
    • Training sessions 98
    • duration 11:16:45
    • Release Date 2024/04/11