Запитання з тегом «scala»

Scala - мова програмування загального призначення, орієнтована переважно на віртуальну машину Java. Призначений для вираження загальних моделей програмування стислим, елегантним та безпечним для типу способом, він з’єднує як імперативний, так і функціональний стилі програмування. Основними його особливостями є: вдосконалена система статичного типу з висновком типу; типи функцій; відповідність шаблону; неявні параметри та перетворення; перевантаження оператора; повна сумісність з Java; одночасність

3
Два способи каррі в Scala; який варіант використання для кожного?
Я обговорюю декілька списків параметрів у керівництві Scala Style, яке я веду . Я зрозумів, що є два способи каррі , і мені цікаво, якими є варіанти використання: def add(a:Int)(b:Int) = {a + b} // Works add(5)(6) // Doesn't compile val f = add(5) // Works val f = add(5)_ …

1
Як замінити програму, записану як послідовний потік переходів стану, на scalaz-stream?
Я намагаюся зрозуміти, як реорганізувати програму, яку я раніше писав би як послідовність переходів стану: У мене є певна ділова логіка: type In = Long type Count = Int type Out = Count type S = Map[Int, Count] val inputToIn: String => Option[In] = s => try Some(s.toLong) catch { …

12
Ефективна ітерація з індексом у Scala
Оскільки Scala не має старих forциклів стилю Java з індексом, // does not work val xs = Array("first", "second", "third") for (i=0; i<xs.length; i++) { println("String #" + i + " is " + xs(i)) } Як ми можемо виконувати ітерацію ефективно і без використання varсимволів? Ви могли б це …
83 scala  iteration 

8
Як передати параметр -D або змінну середовища в роботу Spark?
Я хочу змінити конфігурацію Typesafe завдання Spark у середовищі dev / prod. Мені здається, що найпростіший спосіб зробити це - перейти -Dconfig.resource=ENVNAMEдо роботи. Тоді бібліотека налаштувань Typesafe зробить цю роботу за мене. Чи є спосіб передати цей варіант безпосередньо на роботу? Або, можливо, є кращий спосіб змінити конфігурацію роботи під …

2
Яка різниця між :: та ::: у Scala
val list1 = List(1,2) val list2 = List(3,4) тоді list1::list2 returns: List[Any] = List(List(1, 2), 3, 4) list1:::list2 returns: List[Int] = List(1, 2, 3, 4) Я бачив, як книга пише, що при використанні ::це також призводить до результатів List[Int] = List(1, 2, 3, 4). Моя версія Scala - 2.9.
83 scala 

1
Які дизайнерські рішення вигідніші акторам Scala замість JMS?
Які відмінності використання Scala Actors замість JMS? Наприклад, з точки зору продуктивності та масштабованості, що додає модель Scala Actor порівняно із JMS? У яких випадках має сенс використовувати «Актори», а не JMS, тобто які проблеми вирішують «Актори», яких JMS не може охопити?
83 java  scala  jms  actor 

2
Тестові залежності SBT у мультипроектах: Зробіть тестовий код доступним для залежних проектів
У мене є мультипроект SBT, де деякі проекти мають залежність один від одного. Подобається це: lazy val coreProject: Project = Project( id = "core-project", base = file("./core-project"), // other stuff )) lazy val extensions: Project = Project( id = "extensions", base = file("./extensions"), dependencies = Seq(coreProject) ) Тепер у мене …
83 scala  testing  sbt 

8
Про продуктивність та взаємодію Java: Clojure проти Scala
Я вже читав різні розповіді про Clojure проти Scala, і хоча я розумію, що обидва мають своє місце. Є кілька міркувань, щодо яких я не отримав повного пояснення щодо порівняння обох Clojure та Scala: 1.) Яка з двох мов, як правило, швидша ? Я усвідомлюю, що це буде різнитися залежно …

3
Як працює HashPartitioner?
Я прочитав документацію HashPartitioner. На жаль, нічого особливо не було пояснено, окрім викликів API. Я припускаю, що HashPartitionerрозділяє розподілений набір на основі хешу ключів. Наприклад, якщо мої дані схожі (1,1), (1,2), (1,3), (2,1), (2,2), (2,3) Отже, секціонер розміщував би це в різних розділах з однаковими клавішами, що потрапляли в один …

5
Видаліть символи з кінця рядкової шкали
Який найпростіший спосіб видалити останній символ із кінця рядка в Scala? Я вважаю, що у класі Rubys String є кілька дуже корисних методів, таких як chop . Я б використовував "oddoneoutz" .headOption у Scala, але він знецінений. Я не хочу потрапляти в занадто складне: string.slice(0, string.length - 1) Будь ласка, …
82 string  scala 

6
withFilter замість фільтра
Чи завжди ефективніше використовувати withFilter замість фільтра, коли згодом застосовуються такі функції, як map, flatmap тощо? Чому підтримуються лише карти, плоскі карти та foreach? (Очікувані функції, такі як forall / також існують)

2
Як управляти кількома взаємозалежними модулями за допомогою SBT та IntelliJ IDEA?
Я розробляю кілька модулів із залежностями серед них, і я хотів би працювати з усіма ними в одному проекті IDEA. Я використовую sbt-idea для створення проектів IDEA з визначень збірки sbt, що чудово підходить для окремих проектів. Однак у випадку з кількома модулями речі, які я намагався досі, не зовсім …

5
Каррінг Scala проти частково застосованих функцій
Я розумію, що тут є кілька питань про те, що таке функції каррінгу та частково застосовані, але я запитую про те, як вони відрізняються. Як простий приклад, ось наведена функція для пошуку парних чисел: def filter(xs: List[Int], p: Int => Boolean): List[Int] = if (xs.isEmpty) xs else if (p(xs.head)) xs.head …


3
Як повторити карту Scala?
У мене є карта Scala: attrs: Map[String , String] Коли я намагаюся переглядати карту як; attrs.foreach { key, value => } вищезазначене не працює. У кожній ітерації я повинен знати, що є ключовим, а яке значення. Яким є правильний спосіб перебору карти Scala за допомогою синтаксичного цукру Scala?
81 scala 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.