SORU
24 Mart 2009, Salı


Neden Scala'in değişmez Set türünde değil kovaryant?

EDİT: Yeniden yazılan bu soruya orijinal bir cevap dayalı

scala.collection.immutable.Set Sınıf türü parametre olarak kovaryant değildir. Neden bu?

import scala.collection.immutable._

def foo(s: Set[CharSequence]): Unit = {
    println(s)
}

def bar(): Unit = {
   val s: Set[String] = Set("Hello", "World");
   foo(s); //DOES NOT COMPILE, regardless of whether type is declared 
           //explicitly in the val s declaration
}

CEVAP
31 Mayıs 2011, Salı


http://www.scala-lang.org/node/9764 Martin Odersky yazar:

"Ayarlar sorunu olmayan farkı da uygulamaları kaynaklanıyor sanırım. Ortak ayarlar anahtar tipi olmayan değişken bir dizi olan hashtables, olarak uygulanır. Biraz can sıkıcı bir düzensizlik olduğunu kabul ediyorum."

Yani, bunun için ilkeli bir neden oluşturmak için çalışmalarımızı tüm yanlış görünüyor :-)

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BuzzFeedVideo

    BuzzFeedVide

    10 AĞUSTOS 2011
  • SaraBeautyCorner - Nails and Nail Art Designs, DIY, Fashion & Makeup Tutorial

    SaraBeautyCo

    7 EKİM 2012
  • Techmoan

    Techmoan

    31 Mayıs 2009