SORU
25 Mayıs 2010, Salı


Neden bir derleyici yazmanın işlevsel bir dil daha kolay?

Bu soru çok uzun bir süredir düşünüyorum, ama gerçekten Google cevap olarak Stackoverflow benzer bir soru bulamadım. Eğer bir çift varsa, bunun için özür dilerim.

Bir sürü insan Bunun ve Haskell gibi fonksiyonel dillerde Compiler ve diğer dil araçları yazmak çok daha verimli ve kolay olduğunu söylemek sonra zorunlu dilde yazmak gibi görünüyor.

Bu doğru mu? Ve eğer öyleyse, neden bu kadar etkili ve zorunlu bir dil, C gibi fonksiyonel dillerde yerine onları yazmak kolay mı? Ayrıca, işlevsel bir dil daha yavaş daha sonra C gibi düşük seviyeli bir dil bazı dil bir araç değil mi?

CEVAP
25 Mayıs 2010, Salı


Bir kez derleyici sık ağaçlarla birlikte çok çalışıyor. Kaynak kodu sözdizimi ağacı ayrıştırılır. Bu ağaç yazın denetimi gerçekleştirmek için tür ek açıklamaları ile başka bir ağaca dönüşmüş olabilir. Şimdi sadece ağaç içeren temel dil elemanları (şeker gibi unsugared bir forma gösterimler sözdizimi dönüştürme) ağaca dönüştürmek olabilir. Şimdi temelde ağaç dönüşümleri çeşitli iyileştirmeler gerçekleştirebilir. Bundan sonra muhtemelen bazı normal şeklinde bir ağaç oluşturmak ve bu ağaç (derleme) hedef kodu oluşturmak için üzerinde yineleme sonra.

İşlevsel dil desen eşleştirme ve bu genellikle Derleyiciler yazmak için iyi bir dil olarak kabul ediyorlar bu yüzden ağaçları ile iş yapmak verimli özyineleme için iyi bir destek gibi özellikleri var.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ASUS North America

    ASUS North A

    12 AĞUSTOS 2008
  • Major FX

    Major FX

    6 HAZİRAN 2012
  • spederson7

    spederson7

    17 Temmuz 2006