]]> ]]>

Scala 2.1.8

Версия реализации Scala for JVM языка программирования Scala

Версия Scala 2.1.8 выпущена 23 августа 2006.

Основные изменения относительно версии Scala 2.1.7:

  • добавлен атрибут InnerClasses в порождающем файле классов
  • исключена не поддерживаемая стандартом опция Xgadt
  • исправлена ошибка, приводящая к краху при использовании модификаторов
  • исправлена ошибка при двойном объявлении def
  • исправлены ошибки выдачи неверных ошибок
  • исправлена ошибка вызова метода в аннотации Java
  • исправлена ошибка компилятора с использованием модификатора private
  • исправлены файлы Stream.filter и Stream.copyToArray
  • улучшена отладочная информация для локальных переменных

Изменения в синтаксисе языка

Защищенным методам добавлена возможность обладать видимым спецификатором. На практике теперь возможно симулировать защищенный режим доступа записи в Java:

     protected[P] def X ...

Приватные члены класса теперь могут быть ссылкой из сопутствующего модуля классов и наоборот

Метод поиска для неявных определений был обобщен. Когда происходит поиска неявного определения, соответствующего типу Т, теперь рассматриваются

  • все идентификаторы, доступные без префикса
  • все члены сопутствующих модулей классов, связанных с Т

Типизированный шаблон с единичным типом p.type теперь проверяет равенство селектора с перекрестной ссылкой на p:

      val p = List(1, 2, 3)
      val q = List(1, 2)
      val r = q
      r match {
        case _: p.type => Console.println("p")
        case _: q.type => Console.println("q") //будет выводить p
      }

Комментарии

]]>

blog comments powered by Disqus

]]>

Работа программистам