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

  • lane182videos

    lane182video

    6 EKİM 2011
  • Mega64

    Mega64

    24 ŞUBAT 2006
  • SegaAmerica

    SegaAmerica

    5 Mart 2008