Публикации по теме 'purescript'
Индекс - Сделайте скачок от JavaScript к Purescript
Это указатель к серии руководств «Сделайте скачок от JavaScript к PureScript». Я буду публиковать новое руководство примерно раз в месяц. Так что возвращайтесь почаще, это еще не все!
Показатель
Введение (установка и настройка PureScript) 01__Create linear data flow with container style types (Box) 02__Refactor императивный код для одного составного выражения с использованием Box 03__Выполнить нулевую проверку с разветвлением составного кода с помощью Either..
Вопросы по теме 'purescript'
System.IO.UTF8 не найден (установка PureScript)
Я пытаюсь установить PureScript на Ubuntu 14.04. У меня установлена последняя версия Haskell-Platform, и я запустил cabal update . Во время cabal install purescript я получаю сообщение об ошибке, что модуль System.IO.UTF8 не найден. Поиск в...
909 просмотров
schedule
30.12.2022
Читательская монада в Purescript
Я играл с монадой Reader в Purescript и столкнулся со странным поведением. Я не знаю, то ли это из-за моего непонимания этой монады, то ли из-за того, что я упускаю что-то еще.
Это мой код:
type Level = Number
type Doc = Reader Level String...
323 просмотров
schedule
21.10.2022
Как справиться с побочными эффектами с помощью Eff Monad
Я немного озадачен этим сообщением об ошибке
Warning: Error in module Chapter2:
Error in value declaration unionIsForeign:
Error checking that type
Control.Monad.Eff.Eff (trace :: Debug.Trace.Trace | u8717) u8715
subsumes type...
327 просмотров
schedule
07.09.2022
Манипулирование бесплатными монадами в Purescript
Почему Control.Monad.Free в purescript-free скрывает структуру данных "представление" FreeView и связанные операторы toView и т. д.?
С обычной формулировкой Свободной Монады -
data Free f a = Pure a | Free (f (Free f a))
И учитывая...
413 просмотров
schedule
29.04.2022
Функция компонента Purescript Halogen: передача аргументов с интервалами вместо записи?
У меня PureScript 0.8.2. В PureScript Halogen функция component имеет сигнатуру:
component :: forall s f g. ComponentSpec s f g -> Component s f g
куда
-- | A spec for a component.
type ComponentSpec s f g =
{ render :: s ->...
79 просмотров
schedule
27.07.2023
Почему мой эффект вызывается дважды?
У меня есть следующая программа, написанная с Eff s и Aff s. Который работает, как и ожидалось. То есть он выводит заданное Int и выполняет асинхронные вычисления.
type JsonResponse = AffjaxResponse Json
access :: forall e m. Aff (ajax ::...
149 просмотров
schedule
12.02.2023
Экземпляр Typeclass с типом строки в заголовке экземпляра?
Играя с PureScript, я обнаружил, что хочу написать класс типов Sync , который будет ждать разрешения произвольных асинхронных значений в монаде Aff . Написанный мной класс типов выглядел так:
class Sync s eff a where
sync :: s -> Aff eff...
311 просмотров
schedule
08.06.2023
Purescript thermite и веб-розетки
Я пытаюсь использовать purescript-thermite для создания приложения с использованием веб-сокетов. Идея состоит в том, что приложение подключается к какому-либо серверу с помощью веб-сокетов и обновляет HTML-страницу в реальном времени. Однако я не...
622 просмотров
schedule
02.03.2022
'Экземпляр класса типа не найден' в классе типов с несколькими параметрами
Разумно ли иметь классы многопараметрических типов в PureScript?
Компилятор выдает необоснованную ошибку «Не найден экземпляр класса типа» (см. полный вывод ). приведенное ниже определение класса типа:
class Transform model turn where...
162 просмотров
schedule
12.06.2023
Понимание Purescript Eff Monad и блоков do
Я пытаюсь понять, почему следующее не работает в Purescript. У меня есть чувство, что на него также может ответить сообщество Haskell, поэтому я перечислил его.
Общая суть:
Если у меня есть блок do , могу ли я не добавить одноразовое значение?...
769 просмотров
schedule
03.09.2022
Специализированный экземпляр класса в PureScript
Скажем, у меня есть следующий тип:
newtype T1 a = T1 a
Я могу сделать для него Show экземпляр:
instance showT1Generic :: Show a => Show (T1 a) where
show (T1 a) = "generic: " <> show a
Однако, допустим, я хочу сделать...
116 просмотров
schedule
06.06.2022
Получить текущее время/дату в purescript
Это кажется мне странным вопросом, но я прошел через purescript-datetime и purescript-js-date и просто не могу найти способ получить текущий DateTime . Есть ли какая-то скрытая библиотечная функция или мне нужно пройти через FFI?
482 просмотров
schedule
09.04.2023
преобразовать список строк в список кортежей, используя функцию foldl
У меня есть функция ниже:
fn :: [String] -> [(a,b,c)]
fn lst = case lst of
[] -> []
(a:b:c:xs) -> (a,b,c) : fn xs
Я хочу написать эту функцию, используя foldl или foldr
243 просмотров
schedule
26.03.2023
Как реализовать путь с более чем одним поддоменом с помощью Pux.Router?
Я использую Pux.Router и не могу заставить работать такой путь, как auth/facebook . auth работает и facebook работает, но не вместе. Например FacebookAuth <$> (lit "facebook" *> param "access_token") <*> (param "expires_in")...
60 просмотров
schedule
26.03.2023
Что делает функция флип?
Я новичок в чистоскрипте. Это книга Leanpub-purescript на котором я учусь. Я не могу понять, что такое флип-функция. Это похоже на обмен понятиями?
> :type flip
forall a b c. (a -> b -> c) -> b -> a -> c
что означает a...
569 просмотров
schedule
16.02.2023
Импорт новых типов из другого модуля
В последнее время я изучаю PureScript и сделал небольшое приложение, которое рисует куб на экране. Все хорошо, и я определил несколько newtype в верхней части модуля Main следующим образом:
newtype Vec2 = Vec2
{
x :: Number
,...
350 просмотров
schedule
28.04.2024
PureScript FFI и Aff Monad: почему эффект никогда не запускается?
Я новичок в PureScript, и мне нужна помощь, чтобы понять, почему функция FFI, смоделированная с помощью монады Aff, у меня не работает.
Ожидаемое поведение — запись сообщения «keyMessage» в консоль через 1000 мс.
Вместо этого программа просто...
485 просмотров
schedule
08.07.2022
вывести тип для общих полей в двух записях
Потерпите меня, если это глупый вопрос. Как я могу ввести универсальную функцию, которая принимает две записи и возвращает массив их общих полей?
Допустим, у меня есть:
type A = { name :: String, color :: String }
type B = { name :: String,...
981 просмотров
schedule
10.02.2023
Как писать защитные программы с помощью purescript Aff
Я как бы новичок в purescript, и я экспериментировал с эффектами и определенными асинхронными эффектами.
Одна из вещей, которые мне больше всего нравятся в FP и строгих компиляторах, таких как purescript, - это то, что он заставляет вас...
711 просмотров
schedule
17.04.2022
Равенство по умолчанию для типов записей?
Я делаю это упражнение из конца главы 3 в The Purescript Book :
Напишите функцию, которая ищет запись по адресу, повторно используя существующий код в findEntry. Проверьте свою функцию в PSCi.
Я пытался:
findByAddress address = head...
93 просмотров
schedule
19.05.2022