commit
1288a421e2
6 changed files with 12 additions and 19 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -3,9 +3,11 @@
|
|||
|
||||
# CABAL
|
||||
/dist
|
||||
/dist-newstyle
|
||||
/cabal-dev
|
||||
/.cabal-sandbox
|
||||
/cabal.sandbox.config
|
||||
.ghc.environment.*
|
||||
|
||||
# Haskell Program Coverage
|
||||
/.hpc
|
||||
|
|
|
@ -4,8 +4,8 @@ license: BSD3
|
|||
license-file: LICENCE
|
||||
author: Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ>
|
||||
maintainer: Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ>
|
||||
copyright: Copyright (C) 2015-2016 National ICT Australia Limited
|
||||
copyright: Copyright (c) 2017-2018, Commonwealth Scientific and Industrial Research Organisation (CSIRO) ABN 41 687 119 230.
|
||||
copyright: Copyright (C) 2015-2016 National ICT Australia Limited,
|
||||
Copyright (c) 2017-2018, Commonwealth Scientific and Industrial Research Organisation (CSIRO) ABN 41 687 119 230.
|
||||
synopsis: Source code for exercises on the lens concept
|
||||
category: Education
|
||||
description: Source code for exercises on the lens concept
|
||||
|
@ -27,7 +27,7 @@ library
|
|||
|
||||
build-depends: base >= 4.8 && < 5
|
||||
, containers >= 0.4.0.0
|
||||
|
||||
|
||||
ghc-options: -Wall
|
||||
-fno-warn-unused-binds
|
||||
-fno-warn-unused-do-bind
|
||||
|
@ -44,7 +44,7 @@ library
|
|||
Lets.OpticPolyLens
|
||||
Lets.Profunctor
|
||||
Lets.StoreLens
|
||||
|
||||
|
||||
test-suite doctests
|
||||
type:
|
||||
exitcode-stdio-1.0
|
||||
|
|
|
@ -16,7 +16,6 @@ module Lets.Data (
|
|||
, Identity(..)
|
||||
, AlongsideLeft(..)
|
||||
, AlongsideRight(..)
|
||||
, bool
|
||||
) where
|
||||
|
||||
import Control.Applicative(Applicative(..))
|
||||
|
@ -172,22 +171,10 @@ instance Functor f => Functor (AlongsideLeft f b) where
|
|||
|
||||
data AlongsideRight f a b =
|
||||
AlongsideRight {
|
||||
getAlongsideRight ::
|
||||
getAlongsideRight ::
|
||||
f (a, b)
|
||||
}
|
||||
|
||||
instance Functor f => Functor (AlongsideRight f a) where
|
||||
fmap f (AlongsideRight x) =
|
||||
AlongsideRight (fmap (\(a, b) -> (a, f b)) x)
|
||||
|
||||
----
|
||||
|
||||
bool ::
|
||||
a
|
||||
-> a
|
||||
-> Bool
|
||||
-> a
|
||||
bool f _ False =
|
||||
f
|
||||
bool _ t True =
|
||||
t
|
||||
|
|
|
@ -7,6 +7,7 @@ module Lets.GetSetLens (
|
|||
, set
|
||||
, modify
|
||||
, (%~)
|
||||
, (.~)
|
||||
, fmodify
|
||||
, (|=)
|
||||
, fstL
|
||||
|
|
|
@ -9,6 +9,7 @@ module Lets.OpticPolyLens (
|
|||
, set
|
||||
, modify
|
||||
, (%~)
|
||||
, (.~)
|
||||
, fmodify
|
||||
, (|=)
|
||||
, fstL
|
||||
|
|
|
@ -14,6 +14,7 @@ module Lets.StoreLens (
|
|||
, set
|
||||
, modify
|
||||
, (%~)
|
||||
, (.~)
|
||||
, fmodify
|
||||
, (|=)
|
||||
, fstL
|
||||
|
@ -28,6 +29,7 @@ module Lets.StoreLens (
|
|||
, choice
|
||||
, (|||)
|
||||
, cityL
|
||||
, stateL
|
||||
, countryL
|
||||
, streetL
|
||||
, suburbL
|
||||
|
@ -51,7 +53,7 @@ import Data.Map(Map)
|
|||
import qualified Data.Map as Map(insert, delete, lookup)
|
||||
import Data.Set(Set)
|
||||
import qualified Data.Set as Set(insert, delete, member)
|
||||
import Lets.Data(Store(Store), Person(Person), Locality(Locality), Address(Address), bool)
|
||||
import Lets.Data(Store(Store), Person(Person), Locality(Locality), Address(Address))
|
||||
import Prelude hiding (product)
|
||||
|
||||
-- $setup
|
||||
|
|
Loading…
Reference in a new issue