Saya sedang meneliti tentang suite kompiler gcc di wikipedia di sini , ketika ini muncul:
GCC mulai menggunakan parser LALR yang dibuat dengan Bison, tetapi secara bertahap beralih ke parser rekursif-keturunan yang ditulis tangan; untuk C ++ pada tahun 2004, dan untuk C dan Objective-C pada tahun 2006. Saat ini semua ujung depan menggunakan parser recursive-descent yang ditulis tangan.
Jadi dengan kalimat terakhir itu, (dan sebanyak yang saya percayai wikipedia) saya pasti dapat mengatakan bahwa "C (gcc), C ++ (g ++), Objective-C, Objective-C ++, Fortran (gfortran), Java (gcj), Ada (GNAT), Go (gccgo), Pascal (gpc), ... Merkuri, Modula-2, Modula-3, PL / I, D (gdc), dan VHDL (ghdl) "semuanya adalah ujung depan yang tidak ada lagi gunakan generator parser. Artinya, mereka semua menggunakan parser tulisan tangan.
Pertanyaan saya kemudian, apakah praktik ini ada di mana-mana? Secara khusus, saya mencari jawaban yang tepat untuk "apakah implementasi standar / resmi x memiliki parser tulisan tangan" untuk x dalam [Python, Swift, Ruby, Java, Scala, ML, Haskell]? (Sebenarnya, informasi tentang bahasa lain juga diterima di sini.) Saya yakin saya dapat menemukannya sendiri setelah banyak menggali. Tapi saya juga yakin ini mudah dijawab oleh masyarakat. Terima kasih!