Описание тега eta-expansion
Используйте этот тег для вопросов, касающихся расширения eta в Scala. Также добавьте к своему вопросу тег Scala
1
ответ
Что такое расширение в Scala?
Я новичок в Скале. Я только что услышал термин "расширение eta" и грубо знаю, что это означает расширение метода до функционального объекта. Но я нахожу мало ресурсов в SO, которые систематически представляют его. Мне интересно, как работает eta-рас…
12 сен '16 в 07:09
1
ответ
Укажите сигнатуру метода для применения расширения eta.
Есть ли способ указать сигнатуру метода, к которому я хочу применить расширение eta? Например: val tupleNum = (1L,2L) case class CaseClass(a:String, b:String) object CaseClass { def apply(a: Long, b: Long): CaseClass = new CaseClass(s"${a}", s"${b}"…
08 май '19 в 20:19
0
ответов
Понимание '_' в Scala как заполнителя или расширения eta
Подчеркивание _ может быть очень большим. Это не тот же вопрос, что и для чего в Scala используются символы подчеркивания? который показывает несколько ситуаций, в которых используется подчеркивание, но это больше о том, почему существует подчеркива…
04 дек '19 в 14:12
2
ответа
В чем разница между foreach (println) и foreach (println ())?
У меня есть строковый массив: val str:Array[String] = Array("aa","bb") scala> str.foreach(println) // works aa bb scala> str.foreach(println()) // println() also returns a Unit, doesn't it? ^ error: type mismatch; found : Unit required: String…
03 окт '19 в 05:28
3
ответа
Вызов анонимной функции внутри метода карты
Я создавал конструктор с несколькими возможными аргументами, когда понял, что моя IDE указывает на несоответствие типов: case class PathAndColumns(path: String, column: Array[Column]) { def this(path: String, column: Column) { this(path, Array(colum…
20 сен '19 в 15:06
1
ответ
Почему можно использовать имя функции Scala там, где ожидается значение функции, если это не само значение функции?
def f(x: Int): Boolean = (x >= 0 && x < 4) List(1, 3, 5).map(f) // List(true, true, false) f // does not compile Почему можно f использоваться там, где ожидается значение функции, даже если это не само значение функции?
05 май '20 в 19:00
1
ответ
Haskell - сокращение Eta и расширение Eta
Я изучал функциональную оптимизацию программы и копался в исходниках GHC. Я (в основном) понимаю, что такое сокращение эта и расширение эта. Уменьшение Eta удаляет только избыточные лямбды: \x -> abs x => abs Расширение эта противоположно сокр…
23 окт '20 в 05:05
0
ответов
Почему эта-расширение полиморфного метода не приводит к значению полиморфной функции?
Scala 2 не имеет значений полиморфных функций, поэтому полиморфные методы, расширяющие эту функцию, дают только scala> def f[A](a: A): A = ??? def f[A](a: A): A scala> f _ val res0: Nothing => Nothing = $Lambda$7757/1502613782@45af2c1 Однак…
06 апр '21 в 23:40
0
ответов
Какой самый эффективный метод в Scala 3.2 для эта-расширения функции или конструктора класса с именами и аргументами по умолчанию?
Во время моего участия в проекте, который сильно зависит от привязки с проверкой типов к данным схемы. Я обнаружил, что многие из существующих кодов используют следующий шаблон: case class Datum1( col1: String = "default", col2: Double = 0 ... (over…
08 фев '23 в 21:16
0
ответов
Как преобразовать кортеж уточненных координат?
В следующей программе Liquid Haskell определениеc'иz'являются отдельными. Эта программа принимается программой проверки типов LH. {-@ type Digit = { v : _ | 0 <= v && v <= 9 } @-} type Digit = Int {-@ addDigit :: c : Bool -> x : Dig…
06 ноя '22 в 06:17