Apa masalah terbuka saat ini dalam teori kompiler?

Jawaban:

8

Dalam pengalaman saya, saya telah melihat perkembangan kompiler baru berikut:

  • Bekerja mengotomatisasi paralelisme data (atau setidaknya, mengurangi jumlah pekerjaan eksplisit yang dilakukan oleh programmer). Ini biasanya memerlukan ekstensi ke bahasa juga.
  • Bekerja pada strategi optimisasi ekstrim seperti superkompilasi atau evaluasi parsial (di mana sebuah program dihancurkan melalui evaluasi sampai dikurangi menjadi bentuk "terkecil" dan kemudian dikompilasi)

Saya telah melihat berbagai pekerjaan pada hal-hal seperti checker jenis dan sebagainya, tapi saya berasumsi Anda berbicara lebih banyak tentang hal-hal khusus compiler.

Liam O'Connor
sumber
7

Dari saat saya pergi (tetapi mungkin masih relevan):

  • Pemrosesan terdistribusi:
    • Mengompilasi aplikasi untuk dijalankan pada sekelompok prosesor terdistribusi.
      Ini perlu mempertimbangkan pemetaan memori (distribusi data masalah) data ke prosesor dan menambahkan kode eksplisit untuk meminta halaman memori untuk membaca / menulis sebelum mereka benar-benar diperlukan untuk mencegah kios prosesor.
  • Proses paralel:
    • Compiler menghasilkan kode ulir.
      Menghapus kebutuhan pengembang untuk secara eksplisit menghasilkan kode berulir (karena mereka pada umumnya sangat buruk).
Martin York
sumber