Почему так мало вещей @specialized в стандартной библиотеке Scala?

Я искал использование @specialized в исходном коде стандартной библиотеки Scala 2.8.1. Похоже, что эту аннотацию используют лишь несколько трейтов и классов: Function0 , Function1 , Function2 , Tuple1 , Tuple2 , Продукт1 , Продукт2 , AbstractFunction0 , AbstractFunction1 , AbstractFunction2 .

Ни один из классов коллекций не является @specialized . Почему бы нет? Сгенерирует ли это слишком много классов?

Это означает, что использование классов коллекций с примитивными типами очень неэффективно, потому что будет происходить много ненужных упаковок и распаковок.

Какой самый эффективный способ иметь неизменяемый список или последовательность (с характеристиками IndexedSeq ) Int s, избегая упаковки и распаковки?

38
задан Charles 2 November 2012 в 16:38
поделиться