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

  • bcbauer

    bcbauer

    7 ŞUBAT 2007
  • kimaliz

    kimaliz

    18 Temmuz 2006
  • PaysNatalAu's channel

    PaysNatalAu'

    11 Aralık 2010