Compilers: Theory and Practice

share ›
‹ links

Below are the top discussions from Reddit that mention this online Udacity course.

This course teaches the theory and practice behind building compilers for higher level programming languages.

Reddacity may receive an affiliate commission if you enroll in a paid course after using these buttons to visit Udacity. Thank you for using these buttons to support Reddacity.

Reddit Posts and Comments

0 posts • 5 mentions • top 4 shown below

r/compsci • comment
2 points • TheApadayo

https://www.udacity.com/course/compilers-theory-and-practice--ud168

The first half of this course goes over the front end of a compiler which is what you want to write. It doesn’t contain any LLVM specifics but honestly that part shouldn’t be hard and is covered by many different tutorials around the web. The hard part is implementing the parsing, semantic analysis, and code lowering.

Also, interfacing with LLVM is it’s own task that shouldn’t even be bothered with until you have the rest of the front end working to some degree.

r/cpp • comment
2 points • slayerizer

PS: I'm just here trying to provide extra help, I have/receive no benefits from posting these links. I like the content that Bisqwit produces and wanted to help him reach a bigger audience.

PS #2, feel free to annotate the content, I didn't sit down and watch the whole content of each links, I just made sure they were in english (which is also not my native language).

I found a free course (which I have not taken) that might be of interest:

compilers-theory-and-practice--ud168

Description of the course

Front End

  • Compiler Phases

  • Scanners & Parsers

  • Semantic Analysis

Middle End

  • Syntax Directed Translation

  • Control Structures and Back-patching

  • Function and Procedure Calls & Runtime Organization

Back-end

  • Register Allocation & Instruction Selection

  • Code layout and Code Generation

  • Brief Introduction to Code Optimization

Cheers!

r/csMajors • comment
1 points • JTGhawk137

https://www.udacity.com/course/compilers-theory-and-practice--ud168

r/learnprogramming • comment
1 points • dmazzoni

If you're still a beginner, don't worry about this too much and focus on learning the language.

As you get more comfortable programming, any Computer Science program will have a class on Compilers that will cover this. Here's an example you could take online: https://www.udacity.com/course/compilers-theory-and-practice--ud168

Once you know Compilers you'd be able to start diving into the source code for an actual compiler. Note that these projects are huge, though - GCC is more than 15 million lines of code. Nobody understands the whole thing. People who work on it tend to specialize, like people who focus on parsing, linking, the standard library, the optimizer, different processor back-ends, and so on.

​