autodidaktische Compilerkurse / gute einführende Compilerbücher?

8

Kennt jemand Online-Vorlesungen / Vorlesungen, die einen typischen Compiler-Kurs beinhalten? Ich hatte eine Computer-Theorie, aber leider hat meine Schule keinen Kurs in Compiler-Konstruktion angeboten.

Ich weiß, dass da draußen Vorlesungen sind; Ich habe auf Empfehlungen für besonders gute Angebote gehofft.

Gibt es Bücher für Anfänger auf dem Feld? Zumindest etwas außer dem Drachenbuch. Anfänger Niveau ist in Ordnung, ich weiß, dass es viele fortgeschrittene Texte auf dem Markt gibt.

Danke!

    
larryq 13.10.2009, 06:28
quelle

3 Antworten

8

Bearbeiten : Falls diese SO-Fragen nicht geschlossen werden, überprüfen Sie doppelte SO-Veröffentlichung , die die Frage viel ausführlicher beantwortet.

Ein paar Ressourcen auf der OpenCourseWare-Site von MIT:

6.035 Computersprachen-Engineering
6.827 Multithread-Parallelität: Sprachen und Compiler

Ersteres wahrscheinlich nach dem, was Sie vorhatten. Es enthält auch einige der Videos der Vorträge.
Letzteres ... positiv ein Graduate-Level-Kurs. Außerdem liegt der Schwerpunkt mehr auf Multithreading als auf der traditionellen Kompilierungskette. (Aber andererseits, um Code-Threads effizient zu chunken, muss man die Semantik, die im ursprünglichen Programm ausgedrückt wird, gut verstehen ...)

    
mjv 13.10.2009, 06:55
quelle
5

Sie können diesen Kurs besuchen: Ссылка

  

Kursinformationen

     

High-Level-Programmiersprachen wie   Python macht die Programmierung zum Kinderspiel, aber   wie arbeiten Sie? Da ist eine große Lücke   zwischen Python und Maschine   Anweisungen für moderne Computer.   Erfahren Sie, wie Sie Python-Programme übersetzen   den ganzen Weg zu Intel x86-Assembly   Sprache.

     

Die meisten Compilerkurse vermitteln eine Phase   des Compilers zu einer Zeit, wie z   Analyse, semantische Analyse und   Registerzuordnung. Das Problem mit   Dieser Ansatz ist schwierig   verstehe, wie der ganze Compiler passt   zusammen und warum jede Phase ist   so konzipiert wie es ist. Stattdessen jeder   Woche implementieren wir sukzessive   größere Teilmenge der Python-Sprache.   Die allererste Teilmenge ist eine winzige   Sprache der arithmetischen Aussagen, und   Zu der Zeit sind wir fertig mit der Sprache   enthält Objekte, Vererbung und   erstklassige Funktionen.

     

Voraussetzungen: Fließend in mindestens einem   Programmiersprache (Java, C, C ++,   Python usw.). Studenten werden viel tun   der Programmierung in Python, aber vorher   Kenntnisse von Python sind nicht erforderlich.   Der Kurs beginnt mit einem Absturz   Kurs auf Python und Python ist einer von   die einfachsten zu lernenden Sprachen. Vorher   Kenntnis einer Assemblersprache   hilft, ist aber nicht erforderlich.

    
Nick Dandoulakis 13.10.2009 06:52
quelle
3

Schauen Sie sich diese Ссылка ;)

an

Das ist eine sehr grundlegende Einführung, Sie wissen, dass moderne Compiler ziemlich kompliziert sind.

    
Bubba88 13.10.2009 06:34
quelle