4 ms·
BTW, can anyone please suggest a good online compiler course for creating your own programming language with labs/exams/certs? I can find pretty good courses fo
by bitL 9y ago
BTW, can anyone please suggest a good online compiler course for creating your own programming language with labs/exams/certs? I can find pretty good courses for almost anything but not for compilers... Something that would focus on handling grammar (LALR, LL, CYK etc), ASTs, semantics, types, code-completion, imperative/OOP/functional/logical/self-modifying constructs etc. or even NLP-to-AST conversion...
- piemonkey 9y agoAlex Aiken has a very nice course: http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=Compilers http://openclassroom.stanford.edu/MainFolder/CoursePage.php?...
- sn9 9y agoYou can find this on Stanford Lagunita in a MOOC format.
- kerkeslager 9y agoMatt Might doesn't have an organized course for free online, but I found that his blog filled in a lot of the gaps for me between compiling a language like C, and a more modern language like Scheme or Python, which are missing from other resources I've found online. You'll have to click around to different posts, but here's a good starting point: http://matt.might.net/articles/compiling-scheme-to-c/ http://matt.might.net/articles/compiling-scheme-to-c/
- DonaldPShimoda 9y agoWell... he kind of does, actually! http://matt.might.net/teaching/compilers/spring-2015/ http://matt.might.net/teaching/compilers/spring-2015/
- kerkeslager 9y agoAwesome! Thanks for that.
- jpolitz 9y agoMy compilers course has all the lectures recorded, and has starter code for all the assignments provided. It provides all the parsers, and focuses on the backend, including memory management and various details of value representations. This is just my materials, I don't have an associated platform with verification/certification. However, some folks from HN have previously done the course and emailed me after, and seem to have gotten some value out of it. https://cseweb.ucsd.edu/classes/sp17/cse131-a/ https://cseweb.ucsd.edu/classes/sp17/cse131-a/ https://podcast.ucsd.edu/podcasts/default.aspx?PodcastId=4014 https://podcast.ucsd.edu/podcasts/default.aspx?PodcastId=401... https://github.com/ucsd-cse131-sp17 https://github.com/ucsd-cse131-sp17 Earlier offering: https://www.cs.swarthmore.edu/~jpolitz/cs75/s16/ https://www.cs.swarthmore.edu/~jpolitz/cs75/s16/
- rmusial 9y agoThanks for this, this looks amazing
- gilmi 9y agoI'm using the earlier offering of your course and another[0] to learn about compilers for a while now and it's the only method that really clicked for me. Thank you very much for making this open! [0]: http://www.ccs.neu.edu/course/cs4410 http://www.ccs.neu.edu/course/cs4410
- jpolitz 9y agoBen Lerner did a great job writing notes [0] for his version, which are super helpful if you prefer reading to videos. [0] https://course.ccs.neu.edu/cs4410/#%28part._lectures%29 https://course.ccs.neu.edu/cs4410/#%28part._lectures%29
- gilmi 9y agoDefinitely! They are really well done and actually worked better for me than videos. Unfortunately they only cover the first half of the course.
- 9y ago
- dochtman 9y agoI liked the Stanford course given by Aiken, on Coursera: https://dirkjan.ochtman.nl/writing/2012/07/21/compilers-on-coursera.html https://dirkjan.ochtman.nl/writing/2012/07/21/compilers-on-c... Also, if you like this sort of thing, my compiler in Python that compiles to LLVM IR might be interesting: https://github.com/djc/runa https://github.com/djc/runa
- dipper 9y agoMost of this stuff flew over my head. While I understand C, this stiff feels out of grasp. Can anybody also please suggest recommended reading for beginners?