Mathieu Boespflug
3af7a53159
Use Buildkite badge
2019-12-29 21:37:39 +01:00
Mathieu Boespflug
74d8c9d92f
Remove TravisCI configuration file
2019-12-29 21:37:27 +01:00
Mathieu Boespflug
e3ba2fa63a
buildkite agent boilerplate
2019-12-29 21:33:12 +01:00
Mathieu Boespflug
d9a50c01ce
Add stack lock file
2019-12-29 21:22:43 +01:00
Mathieu Boespflug
2471453592
Switch from CircleCI to Buildkite
2019-12-29 21:21:30 +01:00
Mathieu Boespflug
5619c8a7c4
Add a Nix shell file and instruct Stack to use shell provided GHC
2019-12-29 21:18:21 +01:00
Mathieu Boespflug
996fe7c235
Switch to latest LTS.
2019-12-29 19:37:17 +01:00
Mathieu Boespflug
3c9d3e0c9c
Merge pull request #24 from facundominguez/fd/ghc-8.9
...
Fix build error in ghc-8.9
2019-07-19 00:48:41 +03:00
Facundo Domínguez
a1c6780d87
Fix build error in ghc-8.9.
2019-07-12 13:20:22 -03:00
Mathieu Boespflug
1819fe3cf5
Bump version.
2019-03-20 14:50:57 +01:00
Mathieu Boespflug
18689b9a6b
Switch to latest LTS.
2019-03-20 14:50:00 +01:00
Mathieu Boespflug
dcb28d9df2
Turn on UndecidableInstances in test file.
...
Since newer GHC is stricter about undecidable instances.
2019-03-20 14:49:36 +01:00
Mathieu Boespflug
9bc2f9e33d
Bump version.
2018-09-18 20:42:50 +02:00
Mathieu Boespflug
5776daefae
Merge pull request #18 from tweag/ghc84
...
GHC 8.4 compatibility
2018-09-13 10:17:30 +03:00
Mathieu Boespflug
8759ae5860
Import Test.QuickCheck qualified to avoid name clashes.
2018-09-12 23:38:12 +02:00
Mathieu Boespflug
c366af62a2
Switch to LTS 12.
2018-09-12 23:38:12 +02:00
Mathieu Boespflug
6059d410c4
Allow instance Typeable in withStatic blocks
...
`Typeable` instances are not user defined. But the user nevertheless
sometimes needs static evidence of typeability. The solution is to
allow users to write
```haskell
withStatic [d| instance Typeable T |]
```
for any datatype `T`. `withStatic` will generate static evidence, but
won't pass through the instance declaration itself, since it is
illegal.
2018-09-12 23:38:12 +02:00
Mathieu Boespflug
793ee0627d
Add Static instance for pairs of constraints.
2018-09-12 23:38:09 +02:00
Andreas Herrmann
49be4a95cf
Merge pull request #15 from tweag/ah/add-example
...
Add an example of sending functions
2018-02-07 12:33:12 +01:00
Andreas Herrmann
fd2c60230b
Add link from README to example
2018-02-07 11:55:15 +01:00
Andreas Herrmann
1723990fb7
Add an example of sending functions
...
As requested in #13 .
2018-02-07 10:40:32 +01:00
Facundo Domínguez
dceeb25a2a
Bump version to 0.4.0 and update changelog.
2018-02-06 09:20:49 -03:00
Facundo Domínguez
df9b79af74
Merge pull request #14 from tweag/fd/check-scopedtypevariables
...
Check that ScopedTypeVariables is enabled when using withStatic
2018-02-06 09:19:50 -03:00
Facundo Domínguez
604068fe5f
Add more tests of withStatic.
2018-02-06 09:06:52 -03:00
Facundo Domínguez
87b4dfb313
Test that the extension ScopedTypeVariables is enabled when using withStatic.
2018-02-06 09:06:52 -03:00
Facundo Domínguez
e22aa9bc72
Bump version to 0.3.5 and add a changelog.
2018-02-01 09:38:39 -03:00
Facundo Domínguez
1612944995
Prevent warnings about redundant 'Typeable (Dict A)' constraints when A has no type variables.
2017-12-22 14:54:14 -03:00
Mathieu Boespflug
dea643bec6
Merge pull request #12 from tweag/static-class-hierarchy
...
Introduce static class hierarchy.
2017-08-16 19:13:46 +02:00
Mathieu Boespflug
3e351fd3da
Add extra Comonad laws.
2017-08-16 19:13:01 +02:00
Mathieu Boespflug
95a853d140
Remove Closure from definition of Applicative.
2017-08-16 13:08:46 +02:00
Mathieu Boespflug
d101795465
Remove C.D.C.Class module.
...
Holdover from previous commits.
2017-08-16 12:53:53 +02:00
Mathieu Boespflug
cff1ce0de5
Define type class hierarchy in separate modules. Remove StaticBifunctor.
...
We split type classes into their own modules that mirror the standard
module hierarchy, with `.Static` appended to the end of the names of
each module.
2017-08-15 08:19:46 +02:00
Mathieu Boespflug
143aae1fa4
Add StaticBifunctor, StaticProfunctor, StaticStrong and StaticChoice.
...
Thes are cardinal points in a lattice of profunctor optics, as
explained in "Profunctor Optics: modular data accessors" by Pickering
et al.
2017-08-13 15:06:41 +02:00
Mathieu Boespflug
5f4521be44
Fix Apply/Bind laws.
2017-08-12 23:48:23 +02:00
Mathieu Boespflug
ed07c6fed5
Add capDup combinator. Useful for stating Apply/Bind laws.
2017-08-12 23:47:32 +02:00
Mathieu Boespflug
4ac9d35c57
Laws for StaticApply and StaticBind.
2017-06-25 16:15:19 +02:00
Mathieu Boespflug
65d4ca6bf6
Fix signature of staticApply.
...
Make it consistent with `staticApply (staticPure f) x = staticMap f x`
law.
2017-06-25 16:14:03 +02:00
Mathieu Boespflug
9d72902de5
StaticExtend class.
...
semigroupoid version of StaticComonad. For consistency with the rest
of the class hierarchy.
2017-06-25 16:13:06 +02:00
Mathieu Boespflug
9a20eb0cc1
Introduce static class hierarchy.
...
`Closure` is not a functor, since we cannot map arbitrary functions
over it. But it sure looks like one, and an applicative one at that.
What we can do is map "static" functions over it (i.e. a `Closure`).
`Closure` is not just an applicative functor, it's also a monad, as
well as a comonad, if again we limit the function space to those
functions that can be statically pointed to. In fact an entire
hierarchy of classes mirroring the standard classes can be defined.
2017-06-19 21:49:07 +02:00
Mathieu Boespflug
feab2cedee
Add stack setup step.
2017-06-19 20:19:09 +02:00
Mathieu Boespflug
6d0aef4516
Enable CircleCI.
2017-06-19 20:08:28 +02:00
Arnaud Spiwack
eb50fcca61
Merge pull request #9 from tweag/better-generators
...
Tests: Add non-trivial generators for Closure
2017-06-19 18:01:22 +02:00
Arnaud Spiwack
a31397641b
Tests: slight simplification of generators
...
We don't need a table at every type, just inhabitants. Still far from
being extensible to more types though.
2017-06-19 17:38:55 +02:00
Arnaud Spiwack
f018546e57
Tests: add some comments on the generation strategy
2017-06-19 17:38:55 +02:00
Arnaud Spiwack
1fc1ee3958
Slightly more general tests
2017-06-19 17:38:55 +02:00
Arnaud Spiwack
1d5b78b5c5
Tests: clean-up: use the extensional equality on closures
2017-06-19 17:38:39 +02:00
Arnaud Spiwack
f08a0759de
Tests: Cleanup: closure (static …)
2017-06-19 17:38:35 +02:00
Arnaud Spiwack
db84adc04a
Tests: generate non-trivial closures
...
Tried with 4d9b0d3b5f498e7c49e679f4750ad6d38447afe8 and it indeed
finds a counter example.
2017-06-19 17:34:48 +02:00
Mathieu Boespflug
969454c9bc
Merge pull request #6 from tweag/cduplicate
...
Add closure duplication (comonadic operation).
2017-06-17 11:20:13 +02:00
Mathieu Boespflug
c667a8343e
Merge pull request #11 from brandon-leapyear/master
...
Create .gitignore
2017-06-17 10:55:50 +02:00