Пікірлер
@AhsanAli-l8z4b
@AhsanAli-l8z4b 2 сағат бұрын
Great lectures
@ClarkLeovisonRey
@ClarkLeovisonRey 2 күн бұрын
Hi Dmitry, I just want to ask, is it possible to use llvm without learning c++, instead i will use C? Thank you
@DmitrySoshnikov-education
@DmitrySoshnikov-education 2 күн бұрын
@@ClarkLeovisonRey yes, there multiple bindings and APIs, for example you can use even high-level Python to generate LLVR IR - I encourage you to go through the list of the supported frameworks for this (and add a new one if needed).
@dooZyz
@dooZyz 5 күн бұрын
Hey Dmitry! I would LOVE to see a "super course" that covers everything from tokenizing, parsing, type checking (ideally with custom pass system that would allow for optimization passes), and then finally llvm generation. Would also absolutely love is the syntax were a blend of kotlin (extension functions) and typescript types (unions/intersections). Maybe even a supplementally around building an LSP around it would be absolutely wonderful.
@thisismyaim
@thisismyaim 26 күн бұрын
Where is other lessons? from 3 it jumps to 7 and no other video lessons.
@DmitrySoshnikov-education
@DmitrySoshnikov-education 25 күн бұрын
Hi @thisismyaim, you can enroll into the course here dmitrysoshnikov.com/courses/parser-from-scratch/
@eilfjhslihgasoirgh
@eilfjhslihgasoirgh 2 ай бұрын
Another advantage of static type checkers that for some reason isn't mentioned at 5:25 is that it catches some errors already at compile time and not at runtime (e.g., after you've shipped it)
@DmitrySoshnikov-education
@DmitrySoshnikov-education 2 ай бұрын
Yes, really great call out - catching as much as possible before the runtime (and ideally on the fly as you type code - especially now with AI models) is the most crucial.
@AyoDamilareMichael
@AyoDamilareMichael 2 ай бұрын
Can one use this concept to implement a register based VM? Love the way you teach, huge FAN
@luqmansen
@luqmansen 2 ай бұрын
This series is gold. Thank you ❤
@OneAndOnlyMe
@OneAndOnlyMe 2 ай бұрын
Hi, great series, but I can't seem to find parts 4, 5 and 6?
@DmitrySoshnikov-education
@DmitrySoshnikov-education 3 ай бұрын
⭐ Enroll: dmitrysoshnikov.com/courses/essentials-of-garbage-collectors/ 📚 Udemy: www.udemy.com/course/essentials-of-garbage-collectors/?referralCode=195807572A324782E881 👉 DS Education: www.dmitrysoshnikov.education/p/essentials-of-garbage-collectors
@unittestschan
@unittestschan 3 ай бұрын
Hey Dmitry I am really Enjoying your courses, can you please tell me which course I should take first to the last.
@DmitrySoshnikov-education
@DmitrySoshnikov-education 3 ай бұрын
Thanks for the feedback, glad you find the courses valuable. "Building an Interpreter" is the first for sure, and then can go to parsing. Here's more info on the recommended order: dmitrysoshnikov.com/courses/compiler-engineer-path/
@tadeohepperle7514
@tadeohepperle7514 3 ай бұрын
How to make a VM with macros.
@DmitrySoshnikov-education
@DmitrySoshnikov-education 3 ай бұрын
Marcos run at static time, i.e. before code execution. So it's not about VM really. Marco is just another sub-language, like a DSL, with its own parser, handling interpreter, etc - you just take a source text and pre-process it before actual language parser, and before the runtime.
@Hicoffeman
@Hicoffeman 3 ай бұрын
Hi, I don't know anything about math but I'm autistic and gifted, could you tell me the roadmap for Type Systems? and Compiler Design? I'm not able to differentiate these two concepts, even more so when I understand that Type System is an adaptation of Type theory for computer science... Furthermore, Type equivalence and type inference are topics covered by which of the three? btw i liked your videos!
@Hicoffeman
@Hicoffeman 3 ай бұрын
oh, Also, Type checking and Type inference are from Type theory or Type Systems and Compiler design?
@DmitrySoshnikov-education
@DmitrySoshnikov-education 3 ай бұрын
Hi Hicoffeman, glad to see a genuine interest in the topics! In general Type Systems (being part of Type Theory) may be independent from Compiler Design. For example, you can design a "compiler" not having any "types". The Type Theory is a problem of categorization and standardization - closer to compilers it mainly used to define data types and operations on them. A typechecker can be static (that is, able to reason about types w/o code execution), or dynamic - enforcing types at runtime and also used for storage allocation. Type Inference is extension of Type Checking, and works with a set of constraints for inferred types. I recommend starting from the "Building an Interpreter from scratch" course (aka "Essentials of Interpretation" - it does an overview of a lot of concepts). Also, here's the recommended order of courses: dmitrysoshnikov.com/courses/compiler-engineer-path/
@LawrenceJudith-h1k
@LawrenceJudith-h1k 3 ай бұрын
Rowe Glens
@DmitrySoshnikov-education
@DmitrySoshnikov-education 3 ай бұрын
⭐ Enroll: dmitrysoshnikov.com/courses/programming-language-with-llvm/ 📚 Udemy: www.udemy.com/course/programming-language-with-llvm/?referralCode=518B2E26C835654F8939 👉 DS Education: www.dmitrysoshnikov.education/p/programming-language-with-llvm/ 📚 In which order to take my courses: dmitrysoshnikov.com/courses/compiler-engineer-path/
@Ilya-hi9xq
@Ilya-hi9xq 4 ай бұрын
здравствуйте,подскажите,пожалуйста,а как установить llvm/IR на windows? я скачал llvm с оф. сайта,но при попытке сделать include этих библиотек,ide не может их найти
@h4wk_0
@h4wk_0 4 ай бұрын
ты пофиксил или нет?
@Ilya-hi9xq
@Ilya-hi9xq 4 ай бұрын
@@h4wk_0 пофиксил
@jeanprunoluff160
@jeanprunoluff160 4 ай бұрын
Слишком годно для открытого контента, особенно по llvm))))
@DmitrySoshnikov-education
@DmitrySoshnikov-education 4 ай бұрын
Спасибо за отзыв, рад что курсы полезны!
@mohamedalitoure9696
@mohamedalitoure9696 4 ай бұрын
Thank 🙏🙏
@andychristiansson1444
@andychristiansson1444 5 ай бұрын
Great series! Just one thing in this episode; you never initialize sp. Adding the line ```sp = &stack[0];``` to the top of the exec() function in EvaVM.h fixes the issue. Thanks for making these! :)
@andychristiansson1444
@andychristiansson1444 5 ай бұрын
(nine minutes later) Ah, and it was the first thing you did in the following episode. Very well! :D
@DmitrySoshnikov-education
@DmitrySoshnikov-education 5 ай бұрын
Thanks for the feedback, and glad the courses are useful! yes, typos sometimes happen in the coding sessions, so we do live-debugging and update as we go - that's why it's building from scratch :)
@ZapOKill
@ZapOKill 5 ай бұрын
Although the course is structural equivalent to the first 3 chapters of "Compilers - Principles, Techniques, and Tools" from Aho et al., it is a very good course and adds very useful practical components to the book. So I recommend it in addition to all students of the book. ... but I'am missing the reference to the book in the description (on all platforms).
@bmno.4565
@bmno.4565 5 ай бұрын
Thanks for the video, i'm writing a json parser in python for funzies, watching the computerphile video left me with more questions than answers.
@ivandrofly
@ivandrofly 5 ай бұрын
4:24
@henriquemaulerborges1390
@henriquemaulerborges1390 6 ай бұрын
This is a teasure man, thank you
@michaelotu9723
@michaelotu9723 6 ай бұрын
I was going to subscribe but I have subscribed already...
@LoveNew-r1f
@LoveNew-r1f 6 ай бұрын
Can we discuss regarding your udemy course
@DmitrySoshnikov-education
@DmitrySoshnikov-education 6 ай бұрын
feel free to reach out via email
@benedictsong892
@benedictsong892 6 ай бұрын
what code editor are you using?
@DmitrySoshnikov-education
@DmitrySoshnikov-education 6 ай бұрын
@@benedictsong892 this is Sublime Text
@AyoDamilareMichael
@AyoDamilareMichael 6 ай бұрын
Hey Dimtry 👋, you said you were working on a new course about LLM(s). When are they coming?
@xuanthanhtraninh642
@xuanthanhtraninh642 6 ай бұрын
Useful and tremendous knowledge! Thanks for sharing.
@DmitrySoshnikov-education
@DmitrySoshnikov-education 7 ай бұрын
⭐ *New Coupons:* www.dmitrysoshnikov.education/p/parser-from-scratch/?coupon_code=RDP5_29 | www.udemy.com/course/parser-from-scratch/?couponCode=EF968F0D3A9E74891DDC
@sohansingh2022
@sohansingh2022 7 ай бұрын
Thank you ❤
@kilianciuffolo
@kilianciuffolo 7 ай бұрын
I think this would have been 10x more helpful if the actual language implemented was something very basic. It's increasing the cognitive load for the topic. The search on youtube continues!
@IshakHeor
@IshakHeor 7 ай бұрын
Have not been able to get the code from your blog working on this topic, when trying to get the roots, it returns various nodes
@michaeljenner
@michaeljenner 7 ай бұрын
Great video-series! May I ask what software you used for the presentations?
@DmitrySoshnikov-education
@DmitrySoshnikov-education 7 ай бұрын
Thanks for the feedback, glad you like it! This is done as combination of Sublime, Good Notes, live editing on iPad, etc.
@codeking4585
@codeking4585 8 ай бұрын
Hey can you make some tutorial on MLIR??
@DmitrySoshnikov-education
@DmitrySoshnikov-education 8 ай бұрын
Yes, there may be a follow up on different IR formats , as extensions to this course.
@robertotrevino638
@robertotrevino638 8 ай бұрын
hi!! great course!! I just started watching this one and I'm amazed at how well you explain. Also, what is the sl command you run at 9:16? Thank you very much!
@DmitrySoshnikov-education
@DmitrySoshnikov-education 8 ай бұрын
Thanks for the feedback, glad it's useful! The `sl` command is just my shortcut alias to open Sublime Text editor, but you can use any IDE or editor for this.
@jakesnell7707
@jakesnell7707 8 ай бұрын
Hey! I watched your videos on parsing, very cool that you also have a series on LLVM. Thank you!
@nihttoter3240
@nihttoter3240 9 ай бұрын
А по-русски тоже самое есть?
@DmitrySoshnikov-education
@DmitrySoshnikov-education 9 ай бұрын
⭐ *Enroll:* dmitrysoshnikov.com/courses/essentials-of-interpretation/ 📚 *Udemy:* www.udemy.com/course/essentials-of-interpretation/?referralCode=E7D6C9ADFCA273A53950 👉 *DS Education:* www.dmitrysoshnikov.education/p/essentials-of-interpretation 👍 *All courses:* www.dmitrysoshnikov.education/p/programming-languages-ultimate-bundle-3rd-edition
@DmitrySoshnikov-education
@DmitrySoshnikov-education 9 ай бұрын
⭐ Enroll: dmitrysoshnikov.com/courses/parsing-algorithms/ 📚 Udemy: www.udemy.com/course/essentials-of-parsing/?referralCode=D9DAAEB91A879B61D94F 👉 DS Education: www.dmitrysoshnikov.education/p/essentials-of-parsing
@DmitrySoshnikov-education
@DmitrySoshnikov-education 9 ай бұрын
⭐ *Enroll:* dmitrysoshnikov.com/courses/parser-from-scratch/ 👉 *DS Education:* www.dmitrysoshnikov.education/p/parser-from-scratch/ 📚 *Udemy:* www.udemy.com/course/parser-from-scratch/?referralCode=E3BF78C54F214B02775E 👍 *All courses:* www.dmitrysoshnikov.education/p/programming-languages-ultimate-bundle-3rd-edition 📚 In which order to take my courses: dmitrysoshnikov.com/courses/compiler-engineer-path/
@DmitrySoshnikov-education
@DmitrySoshnikov-education 9 ай бұрын
⭐ *Enroll:* dmitrysoshnikov.com/courses/virtual-machine/ 📚 *Udemy:* www.udemy.com/course/virtual-machine/?referralCode=31F36F8B92A8129A16F7 👉 *DS Education:* www.dmitrysoshnikov.education/p/virtual-machine
@DmitrySoshnikov-education
@DmitrySoshnikov-education 9 ай бұрын
⭐ *Enroll:* dmitrysoshnikov.com/courses/typechecker/ 👉 *DS Education:* www.dmitrysoshnikov.education/p/typechecker/ 📚 In which order to take my courses: dmitrysoshnikov.com/courses/compiler-engineer-path/
@DmitrySoshnikov-education
@DmitrySoshnikov-education 9 ай бұрын
⭐ Enroll: dmitrysoshnikov.com/courses/transpiler-from-scratch/ 👉 DS Education: www.dmitrysoshnikov.education/p/transpiler-from-scratch 👍 Udemy: www.udemy.com/course/transpiler-from-scratch/?referralCode=0548270DBC5E06A857FB 📚 In which order to take my courses: dmitrysoshnikov.com/courses/compiler-engineer-path/
@fb-gu2er
@fb-gu2er 9 ай бұрын
Where can I find lectures 5-18?
@Fernando-s4m1k
@Fernando-s4m1k 10 ай бұрын
your udemy course is too expensive
@DmitrySoshnikov-education
@DmitrySoshnikov-education 10 ай бұрын
Marketing may run different options, but also recommend checking the dmitrysoshnikov.com - there are coupons coming up periodically (there are new coupons available now!).
@JEsterCW
@JEsterCW 5 күн бұрын
Rich knowledge is expensive 🫰
@SwapnilSoni
@SwapnilSoni 10 ай бұрын
Found this gold channel 🚀 please keep uploading
10 ай бұрын
Hey man I love the videos. Where is the second video ?
@DmitrySoshnikov-education
@DmitrySoshnikov-education 10 ай бұрын
Hi German, you can enroll in this course here: dmitrysoshnikov.com/courses/essentials-of-interpretation/
@abderrezaktrouzine139
@abderrezaktrouzine139 10 ай бұрын
What are "eva" and "typed eva"?
@DmitrySoshnikov-education
@DmitrySoshnikov-education 10 ай бұрын
Eva is the programming language we build in this series of course. I recommend starting from the "Building an Interpreter" and also exploring typed version of Eva in the "Building a Typechecker".
@abderrezaktrouzine139
@abderrezaktrouzine139 10 ай бұрын
Thank you for your reply and instructions. Congratulatios for the valuable knowledge you're spreading and the competently presented explanations you're including. I wish you all the best.
@dherosoen
@dherosoen 11 ай бұрын
Should have explained semantic action and its syntax better.
@ximin_sleepy
@ximin_sleepy 11 ай бұрын
Hi could you do some tutorial on llvm optimizations, things like loop and slp vectorizations