Публикации по теме 'lifting'


BGM∞SNOP
BGM∞SNOP Здравствуйте, прекрасные люди! Ставьте реалистичные цели, продолжайте переоценивать свой подход, последовательная тяжелая работа ведет к успеху. Придет величие! Георги Бранов Последовательная загрузка – это просто лучший способ отработать шаблоны движений и получить нужные результаты. Числа 8 и 4 лучше всего подходят для построения базы. 2 отлично подходят для СИЛЫ, а 12 горят как сумасшедшие! 8 G 8 = 8 x 8 в минуту, то есть..

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

Поднятие функции более высокого порядка в Haskell
Я пытаюсь построить функцию типа: liftSumthing :: ((a -> m b) -> m b) -> (a -> t m b) -> t m b где t — монадный преобразователь. В частности, мне интересно сделать это: liftSumthingIO :: MonadIO m => ((a -> IO b)...
1107 просмотров
schedule 01.02.2023

Есть ли название для такого подъема функции?
Я написал функцию Scala: def liftOrIdentity[T](f: (T, T) => T) = (a: Option[T], b: Option[T]) => (a, b) match { case (Some(a), None) => Some(a) case (None, Some(b)) => Some(b) case (Some(a), Some(b)) =>...
446 просмотров

Трюки с классом типов для подъема обобщенных многопараметрических функций
Я хочу преобразовать функцию Haskell в кодировку лямбда-исчисления более высокого порядка. Это практически дословно взято из кодировки Олега Typed Tagless Final. class Lam r where emb :: a -> r a (^) :: r (r a -> r a) -> (r a -> r...
230 просмотров
schedule 23.06.2022

Каковы шаги для вывода этого бесточечного кода?
Я просматривал некоторый код и наткнулся на следующий драгоценный камень, который, я бы поспорил, является копией-вставкой вывода pointfree : (Я подумал, что следующее будет более подходящим, чем обычное foo / bar для этого конкретного вопроса:...
261 просмотров
schedule 29.04.2022

Схема подъема Хаара
Я пытаюсь применить версию схемы подъема к изображению. Я начал применять его, используя код, размещенный в Интернете: image = imread('cameraman.tif'); % Applying Lifting scheme lshaar = liftwave('haar'); els = {'p',[-0.125...
740 просмотров

Убираем монады — превращаем приложение монадного преобразователя в монаду нового типа
Я пытаюсь взять, например. ExceptT a (StateT A M) , для некоторого конкретного типа A и монады M , и обернуть их в мои новые пользовательские монады. Сначала я определил, что StateT A M часто появляется в других контекстах, и поэтому я...
749 просмотров

Поднимите Либо до ExceptT автоматически
Допустим, у меня есть этот (возможно, вводящий в заблуждение) фрагмент кода: import System.Environment (getArgs) import Control.Monad.Except parseArgs :: ExceptT String IO User parseArgs = do args <- lift getArgs case safeHead args...
1443 просмотров

Частичный лифт для монад?
Есть ли что-то вроде частичного лифта для монад? Мне нужно, чтобы подпись типа была такой: Monad m => (a1 -> r) -> a1 -> m r Вместо этого: Monad m => (a1 -> r) -> m a1 -> m r Для использования с >=> и...
105 просмотров
schedule 07.08.2022

функция подъема scala с коллекцией в качестве аргумента
У меня есть класс, который принимает функцию f: Option[Seq[Option[A]]] => Option[A]] case class Function[A](operator: Option[Seq[Option[A]]] => Option[A], name: String, arity: Int) Я бы хотел, чтобы пользователь этого класса мог не...
138 просмотров
schedule 18.06.2023

Использование суперкласса монады в объявлении экземпляра монады?
Я реализую очень простую структуру параллелизма для бедняков со следующим типом данных: data C m a = Atomic (m (C m a)) | Done a Я создаю экземпляр монады для этого: instance Monad m => Monad (C m) where (>>=) (Atomic m) f...
92 просмотров
schedule 23.12.2022

терминология функционального программирования: подъем против функторного/аппликативного подъема
Я пишу библиотеку функционального программирования и пытаюсь решить, какое имя лучше всего подходит для ряд функций. Все функции принимают функцию и возвращают другую функцию. Возвращаемая функция имеет другой тип возвращаемого значения по...
182 просмотров

Поднимите экземпляр класса с переменной типа `MonadIO` в преобразованную монаду
Как часть программы, в которой мне нужно регистрировать данные монадических вычислений, я пытаюсь определить класс, чтобы сделать это более удобным. module Serial where import Data.Int import Data.IORef import System.IO import Control.Monad.Trans...
52 просмотров

Объединение предикатов функциональным способом
Предоставляет ли Boost Hana возможность комбинировать предикаты с логическими операторами? Я имею в виду что-то примерно такое constexpr auto both = [](auto&& f, auto&& g){ return [&f,&g](auto&& x){ return f(x)...
59 просмотров

Как переписать нотацию адо как общий аппликативный подъем, соблюдая порядок оценки?
Кажется, существует разница в порядке оценки применительной нотации do . / ado против аппликативного подъема через <$> / map для первого аргумента и <*> / apply для остальных аргументов. По крайней мере, это то, что я прочитал...
76 просмотров

Haskell Monads и liftIO я не понимаю
Привет, сообщество, спасибо за ваше время. У меня есть ошибка, и я не уверен, что это за ошибка, но в чем я думаю проблема: нет преобразователя ввода-вывода с ext-1.2.4.1:Data.Text.Internal.Lazy.Text IO) на Web.Scotty.Internal.Types.ScottyT ....
101 просмотров
schedule 27.06.2023