Saya telah membuat beberapa kompiler tulisan tangan untuk bahasa yang sangat sederhana, tetapi sekarang saya ingin mencoba mengembangkan bahasa yang dinamis, mirip dengan Python atau Ruby yang disederhanakan. Namun, mudah bagi saya untuk membungkus kepala saya di sekitar bagaimana kompiler bekerja. Kompiler primitif baru saja menerjemahkan. Tetapi saya tidak bisa melakukan ini jika bahasanya dinamis. Saya harus menulis penerjemah atau VM yang melacak informasi saat runtime dan memberikan lebih banyak pekerjaan pada saya.
Singkatnya, apakah ada sumber daya yang harus saya periksa mengingat saya tahu bagaimana kompiler bekerja tetapi ingin bermigrasi untuk membuat juru bahasa? Ada beberapa VM di luar sana untuk bahasa dinamis, tapi saya tidak punya masalah dengan menggulirkan saya sendiri. Ini semua hanya untuk pengalaman pribadi saya.
Saya mencari informasi tentang cara beralih dari kompiler ke juru bahasa. Jika saya sudah membuat kompiler untuk bahasa X tapi sekarang apa yang harus ditulis juru bahasa, apa yang perlu dilakukan dan apakah ada sumber daya yang melewati proses?
Saya tidak ingin sumber daya yang luas atau abstrak yang membahas bagaimana kompiler atau mesin virtual bekerja. Saya punya banyak buku pelajaran tentang masalah ini. Semua sumber yang saya temukan online mengasumsikan Anda memiliki pengalaman 0 dan dengan demikian memulai Anda dengan analisis leksikal atau sintaksis atau mereka sangat abstrak. Saya memiliki kompiler yang berfungsi, tetapi sekarang saya ingin mengubahnya menjadi penerjemah dan menambahkan fitur dinamis ke bahasa.
Saya tidak dapat menemukan sumber daya pada proses ini, mungkin cakupannya terlalu terbatas, atau sumber daya pada "bagian belakang" seorang penerjemah tanpa menjadi terlalu teoretis, itulah sebabnya saya diposting di sini.