SORU
19 EYLÜL 2008, Cuma


JVM kuyruk çağrı iyileştirmeleri engel teşkil ediyor mu?

Bu soruyu alıntı gördüm: What is a good functional language on which to build a web service?

Özellikle Scala kompozisyon türlerini sınırlayan öz yinelemeli fonksiyonlar, sen-ebilmek yapmak dışında kuyruk-Ara eliminasyon (bu JVM temel bir sınırlama) desteklemiyor.

Bu doğru mu? Eğer öyleyse, bu temel sınırlama oluşturduğu hakkında JVM nedir?

CEVAP
19 EYLÜL 2008, Cuma


Bu yazı: Recursion or Iteration? yardımcı olabilir.

Kısacası, tail call optimizasyonu sabit güvenlik modeli ve her zaman bir iz mevcut yığın ihtiyacı nedeniyle JVM yapmak. Bu gereksinimler teorik olarak desteklenen olabilir, ama muhtemelen yeni bir bayt kodu (John Rose's informal proposal) gerektirecektir.

Ayrıca değerlendirme (2002) bittiği yerde Sun bug #4726340, Daha fazla tartışma var:

Bu yine de yapılabilir sanırım, ama küçük bir iş değildir.

Şu anda, bazı iş Da Vinci Machine proje var. Kuyruk çağrı projenin durum olarak listelenen "proto 80%"; Java haline düşüktür 7, ama çok iyi bir şansı olduğunu düşünüyorum Java 8'de.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • infiniTuts

    infiniTuts

    18 Ocak 2012
  • manadude21

    manadude21

    11 Mart 2008
  • Moodle

    Moodle

    11 Mayıs 2010