1 Kommentare

 
GN⁺ 2024-03-04
Hacker-News-Kommentare
  • Man sollte vor dem Schreiben eines Compilers die Computerarchitektur verstehen und wissen, was ein Compiler erzeugen muss, um effizienten Maschinencode zu generieren. Schulen und Universitäten messen Computerarchitektur und Systemprogrammierung zunehmend weniger Bedeutung bei, aber dieses Wissen ist wichtig, um die besten Jobs in der Branche zu bekommen.
  • Ein Nutzer erwähnt einen bestimmten Kurs, der ihm geholfen hat, Interviews bei Compiler-Engineering-Teams der MANGA-Unternehmen (Meta, Apple, Nvidia, Google, Amazon) zu bestehen. Das Curriculum für Low-Level-Computing-Systeme an der University of Waterloo war bereits hervorragend, und er trug zu Open-Source-Compilerprojekten bei, aber dieser Kurs half ihm, die schwierigsten Fragen im Interview zu beantworten.
  • Es scheint an tiefgehenden akademischen Materialien zu fortgeschrittener Compiler-Optimierung zu mangeln. Viele Kurse bleiben auf Einsteigerniveau, und um wirklich interessante Techniken zu lernen, muss man sich tief in den Quellcode populärer Open-Source-Compiler eingraben.
  • Das Compiler-Feld hat sich etwa 30 Jahre lang nicht wesentlich weiterentwickelt. Jemand unterrichtete 2004–2006 an der Universität Perugia, und die damals verwendeten Materialien waren bereits 15, 20 oder 25 Jahre alt. In jüngerer Zeit scheint es Veränderungen zu geben.
  • Es ist erfreulich, dass es einen Kurs gibt, mit dem man fortgeschrittene Themen im eigenen Tempo lernen kann. Jemand wollte eine Karriere als Compiler-Ingenieur anstreben, aber in seiner Region gibt es nicht viele Ausbildungs- und Berufsmöglichkeiten. Der US-Arbeitsmarkt ist hart umkämpft, und er weiß nicht, wie er dort einsteigen soll. Ein im Bachelor belegter Kurs ist seine einzige Erfahrung.
  • Auch „A Unified Theory of Garbage Collection“ ist enthalten, sodass Studierende ein korrektes Verständnis von Reference Counting (RC) und Tracing Garbage Collection (GC) bekommen können.
  • Das ist im Grunde dasselbe wie das, was in einem allgemeinen Compilerbau-Kurs behandelt wurde, den jemand vor 20 Jahren besucht hat. Es sind einige neue Papers verlinkt, die einen Blick wert sind. Nach 18 Jahren ohne Blick in Compiler-Quellcode fühlt man sich bei Profiling und pfadbasierten Optimierungen abgehängt. Außerdem lässt ML vermuten, dass es fortgeschrittenere SIMD-Techniken geben dürfte.
  • CS 6120 ist ein Doktorandenkurs zur Implementierung von Programmiersprachen, gehalten von Adrian Sampson an der Cornell University. Jemand fragt sich, ob der Kurs sehr fortgeschritten ist.
  • Jemand hat den Kurs vor einigen Jahren im Sommer online belegt und viel gelernt. Es sei sehr spannend gewesen, für ein kleines Problem in Bril IR einen PR einzureichen und ihn gemeinsam mit dem Professor zu überarbeiten.
  • Jemand fragt sich, ob es einen vorausgehenden Kurs zu diesem Kurs gibt.