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

Что такое административные редексы после конвертации CPS?
В контексте преобразования Scheme и CPS я немного затрудняюсь решить, что административные редексы (лямбды) точно такие: все лямбда-выражения, введенные преобразованием CPS только лямбда-выражения, которые вводятся при преобразовании...
626 просмотров

Программирование практической схемы
Прошло несколько месяцев с тех пор, как я коснулся Scheme и решил реализовать разделитель доходов из командной строки с помощью Scheme. Моя первоначальная реализация использовала простую рекурсию вместо продолжения, но я решил, что продолжение...
1762 просмотров
schedule 14.11.2022

Помогите с dynamic-wind и call/cc
У меня возникли проблемы с пониманием поведения следующей программы Scheme: (define c (dynamic-wind (lambda () (display 'IN)(newline)) (lambda () (call/cc (lambda (k) (display 'X)(newline) k)))...
1217 просмотров
schedule 14.06.2023

Как и почему работает монада Haskell Cont?
Вот как определяется монада Cont: newtype Cont r a = Cont { runCont :: (a -> r) -> r } instance Monad (Cont r) where return a = Cont ($ a) m >>= k = Cont $ \c -> runCont m $ \a -> runCont (k a) c Не могли бы вы...
9835 просмотров
schedule 30.07.2023

генератор / блок в итератор / преобразование потока
В основном я хочу преобразовать это: def data(block: T => Unit) в Stream (dataToStream - это гипотетическая функция, выполняющая это преобразование): val dataStream: Stream[T] = dataToStream(data) Полагаю, эту проблему можно...
3378 просмотров

Можно ли продолжить выполнение задачи C после выполнения A и B без сбоев или отмены с использованием одного метода TPL?
Я пытался использовать Task.Factory.ContinueWhenAll() несколько раз с намерением вызвать продолжение только тогда, когда все антецеденты выполняются до завершения без каких-либо ошибок или отмен. Это приводит к возникновению...
1751 просмотров

Является ли Rhino единственным интерпретатором с поддержкой песочницы и сериализуемых продолжений?
Мне нужны (а) песочница и (б) сериализуемые продолжения. Я показываю пользователям сценарии игры на стороне сервера , и это чрезвычайно асинхронно, поэтому шаблон обратного вызова делает код несинхронным. -читаемый и очень недоступный для...
764 просмотров

Слушатели событий с продолжениями Scala
Предположим, мне нужно написать некоторый код графического интерфейса следующим образом: widget1.addListener(event1 => handle1(event1) widget2.addListener(event2 => handle2(event2) widget3.addListener(event3 => handle3(event3))...
1263 просмотров

Как C++ может использовать стиль передачи продолжения?
Предположим, что в C++ вы делаете слишком много рекурсивных вызовов рекурсивной функции и получаете ошибку переполнения стека. Как бы вы переписали это в стиле передачи продолжения, чтобы избежать переполнения стека? Мне трудно представить это...
4292 просмотров

Статические переменные в схеме / ракетке?
В C вы можете иметь статическую переменную внутри метода, которая может запоминать значения, которые были установлены предыдущими вызовами метода. Я слышал, что такой же эффект можно найти, используя продолжения в Scheme. Может ли кто-нибудь...
2572 просмотров
schedule 08.07.2023

Является ли ключевое слово Async await эквивалентом лямбда-выражения ContinueWith?
Может ли кто-нибудь быть достаточно любезным, чтобы подтвердить, правильно ли я понял ключевое слово Async await? (Используется версия 3 ОСАГО) До сих пор я выяснил, что вставка ключевого слова await перед вызовом метода, по сути, делает 2 вещи:...
20553 просмотров
schedule 19.07.2023

Я только что написал продолжение?
У меня нет формальных знаний о продолжениях, и мне интересно, может ли кто-нибудь помочь мне проверить и понять код, который я написал :). Проблема Общая проблема, которую я пытаюсь решить, заключается в преобразовании таких выражений, как...
559 просмотров
schedule 11.03.2023

Использование продолжений scala со слушателями netty / NIO
Я использую библиотеку Netty (версия 4 от GitHub). Он отлично работает в Scala, но я надеюсь, что моя библиотека сможет использовать стиль передачи продолжения для асинхронного ожидания. Традиционно с Netty вы должны сделать что-то вроде этого...
2179 просмотров
schedule 18.04.2023

Продолжение Scala: много последовательных изменений
Я пытался осмыслить сложные проблемы с набором текста с продолжениями scala. Я прочитал весь материал, который смог найти по нему, включая справочную документацию по пакету продолжения. Я думаю, что до некоторой степени я понял это, и это имеет...
638 просмотров

Создание эффективных экземпляров монады в `Set` (и других контейнерах с ограничениями) с использованием монады продолжения
Set , как и [] , имеет прекрасно определенные монадические операции. Проблема в том, что они требуют, чтобы значения удовлетворяли ограничению Ord , поэтому невозможно определить return и >>= без каких-либо ограничений. Та же проблема...
1634 просмотров

Как перевести сдвиг/сброс в delimcc?
Я изучаю статью Олега и Асая о продолжении с разделителями "для чайников" (http://pllab.is.ocha.ac.jp/~asai/cw2011tutorial/main-e.pdf), но вместо этого в этой статье используется формализм сдвига/сброса. подсказок, доступных в файле delimcc Олега....
1007 просмотров

Использование call/cc для создания цикла. давай начнем
Оба следующих блока кода должны (на мой взгляд) быть бесконечными циклами Это работает (define call/cc call-with-current-continuation) (define l 0) (define i 0) ((lambda () (call/cc (lambda (k) (set! l k))) (write i)...
380 просмотров
schedule 27.03.2023

используя callCC с функциями высшего порядка в R
Я пытаюсь понять, как получить функцию callCC в R для кратковременного вычисления функции для работы с такими функциями, как lapply и Reduce. Мотивация Это сделало бы Reduce и lapply асимптотической эффективностью> O (n), что позволило бы вам...
190 просмотров
schedule 26.08.2022

Понимание примеров Haskell callCC
У меня возникли проблемы с пониманием ответов на предыдущий вопрос . Я надеюсь, что объяснение следующего прояснит ситуацию. Следующий пример взят из fpcomplete . import Control.Monad.Trans.Class import Control.Monad.Trans.Cont main = flip...
1223 просмотров
schedule 03.08.2022

Task.ContinueWith() не выполняется должным образом
Я пытаюсь переписать часть своего старого кода, используя async/await и связывая задачи с помощью ContinueWith() и проверяя исключения с помощью TaskContinuationOptions.NotOnFaulted. Когда я отлаживал код, я заметил, что он работает не так, как я...
1875 просмотров
schedule 20.07.2023