Skip to content

Commit

Permalink
Update paper links (#80)
Browse files Browse the repository at this point in the history
  • Loading branch information
snowleopard authored Apr 7, 2024
1 parent 3c49839 commit 6c5aba0
Show file tree
Hide file tree
Showing 14 changed files with 14 additions and 26 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

This is a library for *selective applicative functors*, or just *selective functors*
for short, an abstraction between applicative functors and monads, introduced in
[this paper](https://dl.acm.org/ft_gateway.cfm?id=3341694).
[this paper](https://dl.acm.org/doi/10.1145/3341694).

## What are selective functors?

Expand Down
3 changes: 1 addition & 2 deletions examples/Build.hs
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@ module Build where
import Control.Selective
import Control.Selective.Rigid.Free

-- See Section 3 of the paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf
-- See Section 3 of the paper: https://dl.acm.org/doi/10.1145/3341694.

-- | Selective build tasks.
-- See "Build Systems à la Carte": https://dl.acm.org/citation.cfm?id=3236774.
Expand Down
3 changes: 1 addition & 2 deletions examples/Parser.hs
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,7 @@ import Control.Applicative
import Control.Monad
import Control.Selective

-- See Section 7.2 of the paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf
-- See Section 7.2 of the paper: https://dl.acm.org/doi/10.1145/3341694.

newtype Parser a = Parser { parse :: String -> [(a, String)] }

Expand Down
3 changes: 1 addition & 2 deletions examples/Processor.hs
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,7 @@ import Prelude hiding (read, log)
import qualified Control.Monad.Trans.State as S
import qualified Data.Map.Strict as Map

-- See Section 5.3 of the paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf
-- See Section 5.3 of the paper: https://dl.acm.org/doi/10.1145/3341694.
-- Note that we have changed the naming.

-- | A standard @MonadState@ class extended with the 'Selective' interface.
Expand Down
3 changes: 1 addition & 2 deletions examples/Teletype.hs
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,7 @@ import qualified Control.Monad as IO
import Control.Selective
import Control.Selective.Free

-- See Section 5.2 of the paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf
-- See Section 5.2 of the paper: https://dl.acm.org/doi/10.1145/3341694.

-- | The classic @Teletype@ base functor.
data TeletypeF a = Read (String -> a) | Write String a deriving Functor
Expand Down
3 changes: 1 addition & 2 deletions examples/Teletype/Rigid.hs
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,7 @@ import qualified Control.Monad as IO
import Control.Selective
import Control.Selective.Rigid.Free

-- See Section 5.2 of the paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf
-- See Section 5.2 of the paper: https://dl.acm.org/doi/10.1145/3341694.

-- | The classic @Teletype@ base functor.
data TeletypeF a = Read (String -> a) | Write String a deriving Functor
Expand Down
3 changes: 1 addition & 2 deletions examples/Validation.hs
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@ module Validation where

import Control.Selective

-- See Section 2.2 of the paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf
-- See Section 2.2 of the paper: https://dl.acm.org/doi/10.1145/3341694.

type Radius = Word
type Width = Word
Expand Down
2 changes: 1 addition & 1 deletion selective.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ description: Selective applicative functors: declare your effects statically,
This is a library for /selective applicative functors/, or just
/selective functors/ for short, an abstraction between
applicative functors and monads, introduced in
<https://doi.org/10.1145/3341694 this paper>.
<https://dl.acm.org/doi/10.1145/3341694 this paper>.

extra-doc-files:
CHANGES.md
Expand Down
3 changes: 1 addition & 2 deletions src/Control/Selective.hs
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@
--
-- This is a library for /selective applicative functors/, or just
-- /selective functors/ for short, an abstraction between applicative functors
-- and monads, introduced in this paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf.
-- and monads, introduced in this paper: https://dl.acm.org/doi/10.1145/3341694.
--
-----------------------------------------------------------------------------
module Control.Selective (
Expand Down
3 changes: 1 addition & 2 deletions src/Control/Selective/Free.hs
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@
--
-- This is a library for /selective applicative functors/, or just
-- /selective functors/ for short, an abstraction between applicative functors
-- and monads, introduced in this paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf.
-- and monads, introduced in this paper: https://dl.acm.org/doi/10.1145/3341694.
--
-- This module defines /free selective functors/ using the ideas from the
-- Sjoerd Visscher's package 'free-functors':
Expand Down
3 changes: 1 addition & 2 deletions src/Control/Selective/Multi.hs
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,7 @@
--
-- This is a library for /selective applicative functors/, or just
-- /selective functors/ for short, an abstraction between applicative functors
-- and monads, introduced in this paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf.
-- and monads, introduced in this paper: https://dl.acm.org/doi/10.1145/3341694.
--
-- This module defines /multi-way selective functors/, which are more efficient
-- when selecting from a large number of options. They also fully subsume the
Expand Down
3 changes: 1 addition & 2 deletions src/Control/Selective/Rigid/Free.hs
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@
--
-- This is a library for /selective applicative functors/, or just
-- /selective functors/ for short, an abstraction between applicative functors
-- and monads, introduced in this paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf.
-- and monads, introduced in this paper: https://dl.acm.org/doi/10.1145/3341694.
--
-- This module defines /free rigid selective functors/. Rigid selective functors
-- are those that satisfy the property @\<*\> = apS@.
Expand Down
3 changes: 1 addition & 2 deletions src/Control/Selective/Rigid/Freer.hs
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@
--
-- This is a library for /selective applicative functors/, or just
-- /selective functors/ for short, an abstraction between applicative functors
-- and monads, introduced in this paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf.
-- and monads, introduced in this paper: https://dl.acm.org/doi/10.1145/3341694.
--
-- This module defines /freer rigid selective functors/. Rigid selective
-- functors are those that satisfy the property @\<*\> = apS@. Compared to the
Expand Down
3 changes: 1 addition & 2 deletions src/Control/Selective/Trans/Except.hs
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,7 @@
--
-- This is a library for /selective applicative functors/, or just
-- /selective functors/ for short, an abstraction between applicative functors
-- and monads, introduced in this paper:
-- https://www.staff.ncl.ac.uk/andrey.mokhov/selective-functors.pdf.
-- and monads, introduced in this paper: https://dl.acm.org/doi/10.1145/3341694.
--
-- This module defines a newtype around 'ExceptT' from @transformers@ with less
-- restrictive 'Applicative', 'Selective', and 'Alternative' implementations.
Expand Down

0 comments on commit 6c5aba0

Please sign in to comment.