Вопросы по теме 'scalaz'

Головоломка синтаксиса функций в scalaz
После просмотра презентации Ника Партиджа о создании scalaz , я посмотрел на этот пример, который просто потрясающий: import scalaz._ import Scalaz._ def even(x: Int) : Validation[NonEmptyList[String], Int] = if (x % 2 ==0) x.success else...
5123 просмотров

Как заставить живые шаблоны scalaz IDEA работать с символическими методами?
Многие методы в scalaz имеют символические эквиваленты юникода, такие как forever и ∞ (конечно, у меня есть это наоборот, у символьных методов действительно есть эквиваленты ASCII). Проект содержит XML-файл динамических шаблонов для IDEA,...
1523 просмотров
schedule 03.12.2023

Пример использования scalaz Monad
Кто-нибудь может привести пример использования scalaz Monad для простой, но нетривиальной и практически полезной задачи?
2919 просмотров
schedule 13.06.2022

переключить функцию и объект с помощью scalaz' |›
Я могу использовать оператор scalaz |> , когда хочу переключить функцию и объект, чтобы получить немного больше читабельности. Позвольте представить вам модельную функцию : def length2(x:String) = x.length * 2 Теперь я могу написать ее двумя...
1777 просмотров
schedule 10.08.2022

Хорошее введение в scalaz
Недавно scalaz попался на глаза. Выглядит очень интересно, но хорошего знакомства с библиотекой я не нашел. Кажется, что scalaz включает в себя множество идей из haskell и математики. Большинство статей, которые я нашел, предполагают, что вы уже...
31510 просмотров
schedule 11.05.2022

scalaz List[StateT].sequence — не удалось найти неявное значение для параметра n: scalaz.Applicative
Я пытаюсь понять, как использовать StateT для объединения двух преобразователей состояния State на основе комментария к моему Примеры монад состояния Scalaz answer. Кажется, я очень близок, но у меня возникла проблема при попытке применить...
1359 просмотров

Странный вложенный структурный тип в дженериках
Может кто-нибудь объяснить странную конструкцию структурного типа, вложенного в дженерики: implicit def Function1Functor[R]: Functor[({type λ[α]=(R) => α})#λ] = new Functor[({type λ[α]=(R) => α})#λ] .... Этот пример взят из...
286 просмотров
schedule 27.04.2023

Функциональное программирование в реальном мире на Scala
Ооооо ... Полугруппы, моноиды, монады, функторы, линзы, катаморфизмы, анаморфизмы, стрелки ... Все это звучит хорошо, и после одного-двух (или десяти) упражнений вы можете понять их суть. А с Scalaz вы получаете их бесплатно ... Однако с...
3948 просмотров

Группировать значения по ключу с любым моноидом
Я хотел бы написать метод mergeKeys , который группирует значения в Iterable[(K, V)] по ключам. Например, я мог бы написать: def mergeKeysList[K, V](iter: Iterable[(K, V)]) = { iter.foldLeft(Map[K,...
642 просмотров
schedule 04.05.2023

Scalaz: проверка на понимание и регистрация
Я признаю, что заголовок не очень явный: извините за это. Предположим, у меня есть for-comprehension : for {v1<-Validation1(input) v2<-Validation2(v1) v3<-Validation3(v2) } yield result Validation1, Validation2 и...
2118 просмотров
schedule 04.08.2022

Скалаз и REPL
Я успешно добавил scalaz в scala repl (2.9.1) и без проблем попробовал несколько базовых примеров, например: List(10, 20, 30) <*> (List(1, 2, 3) map ((_: Int) * (_: Int)).curried) or List(10, 20, 30) |@| List(1, 2, 3) apply (_ * _)...
165 просмотров
schedule 02.10.2022

Сведение вложенных проверок Scalaz
Я новичок в scalaz и начал с проверок. У меня есть некоторые функции проверки формы: def validateXyz(...): ValidationNEL[String, String] = ... Затем я использую аппликативный стиль для объединения нескольких проверок, а затем вызываю...
905 просмотров
schedule 11.03.2023

Итерации в Scala, которые используют ленивую оценку или слияние?
Я слышал, что итераторы ленивы, но насколько они точно ленивы? В качестве альтернативы, можно ли объединить итерации с функцией постобработки, чтобы не создавать промежуточную структуру данных? Могу ли я в своей итерации, например, создать 1...
972 просмотров
schedule 10.12.2022

Обработка исключений в итерируемой библиотеке без состояния ошибки
Я пытаюсь написать перечислитель для чтения файлов построчно из java.io.BufferedReader , используя библиотеку итераций Scalaz 7, который в настоящее время предоставляет только (чрезвычайно медленный) перечислитель для java.io.Reader ....
753 просмотров
schedule 22.10.2022

глобальные, неявные значения по умолчанию в scalaz (scalaz7)
Когда я кодирую с использованием Scalaz, я часто сталкиваюсь с проблемами, которые не являются неявными по объему. Я думаю, что где-то в огромном пакете scalaz должны быть какие-то имплициты по умолчанию, но либо я не знаю, где, либо их нет....
871 просмотров
schedule 28.07.2023

Общее обогащение, обеспечивающее некаррирование в scala
Существует ли общее обогащение для f: A => B => ... => Z в scala/scalaz/shapeless/etc. такой, что f.uncurried:(A, B, ...) => Z ? В настоящее время у меня есть это, но я считаю, что где-то должно быть уже существующее более общее...
239 просмотров
schedule 13.11.2023

Сопоставление как минимум 1 из 3 регулярных выражений Scala с использованием аппликативного функтора
У меня есть три регулярных выражения Scala, которые мне нужно проверить, чтобы увидеть, соответствует ли какое-либо из них заданной строке. Я знаю, что могу сделать следующее: val matches = R1.findFirstIn(myString).isDefined ||...
224 просмотров
schedule 27.12.2022

Обработка списка проверки Scalaz6
Есть ли идиоматический способ обработки коллекции Validation в Scalaz6? val results:Seq[Validation[A,B]] val exceptions = results.collect{case Failure(exception)=>exception} exceptions.foreach{logger.error("Error when starting up ccxy...
1157 просмотров
schedule 17.03.2023

Как написать параметр scalaz.IsEmpty для универсальных типов
Я пытаюсь написать общий метод, который обертывает все, что имеет scalaz.IsEmpty в экземпляр класса типов Option . Он должен возвращать None для пустых значений и заключать их в Some , если они не пусты. Вот что я придумал до сих пор:...
507 просмотров

Почему List является полугруппой, а Seq - нет?
Я новичок в scalaz и пытаюсь понять, почему работает следующий код: import scalaz._ import Scalaz._ scala> Map[String,List[String]]() |+| Map[String,List[String]]() res3: scala.collection.immutable.Map[String,List[String]] = Map() но это...
1769 просмотров