Quellcode-Analyse von Interpreterquelltext
Sommersemester 2010Dr. Martin v. Löwis
Gegenstand des Seminars ist das Studium von Algorithmen in aktuellen Interpreterimplementierungen, insbesondere
- TraceMonkey (Firefox JavaScript)
- V8 (Chrome JavaScript)
- Python 2.6/3.1
- Ruby 1.9
- Tcl 8.5
- Perl 5.10
Für diese Interpreter sollen die folgenden Aspekte untersucht werden:
- Objektrepräsentation (Slots, Methoden-Dispatch)
- Speicherverwaltung (Garbage Collector)
- Codeausführung (Interpreterschleife, Bytecode, ggf. JIT)
- Foreign Function Interface
- Parser
Jeder Seminarteilnehmer wird für sein Thema die relevanten Quelltexte studieren und in einem Seminarvortrag vorstellen. Dazu sollen insbesondere geeignete Experimente definiert werden, die die relevanten Aspekte (Funktionalität, Laufzeit, Speicherverbrauch) der jeweiligen Implementierung illustrieren. Die tatsächlich verwendeten Implementierungen sollen mit aus der Literatur bekannten Ansätzen verglichen werden.
Literatur
- TraceMonkey
- V8
- Python:
- Ruby Link nicht mehr erreichbar: http://eigenclass.org/hiki/ruby+internals+guide
- Tcl
- Perl
Vorträge
Datum | Titel | Sprecher |
---|---|---|
20. April 2010 | Themenvorstellung | |
27. April 2010 | Themenvergabe | |
4. Mai 2010 | kein Vortrag | |
11. Mai 2010 | Martin v. Löwis | PyPy |
18. Mai 2010 | Michael Grünewald | Tcl-Einführung |
25. Mai 2010 | Tilman Giese | Ruby: Method Dispatch |
1. Juni 2010 | Martin v. Löwis | PyPy: Object Spaces |
8. Juni 2010 | Kein Vortrag | |
15. Juni 2010 | ||
22. Juni 2010 | ||
1. Juli 2010 (9:15, C-1.x) | Stefan Lemme | Speicherverwaltung von Python |
6. Juli 2010 | Tilman Giese | Method-Dispatch in Ruby |
Michael Grünewald | Ausführung von Tcl | |
13. Juli 2010 | Christopher Schuster | JIT-Compiler von Chrome V8 |
20. Juli 2010 | Kein Vortrag |