Bu ayrım derinden anlamlıdır, çünkü derlenmiş diller anlambilimi zorunlu olarak yorumlanmayan dillerle sınırlar. Bazı yorumlayıcı tekniklerin derlenmesi çok zor (pratik olarak imkansız).
Yorumlanan kod, çalışma zamanında kod oluşturma gibi şeyler yapabilir ve bu kodun varolan kapsamdaki sözcük bağlarına görünmesini sağlar. Bu bir örnek. Bir diğeri ise, tercümanların, kodun nasıl değerlendirildiğini kontrol edebilecek olan yorumlanmış kodla genişletilebilmesidir. Eski Lisp "fexprs" temeli budur: değerlendirilmemiş argümanlarla çağrılan ve onlarla ne yapılacağına karar veren işlevler (kodu yürümek ve değişkenleri değerlendirmek için gerekli ortama tam erişime sahip olmak, vb.). Derlenmiş dillerde, bu tekniği gerçekten kullanamazsınız; bunun yerine makroları kullanırsınız: derlendiği zaman değerlenmemiş argümanlarla çağrılan işlevler ve yorumlamak yerine kodu çevirirsiniz.
Bazı dil uygulamaları bu teknikler etrafında inşa edilmiştir; Yazarları derlemeyi önemli bir amaç olarak reddetmekte ve bu esnekliği benimsemektedir.
Yorumlama her zaman bir derleyicinin önyüklenmesinde kullanılan bir teknik olarak faydalı olacaktır. Somut bir örnek için CLISP'e (Common Lisp'in popüler bir uygulaması) bakın. CLISP kendi içinde yazılmış bir derleyiciye sahiptir. CLISP'yi kurduğunuzda, bu derleyici ilk bina adımları sırasında yorumlanmaktadır. Kendini derlemek için kullanılır ve derlendikten sonra derleme derlenir.
Tercüman çekirdeği olmadan, SBCL'nin yaptığı gibi mevcut bazı Lisp'lerle önyükleme yapmanız gerekir.
Yorumlama ile, derleme dilinden başlayarak mutlak sıfırdan bir dil geliştirebilirsiniz. Temel I / O ve çekirdek rutinleri geliştirin, ardından yine de makine dili olan bir değerlendirme yazın. Değerlendirdikten sonra, yüksek seviyede bir dilde yazın; makine kodu çekirdeği değerlendirmeyi yapar. Kütüphaneyi daha fazla rutinle genişletmek ve derleyici yazmak için bu özelliği kullanın. Bu yordamları ve derleyicinin kendisini derlemek için derleyiciyi kullanın.
Yorum: derlenmeye giden yolda önemli bir basamak taşı!