Compilation - Part Three: Syntax Analysis

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 ธ.ค. 2024

ความคิดเห็น • 59

  • @sergedaney3511
    @sergedaney3511 5 ปีที่แล้ว +27

    This is by far the most underrated computer science channel on TH-cam, it's just amazingly clear and well done. Thank you so much to the author for contributing to make the internet such a great place!

  • @louis9116
    @louis9116 5 ปีที่แล้ว +22

    Very glad I found this gem channel among pile of garbage on TH-cam. Thank you very much. Appreciate your work

  • @richardmaduka4747
    @richardmaduka4747 3 ปีที่แล้ว +11

    This is top-notch teaching. Thank you for your hard work.

  • @NoOne-uz4vs
    @NoOne-uz4vs 4 ปีที่แล้ว +12

    Finally someone with a proper accent that has a great content!!!!!

    • @squarerootof2
      @squarerootof2 4 ปีที่แล้ว

      Yep, hard to find these days.

  • @jesper2455
    @jesper2455 5 ปีที่แล้ว +8

    Thanks for producing such great material! I'm in uni and this will definitely help me pass my course.

  • @BranchingOutCoding
    @BranchingOutCoding 2 ปีที่แล้ว

    This video was extremely helpful. The video was very clear, detailed, and easy to follow!! Many many thanks!!!!

  • @daveamiana778
    @daveamiana778 3 ปีที่แล้ว +2

    This has been a really fascinating lecture! I learned a lot about compilers.

  • @karthikeyants5068
    @karthikeyants5068 3 ปีที่แล้ว +1

    Awesome explanation!! At last starting to understand syntax analyzer . Thank you

  • @toptextbottomtext6671
    @toptextbottomtext6671 4 ปีที่แล้ว +1

    Very well explained, I am looking forward to watching more of your videos.

  • @jerichokatende8151
    @jerichokatende8151 10 หลายเดือนก่อน +1

    Very clear explanation , thank you very much

  • @victoranaya1382
    @victoranaya1382 3 ปีที่แล้ว +1

    Amazing explanation of this topic

  • @HobbyWelt
    @HobbyWelt 5 ปีที่แล้ว +3

    absolutely great explanation. very interesting

  • @mrhyde7163
    @mrhyde7163 4 ปีที่แล้ว +1

    an error in 19:52 graph?
    'a' might be supposed to be connected by '*' , not by '+' twice

  • @mohammadahmedragab837
    @mohammadahmedragab837 3 ปีที่แล้ว +2

    I love your simple amazing explanation ❤️💙💜💜💜

  • @KayOScode
    @KayOScode 5 ปีที่แล้ว +1

    Ive only ever built an assembler. Never tried to build a compiler, but its actually quite similar to my approach to the assembler with a few more complexities.

  • @michaelbulkley9141
    @michaelbulkley9141 4 ปีที่แล้ว +1

    I am having trouble understanding the BNF definition of characters. First appearing in the video at 7:01. It looks recursive but I don't see a base case where the recursion can end. Should the definition be ::= | or is there something I am not understanding? Thanks and thanks for the video, it is great!

  • @Renat060888
    @Renat060888 3 ปีที่แล้ว +1

    Why do we decompose "number" to "digits" (and string to characters)? Isn't it the lexer's responsibility? And just use NUMBER / STRING tokens on syntax analysis stage.

  • @ifeoluwaonigbinde3250
    @ifeoluwaonigbinde3250 3 ปีที่แล้ว +3

    Hey, isn't the prefix/polish notation supposed to be *+abc? Someone please correct me if I'm wrong.

    • @ComputerScienceLessons
      @ComputerScienceLessons  3 ปีที่แล้ว

      I have come across explanations of Polish notation in which all of the operators are written together at the start, before any of the operands (or reverse Polish in which they all appear at the end). This is fine for relatively simple expressions - Reverse Polish expressions lend themselves to evaluation by means of a stack data structure (nice article here: stevenpcurtis.medium.com/evaluate-reverse-polish-notation-using-a-stack-7c618c9f80c0). When an expression gets very complicated, there is some wisdom in breaking things up a little. (Needless to say, people have come up with all sorts of variations on a theme.) Remember, the purpose of Polish and reverse Polish is to remove the need for parentheses in an expression. :)KD

    • @ifeoluwaonigbinde3250
      @ifeoluwaonigbinde3250 3 ปีที่แล้ว

      @@ComputerScienceLessons The stack evaluation was why I asked the question in the first place but I guess your second point makes things clearer.
      Thanks for the reply!

  • @pritioli8429
    @pritioli8429 3 ปีที่แล้ว +1

    thank you very much for this clear explanation!

  • @uipo1122
    @uipo1122 3 ปีที่แล้ว +1

    Thank you. It helps so much.

  • @surman1816
    @surman1816 3 ปีที่แล้ว +1

    keep up the good work cheers

  • @nomealow
    @nomealow 4 ปีที่แล้ว +3

    12:06 Semantic

    • @ComputerScienceLessons
      @ComputerScienceLessons  4 ปีที่แล้ว

      ??? KD:)

    • @jpf338
      @jpf338 4 ปีที่แล้ว

      @@ComputerScienceLessons I was wondering, when we study compilers, they are separeted in lexical, sintactical and semantica. wonder why here the semantic part is nos aboarded as a different part.

  • @johnsmithee6660
    @johnsmithee6660 4 ปีที่แล้ว

    Why can't you use postfix notation on if statements or for loops?

  • @Christine-ne3dw
    @Christine-ne3dw 3 ปีที่แล้ว

    Thanks for the vid

  • @nietschecrossout550
    @nietschecrossout550 5 ปีที่แล้ว +1

    Small error: '=' is no relation operator afaik but '==' is

    • @ComputerScienceLessons
      @ComputerScienceLessons  5 ปีที่แล้ว

      It depends on the language. In Visual Basic '=' is used for assignment and for testing. Spot the VB programmer!

    • @nietschecrossout550
      @nietschecrossout550 5 ปีที่แล้ว

      @@ComputerScienceLessons Oh yes the company I am working at is/was using FoxPro so believe me I am used to fucked and stupid syntax... Well we are transitioning to C#. I think I would dump my job and become a politician of I had to write VB or FoxPro. They are utterly unintuitive, stupid and have no real place in this world. Only C like languages and xpt shit like Python should exist

    • @nietschecrossout550
      @nietschecrossout550 5 ปีที่แล้ว

      I mean VB just like FoxPro doesn't have anything going for it, There are languages that are better for whatever you want for the task, xpt compatibility? Python, Speed? C++, Web and Windows application? C# with .Net Core WPF. Change my mind

    • @ComputerScienceLessons
      @ComputerScienceLessons  5 ปีที่แล้ว +4

      This is an argument I have had with many people. All of my programming videos are written in VB.NET. I can do anything with VB.NET that can be done with Java, C, C++, C# and Python. Most importantly, from my teacher perspective, VB is the best way to learn programming. A lot of schools start with Python, which I believe is a mistake. Young people get hooked on programming very quickly when they know how to make things appear and disappear on the screen. VB makes this easy. The GUI building facilities for Python are woeful. Python is great for writing your own utility scripts , or server side code (if you are already a programmer), but you can't put a simple message on the screen without adding lots of code that novices find confusing. Ironically, when it comes to OOP concepts, Python lacks the ability to encapsulate code. This leads to a lot of confusion with my advanced students. (OK, I'm Python bashing now, but let's face it, Python was named after a very silly comedy sketch show). I do quite like C# but the Java style syntax catches beginners out. One final thought, most of the pseudocode that my students see on their exam papers looks just like VB. You asked for it!

    • @nietschecrossout550
      @nietschecrossout550 5 ปีที่แล้ว

      As a developer the downsides greatly out weight the ups of VB compared to C# as I think I have shown quite clearly, while mostly keeping clear of my personal preferences. Sorry for such a long text)

  • @SamyGaming02
    @SamyGaming02 4 ปีที่แล้ว

    is this needed to be known in this depth for a levels

    • @ComputerScienceLessons
      @ComputerScienceLessons  4 ปีที่แล้ว

      Not for the OCR course. An overview of each stage is enough. Make sure you are familiar with linking and loading too.

    • @SamyGaming02
      @SamyGaming02 4 ปีที่แล้ว

      @@ComputerScienceLessons thank you i appreciate it

  • @charlesjsescoto
    @charlesjsescoto 4 ปีที่แล้ว

    You sounds like someone on youtube

  • @kovesik
    @kovesik 5 ปีที่แล้ว +2

    Интересно, жаль что не на русском