Есть ли альтернативный синтаксис 'List' в Scala?
Можно ли определить один дополнительный класс / тип / оператор *, называемый '[' и ']'?
Я знаю, что для обозначения типа используются квадратные скобки, но они идеально подходят для повторяющихся задач по объявлению списков.
A ';' или же '?' было бы хорошо также, как последний ресурс.
Спасибо
набл .:
после долгих поисков единственной альтернативой, которую я нашел, было использование 'cons':
val list = 1 :: 2 :: 3 :: Nil
но это вовсе не уменьшает количество нажатий клавиш.
- Я все еще изучаю эти вещи в Scala
EDIT:
Просто чтобы уточнить: производительность не является приоритетом в моем случае. И да, сдвиг не приветствуется. :П
Мотивация за кулисами: мне нравится стиль Haskell, но я не могу использовать его напрямую с Java.
РЕДАКТИРОВАТЬ 2:
Окончательное решение на основе обоих решений Rex Kerr
Тип реализации объекта:
package a
object Types {
type \[z] = List[z]
implicit def make_lists[A](z: A) = new ListMaker(z)
class ListMaker[A](a0: A) {
private[this] val buffer = List.newBuilder[A]
buffer += a0
def \(z: A) = {
buffer += z;
this
}
def \\ = buffer.result
}
}
используя тип объекта:
package a
import a.Types._
object Whatever {
def listInListOut (l: \[Int]) = {
1\2\\
}
}