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

  • joshsnice

    joshsnice

    28 Kasım 2006
  • NikkoNantone

    NikkoNantone

    21 Kasım 2011
  • PCDIY

    PCDIY

    16 AĞUSTOS 2013