Çok basit, kuyruk çağrı optimizasyonu nedir? Daha spesifik olarak, neden açıklanabileceği, uygulanabileceği ve nerede uygulanmadığı bazı küçük kod parçacıkları nelerdir?
@tailrecDerleyicinin bir kuyruk özyinelemeli işlevi optimize etmesini sağlamak için ek açıklama olduğunu düşünüyorum . Beyannamenin önüne mi koydunuz? Scala komut dosyası modunda kullanılırsa da çalışır mı (örneğin :load <file>REPL altında kullanarak )?
Jvm-önleme-çağrı-optimizasyonlarından iki yıl sonra , bir prototip uygulaması var gibi görünüyor ve MLVM bir süredir bu özelliği "proto% 80" olarak listeliyor. Kuyruk çağrıları desteklenmesinde Sun'ın / Oracle'ın taraftan etkin faiz var mı yoksa kuyruk aramalar sadece "[...] öyle her özellik öncelik listesinde ikinci sırada gelmeye kader [...]" nde belirtildiği gibi …
Bugün unix'te "zaman" komutunu keşfettim ve Haskell'de kuyruk özyinelemeli ve normal özyinelemeli işlevler arasındaki çalışma zamanları arasındaki farkı kontrol etmek için kullanacağımı düşündüm. Aşağıdaki fonksiyonları yazdım: --tail recursive fac :: (Integral a) => a -> a fac x = fac' x 1 where fac' 1 y = y fac' x …