From 3276d2f48330e427432abb0386daf0f06a603e37 Mon Sep 17 00:00:00 2001 From: Ben Levy Date: Mon, 17 Apr 2023 16:48:49 +0000 Subject: [PATCH] Spagoify package; Remove MonadZero instance due to deprecation --- .gitignore | 1 + packages.dhall | 105 +++++++++++++++++++++++ spago.dhall | 17 ++++ src/Control/Transformers/Back/Trans.purs | 2 - 4 files changed, 123 insertions(+), 2 deletions(-) create mode 100644 packages.dhall create mode 100644 spago.dhall diff --git a/.gitignore b/.gitignore index 88d200d..dc6d41b 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /.psc* /.purs* /.psa* +/.spago/ diff --git a/packages.dhall b/packages.dhall new file mode 100644 index 0000000..74147df --- /dev/null +++ b/packages.dhall @@ -0,0 +1,105 @@ +{- +Welcome to your new Dhall package-set! + +Below are instructions for how to edit this file for most use +cases, so that you don't need to know Dhall to use it. + +## Use Cases + +Most will want to do one or both of these options: +1. Override/Patch a package's dependency +2. Add a package not already in the default package set + +This file will continue to work whether you use one or both options. +Instructions for each option are explained below. + +### Overriding/Patching a package + +Purpose: +- Change a package's dependency to a newer/older release than the + default package set's release +- Use your own modified version of some dependency that may + include new API, changed API, removed API by + using your custom git repo of the library rather than + the package set's repo + +Syntax: +where `entityName` is one of the following: +- dependencies +- repo +- version +------------------------------- +let upstream = -- +in upstream + with packageName.entityName = "new value" +------------------------------- + +Example: +------------------------------- +let upstream = -- +in upstream + with halogen.version = "master" + with halogen.repo = "https://example.com/path/to/git/repo.git" + + with halogen-vdom.version = "v4.0.0" + with halogen-vdom.dependencies = [ "extra-dependency" ] # halogen-vdom.dependencies +------------------------------- + +### Additions + +Purpose: +- Add packages that aren't already included in the default package set + +Syntax: +where `` is: +- a tag (i.e. "v4.0.0") +- a branch (i.e. "master") +- commit hash (i.e. "701f3e44aafb1a6459281714858fadf2c4c2a977") +------------------------------- +let upstream = -- +in upstream + with new-package-name = + { dependencies = + [ "dependency1" + , "dependency2" + ] + , repo = + "https://example.com/path/to/git/repo.git" + , version = + "" + } +------------------------------- + +Example: +------------------------------- +let upstream = -- +in upstream + with benchotron = + { dependencies = + [ "arrays" + , "exists" + , "profunctor" + , "strings" + , "quickcheck" + , "lcg" + , "transformers" + , "foldable-traversable" + , "exceptions" + , "node-fs" + , "node-buffer" + , "node-readline" + , "datetime" + , "now" + ] + , repo = + "https://github.com/hdgarrood/purescript-benchotron.git" + , version = + "v7.0.0" + } +------------------------------- +-} +let upstream = + https://github.com/purescript/package-sets/releases/download/psc-0.15.4/packages.dhall + sha256:a6d66723b6109f1e3eaf6575910f1c51aa545965ce313024ba329360e2f009ac + +in upstream diff --git a/spago.dhall b/spago.dhall new file mode 100644 index 0000000..7d64dee --- /dev/null +++ b/spago.dhall @@ -0,0 +1,17 @@ +{- +Welcome to a Spago project! +You can edit this file as you like. + +Need help? See the following resources: +- Spago documentation: https://github.com/purescript/spago +- Dhall language tour: https://docs.dhall-lang.org/tutorials/Language-Tour.html + +When creating a new Spago project, you can use +`spago init --no-comments` or `spago init -C` +to generate this file without the comments in this block. +-} +{ name = "backtrack" +, dependencies = [ "control", "effect", "prelude", "tailrec", "transformers" ] +, packages = ./packages.dhall +, sources = [ "src/**/*.purs" ] +} diff --git a/src/Control/Transformers/Back/Trans.purs b/src/Control/Transformers/Back/Trans.purs index 2b94b0b..8b497d8 100644 --- a/src/Control/Transformers/Back/Trans.purs +++ b/src/Control/Transformers/Back/Trans.purs @@ -8,7 +8,6 @@ import Control.Monad.Rec.Class (class MonadRec, Step(..), tailRecM) import Control.Monad.State.Class (class MonadState, state) import Control.Monad.Trans.Class (class MonadTrans, lift) import Control.MonadPlus (class Plus) -import Control.MonadZero (class MonadZero) data FailBack a = BackPoint a | NoBack a | GoBack newtype BackT m a = BackT (m(FailBack a)) @@ -94,4 +93,3 @@ instance plusBackT :: Monad m ⇒ Plus (BackT m) where instance alternativeBackT :: Monad m ⇒ Alternative (BackT m) -instance monadZeroBackT :: Monad m ⇒ MonadZero (BackT m)