Обоснование техники импорта библиотеки Scalaz - PullRequest
7 голосов
/ 19 октября 2011

Кто-нибудь из вас знает, почему примеры из Scalaz всегда используют эту технику импорта:

import scalaz._
import Scalaz._

вместо:

import scalaz.Scalaz._

?Я пытаюсь понять, в чем причина предпочтения.

Спасибо!

Ответы [ 2 ]

10 голосов
/ 19 октября 2011

Я полагаю, это потому, что import scalaz._; import Scalaz._ импортирует все элементы из пакета scalaz и из объекта scalaz.Scalaz.

Если вы просто импортируете import scalaz.Scalaz._, то вы только импортируете элементы из объекта scalaz.Scalaz.

3 голосов
/ 20 октября 2011

import scalaz._ импортирует все классы [type] из основного пакета.

import Scalaz._ импортирует имплики, которые делают все эти классы полезными.Например, преобразования из стандартных коллекций в MA, получение оболочки Option и т. Д.

Таким образом, вы можете использовать одно без другого.

Я считаю, что это сознательное конструктивное решение, позволяющее нам выжить в любой форме.неявные проблемы, такие как this .

...