tree-sitter explained

แชร์
ฝัง

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

  • @esclavodeluna8000
    @esclavodeluna8000 8 หลายเดือนก่อน +123

    Why does tree sitter sound like an insult

    • @Fafr
      @Fafr 5 หลายเดือนก่อน

      Treeshitter

    • @unsigned_var
      @unsigned_var 2 หลายเดือนก่อน

      Don't be such a tree sitter, man

    • @l30n.marin3r0
      @l30n.marin3r0 หลายเดือนก่อน

      It does sound like an insult xD

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

      cuz of bush camper?😂

  • @caschque7242
    @caschque7242 8 หลายเดือนก่อน +60

    Your videos are impressive. I think the value comes from explaining one topic so one understands, how it works on an intuitive level while keeping the video short.

  • @radvilardian740
    @radvilardian740 8 หลายเดือนก่อน +150

    I stop before continuing watching. Thank God for having you. I want to know more about this treesitter. I hope we have series for treesitter.

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน +37

      hoping to do longer video later, will take some time to put together

    • @hazmat86
      @hazmat86 8 หลายเดือนก่อน

      ​@@teej_dv if only you would do a long length video about tree sitter, feels like you did though, like recently, ehhhh......guess not, must be losing it....BLAZINGLY CRAZY!

    • @peteruelimaa4973
      @peteruelimaa4973 27 วันที่ผ่านมา +1

      I mean you could read the docs. You'll know more than you ever could from watching videos. Reading documentation has become a superpower.

  • @silentobserver9095
    @silentobserver9095 8 หลายเดือนก่อน +25

    I never comment on any TH-cam videos.... but damn, this video was really great. Not only did you talk about an interesting topic but also explained it extremely well.
    Please keep on releasing more of these videos. We need content creators like you.

  • @Richetechguy
    @Richetechguy 8 หลายเดือนก่อน +24

    Great stuff, keep it up your kickstart vid has helped me out a lot on getting back into Neovim fully.

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน +3

      Thanks!! glad to hear it :)

  • @mattwilly7959
    @mattwilly7959 8 หลายเดือนก่อน +2

    This makes a lot more sense now. Really like how you break things down in a simple way. It makes it a lot easier to understand concepts.

  • @Tntpker
    @Tntpker 8 หลายเดือนก่อน +7

    I actually used tree-sitter in a project a while ago making a LS for a DSL. It worked pretty well and had auto-complete, hover, signature help, and syntax error highlights. However, tree-sitter's error recovery ability still remains a problem to make it a viable tool for creating LSs.

  • @TankorSmash
    @TankorSmash 8 หลายเดือนก่อน +10

    Haskell slander aside, this was amazing! I can't believe how much of ts you explained, along with giving clear usecases and examples right into vim. Thanks for putting this out!

  • @vojtastruhar8950
    @vojtastruhar8950 8 หลายเดือนก่อน +4

    What blows my mind is that it downloads some C files, COMPILES THEM and then runs them nice and fast and natively. Great stuff

  • @jR-tm3ko
    @jR-tm3ko 8 หลายเดือนก่อน +7

    The quality of each video you put out just gets better and better. Thank you!

  • @martinocrespoalvarez4663
    @martinocrespoalvarez4663 6 หลายเดือนก่อน +2

    I'm really jealous about the way this guy expresses ideas and concepts. Huge, huge fan!

  • @slim_mike
    @slim_mike 4 หลายเดือนก่อน +1

    blown away in peices after seeing this video, I'm still recovering. This is very impresive, I want to learn scheme now

  • @roberto8016
    @roberto8016 8 หลายเดือนก่อน +6

    I didn't know tree-sitter uses JDSL, Tom is indeed a genius

  • @ParanoidxProd
    @ParanoidxProd 8 หลายเดือนก่อน +19

    I would love a more in depth video on writing grammar, and more specific scanner. Been diving into writing grammars lately and so appreciate the content!

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน +9

      ya, might do longer video of this later -- will have to be way longer haha

  • @Jscodin
    @Jscodin 8 หลายเดือนก่อน +2

    You really have a great way of explaining things in a way that anyone can understand, even beginners like myself - this was very interesting and informative, looking forward to the next explainer

  • @meatcow417
    @meatcow417 7 หลายเดือนก่อน +1

    Pulled me in with the trees in the thumbnail, stayed for the solid explanations. Thanks man!

  • @jasonschannel
    @jasonschannel 8 หลายเดือนก่อน +4

    Followed after the LSP video, and now I get this! The top quality explainers just keep coming! Thanks TJ!

  • @LokeshKrishna1995
    @LokeshKrishna1995 8 หลายเดือนก่อน +2

    Bless you for your fantastic explainers and all your work on Neovim. Huge fan!

  • @megaxlrful
    @megaxlrful 8 หลายเดือนก่อน

    This is a great explainer on Treesitter. I used Atom in the past, switched to Vim then Neovim. I knew what treesitter did inside neovim, and heard that it is the best one at its job but never really understood what is soo good about it.

  • @intimidate123
    @intimidate123 7 หลายเดือนก่อน +1

    Great video TJ! really enjoy how you break everything down, makes it easy to understand and learn

  • @wadechang
    @wadechang 5 หลายเดือนก่อน

    First time in my life I feel like I understand what treesitter is. Hats off!

  • @funkdefied1
    @funkdefied1 8 หลายเดือนก่อน

    Man this is dope. I never thought to try to understand LSPs and the parsers powering them. It was all just magic.

  • @sandeepvk
    @sandeepvk 8 หลายเดือนก่อน

    Have never understood the REAL difference between LLM, LSP and treesitter. This video was very useful

  • @rom1detroyes143
    @rom1detroyes143 8 หลายเดือนก่อน

    I still don't really know what I can do with tree-sitter, but now I know what and how it does this thing in Neovim : great knowledge sharing, thanx :-)

  • @codetothemoon
    @codetothemoon 8 หลายเดือนก่อน +1

    Incredible. Cleared up a ton of confusion for me. Thank you!

  • @johnathonme
    @johnathonme 5 หลายเดือนก่อน

    Great video, thanks!!! Just the right amount of depth and standing while presenting was extra engaging!

  • @xcuu
    @xcuu 8 หลายเดือนก่อน +1

    These videos are really great TJ, please keep them coming!

  • @MalakaiPrograms
    @MalakaiPrograms 8 หลายเดือนก่อน

    Love this video. Recently had to edit the grammar for a semi-obscure language as it was missing features and loved how simple it was. I mean it still took me 4 hours because I didn't know anything about tree-sitter but I wish I saw this video before then, it would have been so much help! Keep it up!

  • @Jojor11
    @Jojor11 8 หลายเดือนก่อน

    I had the ideas but this really helped me connect them together… treesitter really is extremely powerful and I’m already getting ideas of cool things I could use it for if I learn it a bit

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน +1

      So great to hear!! thanks for the nice words :)

  • @gmchris4113
    @gmchris4113 8 หลายเดือนก่อน

    This was dense. I'll be honest, a lot of it went right over my head as I'm starting to learn now, but I hope to return in time and realize it all makes sense 😅.
    Great content, I love the educational stuff. Keep it up.

  • @rddavies
    @rddavies 8 หลายเดือนก่อน

    You're a truly gifted teacher among your many other talents.

  • @yakomisar
    @yakomisar 8 หลายเดือนก่อน

    TJ your presentations skill is a masterpiece

  • @PrestonThorpe-d1x
    @PrestonThorpe-d1x 8 หลายเดือนก่อน +1

    TJ you're my new favorite youtuber/content creator. I really hope the full time thing works out for you, good luck. Definitely need more videos like these. Also now I hope you are able finish the interpreter in OCaml series one day :D

  • @maxnrm
    @maxnrm 2 หลายเดือนก่อน

    I'm on the journey of configuring neovim from scratch, this is second video I watched, first one was about Abstract Syntax Tree. I think I would be able to set up neovim in under 100 hours. Probably a 5-8 videos more and after that practice for 80 hours. Then finally I would be able to use neovim how I like.

  • @rastko614
    @rastko614 8 หลายเดือนก่อน

    Really cool video. Thank you for showing us behind the curtain!

  • @JosephMcMurray1984
    @JosephMcMurray1984 8 หลายเดือนก่อน

    You know this video is going to be good when Teej brings out the blazer.

  • @amirhoseinfarhadi2268
    @amirhoseinfarhadi2268 8 หลายเดือนก่อน

    I really love this new wave of content from you champ 👍🏻

  • @droydi
    @droydi 8 หลายเดือนก่อน

    Godlike TJ, well done once again with the explanations, more of this!

  • @jong.4864
    @jong.4864 8 หลายเดือนก่อน +2

    This guy is a machine!! Def much better than that netflix-btw-guy

    • @jimshtepa5423
      @jimshtepa5423 8 หลายเดือนก่อน

      who ends his streams thinking we know his name))

  • @accumulator4825
    @accumulator4825 3 หลายเดือนก่อน

    Really good explanation, thank you for the knowledge!!!

  • @Luna-lp9op
    @Luna-lp9op 8 หลายเดือนก่อน

    "isn't that outdated and illegal now" not proud to understand that joke because i'm chronically online

  • @joaomsa
    @joaomsa 8 หลายเดือนก่อน

    Great video, lots of cool tools built around the ecosystem like ast-grep

  • @marianouvalle895
    @marianouvalle895 8 หลายเดือนก่อน +1

    Amazing stuff Teej, keep it up!

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน

      Thanks :) :)

  • @faraonch
    @faraonch 7 หลายเดือนก่อน

    Very well explained. Although, as a Mac power user it's still hard to overcome all the entry barriers. It's too easy to forget all the needed fundamentals that are needed to switch to neo vim. (as an active freelancer working on projects)

  • @mjhika
    @mjhika 8 หลายเดือนก่อน +1

    LISP MENTIONED LISP MENTIONED LISP MENTIONED LISP MENTIONED LISP MENTIONED

  • @ivandenysenko
    @ivandenysenko 4 หลายเดือนก่อน

    Thank you for such an awesome explanation!

  • @sarojregmi200
    @sarojregmi200 8 หลายเดือนก่อน

    Future Nile will admire you more than anyone.
    Great video.
    Ignore the spelling mistakes if any.

  • @ka9dgx
    @ka9dgx หลายเดือนก่อน

    Well, that certainly was an excellent explanation of something I didn't know I needed to know. Thanks!
    Maybe now I'll find out what an LSP is... ;-)

  • @RustFlow223
    @RustFlow223 6 หลายเดือนก่อน

    Man your explanation sound great! Keep going!

  • @SalvaToroTorus
    @SalvaToroTorus 8 หลายเดือนก่อน

    Nice stuff. You explain things really well.

  • @darkenblade986
    @darkenblade986 8 หลายเดือนก่อน

    i am loving these videos. really great info!

  • @sparkhum
    @sparkhum 8 หลายเดือนก่อน

    This was awesome. Thanks for the explanations!

  • @M0K0K0
    @M0K0K0 8 หลายเดือนก่อน

    Bro it's late and I was like "tree sitter ? Wtf would you like someone to watch over a tree for you ?" and I feel very stupid now

  • @WinterSchwartz-q2j
    @WinterSchwartz-q2j 8 หลายเดือนก่อน

    I hate the rest of the internet. Nobody else seemed to care about explaining what everything i was installing was doing and just that i should install it. This really, really sucks while ur trying to configure neovim on your own for the first time. Please keep it up < 3

  • @gobdovan
    @gobdovan 8 หลายเดือนก่อน +1

    I thought this video is about how to do a job where you clean and water the trees when the tree owner isn't home.

  • @MrSpyTubes
    @MrSpyTubes 8 หลายเดือนก่อน +1

    Great job man! Keep up the good work!

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน

      Thanks :)

  • @andrewrush7667
    @andrewrush7667 8 หลายเดือนก่อน

    Sharp sports coat, very professional!

  • @nemethda
    @nemethda 8 หลายเดือนก่อน

    To the point, simply brilliant

  • @NStripleseven
    @NStripleseven 8 หลายเดือนก่อน

    The bit that I was really interested in is how the tree sitter determines what the “least number of errors” is for a given invalid program. Looks like it was never covered but I’m still curious.

  • @PotatoGameDev
    @PotatoGameDev 8 หลายเดือนก่อน

    You are a good human, TJ.

  • @kublaios
    @kublaios 4 หลายเดือนก่อน

    I trust this man because he's wearing a PhD jacket

  • @hamzarashid7579
    @hamzarashid7579 8 หลายเดือนก่อน

    You forgot to say:
    Hopefully this video was suitable.

  • @TroubleChute
    @TroubleChute 8 หลายเดือนก่อน +1

    What would we do without trees*itter

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน +1

      we would not be sitting on the trees

  • @alexandrostsagkaropoulos
    @alexandrostsagkaropoulos 8 หลายเดือนก่อน

    That is as close to art as it can be

  • @je12emy
    @je12emy 8 หลายเดือนก่อน

    Great video, thank you, TJ!

  • @alexandersemionov5790
    @alexandersemionov5790 8 หลายเดือนก่อน

    He's going corporate, oh no the suit

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน

      You can than twitch chat for that

  • @mishydevil
    @mishydevil 8 หลายเดือนก่อน

    Teej wearing a jacket, must be a serious video

  • @TeamDman
    @TeamDman 8 หลายเดือนก่อน

    Eloquently explained!

  • @StephenRayner
    @StephenRayner 3 หลายเดือนก่อน

    Subbed, this was very good thank you.

  • @astrocat97
    @astrocat97 2 หลายเดือนก่อน

    I hear LSP and I think Lumpy Space Princess from Adventure Time

  • @davidsicilia5316
    @davidsicilia5316 8 หลายเดือนก่อน

    Thanks for this, very helpful video

  • @rasmusravnandersen5788
    @rasmusravnandersen5788 7 หลายเดือนก่อน

    Omg, what a great explanation!

  • @nightshade427
    @nightshade427 8 หลายเดือนก่อน

    Great video and explanation as always

  • @PPo2
    @PPo2 8 หลายเดือนก่อน +1

    Ayyy helix mentioned!

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน

      very cool editor!

  • @LeonOrmes
    @LeonOrmes 3 หลายเดือนก่อน

    How the heebeejeebies do you know so much??! Great video, again.

  • @RazoBeckett.
    @RazoBeckett. 8 หลายเดือนก่อน +1

    tree-stander

  • @Linuxdirk
    @Linuxdirk 8 หลายเดือนก่อน

    I wish it was easier to create own custom parsers and stuff, so it’s as easy to add tree-sitter syntax highlights than it was with old Vimscript.

  • @JoshuaLonsako
    @JoshuaLonsako 8 หลายเดือนก่อน

    Dude you're on a roll

  • @liamwoodleigh
    @liamwoodleigh 8 หลายเดือนก่อน

    Great video Teej!

  • @ElvenSpellmaker
    @ElvenSpellmaker 8 หลายเดือนก่อน

    Vscode seem to be discussing potentially moving to treesitter from textmate grammars, it'll be a loooong time though.

  • @viniciusataidedealbuquerqu2837
    @viniciusataidedealbuquerqu2837 3 หลายเดือนก่อน

    this looks like a logical expression query language 10:48

  • @EmiNNsoNify
    @EmiNNsoNify 8 หลายเดือนก่อน +1

    Amazing thumbnail !

  • @GeorgeTsiros
    @GeorgeTsiros 8 หลายเดือนก่อน

    Basically, semi-structured editing.

  • @arthur-zhuk
    @arthur-zhuk 8 หลายเดือนก่อน

    high value content

  • @havocthehobbit
    @havocthehobbit 8 หลายเดือนก่อน

    Great explanation .I had no idea I was building something that already existed , Iv been writing a language query system in rust ... I just have no interest in having to go back to C or train someone else in C to be able to use tree sitter building new language libraries for tree sitter to use .
    I'd love to know the learning curve with tree sitter when building a language parser for a new language that hasnt been done or shared with it .

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน +1

      You don't write c when you use tree sitter. You write the grammar in js and you usually have language bindings already in other langs.

    • @havocthehobbit
      @havocthehobbit 8 หลายเดือนก่อน

      @@teej_dvOK that sounds interesting , so basically tell it the syntax and structure or and using javascript to create a grammar , then I could use rust bindings if I wanted to read or compile that grammar into something consumable.
      I was under the impression I had to use C to write and compile that grammer into a library that uses C lib exports for bindings, so that I could then consume it with a Language like Rust or whatever Lang to be able to query what it parses...
      So it sounds like a 2 stage approach versus the 3 phase approach I was thinking . Which means I dont need to use C at all.

  • @ranjithkumar-xt2zw
    @ranjithkumar-xt2zw 8 หลายเดือนก่อน

    I watched this 10 times yesterday stream 😂😂😂

  • @michaeletzkorn
    @michaeletzkorn 8 หลายเดือนก่อน

    I could be wrong because some of the information went over my head, but it sounds like treesitter is a file syntax parser and NOT a babysitter for trees.

  • @Quacky_Batak
    @Quacky_Batak 8 หลายเดือนก่อน

    Now I want you to make next video in full tuxedo

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน

      haha i'll think about it

  • @hyltoncarboo8303
    @hyltoncarboo8303 8 หลายเดือนก่อน +1

    You are a gem!

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน

  • @ethernet764
    @ethernet764 7 หลายเดือนก่อน

    3:38 oof. I didn't come here to be roasted 😭

  • @frydac
    @frydac 8 หลายเดือนก่อน

    This is the stuff, thanks!

  • @Ancipital_
    @Ancipital_ 7 หลายเดือนก่อน

    Thanks, Teej.

  • @FaintArt
    @FaintArt 8 หลายเดือนก่อน

    cool video man, keep it up!!!

  • @hechuan5075
    @hechuan5075 8 หลายเดือนก่อน +1

    any chance you could do an indepth LSP video, i watched the dedicated one but would like to learn more about the capabilities and handlers

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน +2

      yes, i'm planning an entire video of writing a complete lsp from scratch

    • @hechuan5075
      @hechuan5075 8 หลายเดือนก่อน

      @@teej_dvthank you than you

  • @1000cuts
    @1000cuts 8 หลายเดือนก่อน +1

    fun fact: this video was recorded in a single take, that too first try

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน +1

      haha well... the one take is true... first try... almost

  • @remrevo3944
    @remrevo3944 8 หลายเดือนก่อน +1

    First!
    (Was watching the stream and read the URL before publish.)

    •  8 หลายเดือนก่อน

      You cheat.

    • @remrevo3944
      @remrevo3944 8 หลายเดือนก่อน +1

      @Benefits of watching the stream and making fast screen shots!

    •  8 หลายเดือนก่อน

      ​@remrevo3944 😂

    •  8 หลายเดือนก่อน

      @@remrevo3944 😂

    • @teej_dv
      @teej_dv  8 หลายเดือนก่อน +1

      very smart move. big brain

  • @voldllc9621
    @voldllc9621 4 หลายเดือนก่อน +2

    Tresitter is clearly a tokenizer and lexical analyzer, on top of you have some productions that are general enough to build branches in the syntax tree such as braces aaround a list without committing to specific languages. Am I on the right track track here?

  • @Felipe-53
    @Felipe-53 8 หลายเดือนก่อน

    You are awesome, congratss great vid 🎉🎉

  • @JordanShurmer
    @JordanShurmer 8 หลายเดือนก่อน

    you should try a different material sports coat. Tweed or Linen perhaps

  • @latch909
    @latch909 8 หลายเดือนก่อน

    another banger