Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/lamdu/hypertypes

Hypertypes - generic programming for heterogeneous recursive types
https://github.com/lamdu/hypertypes

Blame: custom class for recursive constraints

94a7dd30d9872ba51e90aa6238cb025f7581edec authored over 5 years ago by Yair Chuchem <[email protected]>
RZipMatch

98122e73907ee9c4bf55ca8920878987a6c15c11 authored over 5 years ago by Yair Chuchem <[email protected]>
Use one-liner to replace Deps boiler-plate

Learned about it from https://reasonablypolymorphic.com/blog/hkd-not-terrible/

fad9c341749ce1dbe3240020a36eaea61863acca authored over 5 years ago by Yair Chuchem <[email protected]>
MonadInstantiate implies Unify

5fa6ce0197f8752c784c7cfe3fc8a1880b70d62f authored over 5 years ago by Yair Chuchem <[email protected]>
foldMapK moved to KFoldable towards deprecating foldMapC

2dee0f341f5005d278cab03eb6655c99148c1cc5 authored over 5 years ago by Yair Chuchem <[email protected]>
Some mapK in instances towards replacing current default method

de090f4005edf573123db86b52fb76c186c3354a authored over 5 years ago by Yair Chuchem <[email protected]>
mapKWithConstraint towards replacing current mapKWith

did not replace some of the more difficult instances (which currently use several typeclasses)

a8c3b8ada3b94e5a6fb971eb8fc11780ec9ce87a authored over 5 years ago by Yair Chuchem <[email protected]>
Remove unused default implementation for verifyConstraints

277cd378915df122978e9f5fde7115adf0218056 authored over 5 years ago by Yair Chuchem <[email protected]>
remove redundant argument to verifyConstraints

10720b9481b08c327130c4b4bf07ca9538b2ea0e authored over 5 years ago by Yair Chuchem <[email protected]>
Move HasTypeConstraints class to AST.Class.Unify

61b97337a5e9b33c1b530a7ca8e7955b149dcc02 authored over 5 years ago by Yair Chuchem <[email protected]>
Temporarily remove AST.Combinator.Compose

It's easier to do changes and maintain them only on the used and tested parts first

ffb907675ebdabf77ac4ce2605e727734b9df221 authored over 5 years ago by Yair Chuchem <[email protected]>
Remove AST.Knot.Prune, either temporarily or will be replaced by ToKnot Maybe

2e8b7b8cd6dbf4b4f30dc0af8bcb388938adc7f7 authored over 5 years ago by Yair Chuchem <[email protected]>
remove unused combinators

9db4dc7ee2a01fdb6645e508d972fcafdf504f49 authored over 5 years ago by Yair Chuchem <[email protected]>
More combinators get a single constraint rather than a list.

Towards reverting to use And and custom typeclasses to combine constraints rather than lists,
as...

92883cd9e4e85cd23fa9232088630cb97c81e07f authored over 5 years ago by Yair Chuchem <[email protected]>
replace usages of pureKWith with pureKWithConstraint

towards depracating the former and renaming the latter to it

ac740b24b347e2c5c24befe72d36d56ad83fbaed authored over 5 years ago by Yair Chuchem <[email protected]>
remove now redundant constraints

d10d5ec5d6a958a363972a3c8c919e47af0d5df9 authored over 5 years ago by Yair Chuchem <[email protected]>
Inferrable implies KTraversable for its InferOf

6815e8c84ab3322073c19f24148a5b6d82ff7a4c authored over 5 years ago by Yair Chuchem <[email protected]>
Unify implies RTraversable

34d29f44dc96308a958fdc4e08c3709648331d84 authored over 5 years ago by Yair Chuchem <[email protected]>
remove redundant constraints

b19c41d7810705aa8aada91ccb0bafcea04dc8f8 authored over 5 years ago by Yair Chuchem <[email protected]>
InferOf type family in Inferrable class

Towards adding context on its result

748f2e3be93494dcf3cf01c1db5ce2462f7feb8f authored over 5 years ago by Yair Chuchem <[email protected]>
RFoldable and RFunctor (temporarily) implies Recursive KNodes

Currently this simplifies many contexts.
When removing NodeTypesOf, it won't be necessary any lo...

edae04bf38f5041135b2593d96167fd455270a4b authored over 5 years ago by Yair Chuchem <[email protected]>
Infer implies that inferOf has unification variables

7f3682f6338b94681aeef0dcea9cd64ba25ad2de authored over 5 years ago by Yair Chuchem <[email protected]>
Infer class is recursive

40067158dd62714fe0e224f65954d9b6b39f697c authored over 5 years ago by Yair Chuchem <[email protected]>
Recursive: replace all deprecated combinators with new forms

6d543cfd6af5a6ee214a31fba274fd8181c31adb authored over 5 years ago by Yair Chuchem <[email protected]>
remove unused deprecated functions from Recursive

473fce2f06579a2eba90343828099f18bf0a74d2 authored over 5 years ago by Yair Chuchem <[email protected]>
RFunctor, RFoldable, RTraversable

One benefit over using Recursively is that RTraversable implies the others,
and so it's usable f...

9206ca6f412cfef4e2450fa80a74088d293acc26 authored over 5 years ago by Yair Chuchem <[email protected]>
temporarily remove foldMapRecursive

43a413d9c723711075b8f5ecaff100244a85b958 authored over 5 years ago by Yair Chuchem <[email protected]>
Temporarily remove KMonad.

It isn't currently in use and maintaining it isn't trivial

98f4c64a407a253c6d4b07c2b57b4d027fa2611d authored over 5 years ago by Yair Chuchem <[email protected]>
Recursive module doesn't export RLiftConstraints

9bd2faa6f23629750c0121d72a4383eb547b600a authored over 5 years ago by Yair Chuchem <[email protected]>
new generalized wrap combinator

fce524fd8d4146a9c0cb99846de2a026d6401b5c authored over 5 years ago by Yair Chuchem <[email protected]>
replace more uses of Recursively with new HasScheme class

6db9dc70a26aa885f7e10e6aa3ff0262a8300428 authored over 5 years ago by Yair Chuchem <[email protected]>
Temporarily remove applyNominal

* It requires maintenance
* It's used in Lamdu but the current testing cycle doesn't get to it a...

87820c758cd390884a848e633a2710ea98f78fa9 authored over 5 years ago by Yair Chuchem <[email protected]>
new unwrapM

3fdc408db2190b77c2b6f85c11020e368cd9b9f9 authored over 5 years ago by Yair Chuchem <[email protected]>
Remove last use of Recursively (Unify m)

52eb64c15ff10e17734d02c1e4879986f3474ea6 authored over 5 years ago by Yair Chuchem <[email protected]>
Move functions from AST.Term.Scheme to AST.Term.Scheme.AlphaEq

43a9bd428d8e73c28eebc10fc75265e90ff67738 authored over 5 years ago by Yair Chuchem <[email protected]>
Remove more uses of Recursively (Unify m)

One last use remains

4edac6214eee6ad309626a077f349663d3ce1833 authored over 5 years ago by Yair Chuchem <[email protected]>
new Recursive class allows using wrapM with Unify

da5cb121254370e6c9ec832133fae1e883e218ae authored over 5 years ago by Yair Chuchem <[email protected]>
Unify class is always recursive

Towards getting rid of the current Recursively class

In a few cases there's still usage of `Rec...

7fae4123ea16042f3c531cd561e4791d277bf73c authored over 5 years ago by Yair Chuchem <[email protected]>
remove redundant constraints

fc219566e44dc0ace7813fb1f601bc7e10befb22 authored over 5 years ago by Yair Chuchem <[email protected]>
Infer requires KFunctor

bfb90cc092d871ee80dd9ce842b69c69916b2a9a authored over 5 years ago by Yair Chuchem <[email protected]>
use mapK rather than mapC

b0217bbe3918a0a255d6916449bc16d961a29774 authored over 5 years ago by Yair Chuchem <[email protected]>
remove another unused instance

62e12586655e2242a8d033b592228b3c7115a641 authored over 5 years ago by Yair Chuchem <[email protected]>
remove more unused instances

892c974e9d84449bd9fc7f50665f9d1947cdef37 authored over 5 years ago by Yair Chuchem <[email protected]>
remove unused instance (for easier maintenance)

ab28ef9b3cf43bcef17f704ac67ede38de811557 authored over 5 years ago by Yair Chuchem <[email protected]>
use $ again

94ac5da4eded6188f2725caa2d588b908dbcb4ee authored over 5 years ago by Yair Chuchem <[email protected]>
use $

f382541983ba58801127a13dcd24207955beb149 authored over 5 years ago by Yair Chuchem <[email protected]>
Add some kind annotations for less doubt

05dc1be82b315d67ff77be1bd4438d330a7f7310 authored over 5 years ago by Yair Chuchem <[email protected]>
Add more monomorphic node combinators traverseK1_ etc

3fad6f50c06eb6ab96b2276dfefbe7e41b4e53fd authored over 5 years ago by Yair Chuchem <[email protected]>
Use traverseKWith_

35023576d8fb87af8d83a192a588d0c8c9de1b41 authored over 5 years ago by Yair Chuchem <[email protected]>
Move AST.Class.NodesConstraint into KLiftConstraint in AST.Class.Combinators

7bad6bf68ef7def968b0e065b62f67fb61802328 authored over 5 years ago by Yair Chuchem <[email protected]>
KLiftConstraints: change parameter order to it works as a knot constraint

80ddcf6032168225523812df22f31633d39a32e1 authored over 5 years ago by Yair Chuchem <[email protected]>
KMonad class

3e94e413e3fefbc9deba0c454d1aa3dd18a59d2d authored over 5 years ago by Yair Chuchem <[email protected]>
Remove infer result knot -

Replaced by configurable InferOf type family, and the examples now result in inferred types (and...

8004f2bea0b4200471db5ff9fec8d7b5208012c5 authored over 5 years ago by Yair Chuchem <[email protected]>
Partially revert "Replace INLINE pragmas with -fexpose-all-unfoldings flag"

Keep the -fexpose-all-unfoldings flag too.

This reverts commit 66aa656fba2027e85b85e7ded191e7e2...

36d145f5dd2efc39f1db309d57db4832ad7312b3 authored over 5 years ago by Yair Chuchem <[email protected]>
Replace INLINE pragmas with -fexpose-all-unfoldings flag

66aa656fba2027e85b85e7ded191e7e2cbcb550a authored over 5 years ago by Yair Chuchem <[email protected]>
Fix hack in TypeSig. The scheme is a normal node for which an inferred value is inferred

1bac894f70c81d2ea67a765d55c5eed2f21ecdc3 authored over 5 years ago by Yair Chuchem <[email protected]>
extract emptyLangAInferEnv

3fdf83337b0f676f77fce3881fc1900389f7fcf8 authored over 5 years ago by Yair Chuchem <[email protected]>
LangA: replace tuple with LangAInferState

45c297f62b54692495ef3e358c3f9e6f7d163578 authored over 5 years ago by Yair Chuchem <[email protected]>
Infer instance for Scheme resulting with an inferred GTerm value

d524d13970a341c313078b90262bf33b514395b0 authored over 5 years ago by Yair Chuchem <[email protected]>
avoid cloneLens

fe07fd4b817f05b298675f1e3363afdf266ca62f authored over 5 years ago by Yair Chuchem <[email protected]>
Use TypeApplications for better ergonomics

89f7d983e0103bdc5457eb8ff51a26c4ad97eeb3 authored over 5 years ago by Yair Chuchem <[email protected]>
Enable syntactic extensions LambdaCase and more system wide

Also enabled:
TupleSections, TypeOperators, DerivingStrategies,
StandaloneDeriving, DeriveGeneric

817186da82ed12e7ddb3d4b64c32ee4a776a3f69 authored over 5 years ago by Yair Chuchem <[email protected]>
Add library-wide extensions NoImplicitPrelude and more

Also added ConstraintKinds, DataKinds, TypeFamilies, MultiParamTypeClasses

All of these are ext...

d190cd3171a4f02ff43c90cdac03e358694cdc05 authored over 5 years ago by Yair Chuchem <[email protected]>
Infer doesn't necessarily produce a type and scope for each node

What is inferred is determined by the InferOf type family.
This will enable embedding types in t...

e2f471e5a2d50552bf4f8979069b522d45bcc7de authored over 5 years ago by Yair Chuchem <[email protected]>
Add instances for ANode

1d65c957ec5ee9e59a18e4a5175f41088f7cb552 authored over 5 years ago by Yair Chuchem <[email protected]>
traverseK1 moved to AST.Combinator.ANode

8f4c1a90eb13c5e84de1ae323b1b42878946156e authored over 5 years ago by Yair Chuchem <[email protected]>
add comment linking to issue on base

dd757d60f7446481b907b1c187ff5b5b0eec7ad2 authored over 5 years ago by Yair Chuchem <[email protected]>
KNodesConstraint combinator lifts constraint to children

Unlike previous KLiftConstraint, constraint comes first and it is a class,
so can be provided as...

8329a40d7f0da4bfcb041106c1ff6a5f67c9d290 authored over 5 years ago by Yair Chuchem <[email protected]>
remove KLiftConstraint type synonym

7445277f50512ec08266a919d4a91b6229085da6 authored over 5 years ago by Yair Chuchem <[email protected]>
sequenceLiftK2_

30a46a3abbc20153951e53dc02f123b262e3ecac authored over 5 years ago by Yair Chuchem <[email protected]>
sequenceLiftK2

22f99e5c557c048f114b1a60074e15612eeb7866 authored over 5 years ago by Yair Chuchem <[email protected]>
minor cleanup, less code under localLevel

4f4578a965ad0f181ed962547ad67520df6ae012 authored over 5 years ago by Yair Chuchem <[email protected]>
sequencePureK

34b9707b3fdf5d508765f3b7af9dcc5e4327e20e authored over 5 years ago by Yair Chuchem <[email protected]>
remove outdated comments

6bb9b3c9eff9a08736d1767bb70d14dc7913bb8d authored over 5 years ago by Yair Chuchem <[email protected]>
Extract AST.Infer.Result

07e2bf372d38460af3750f68e5ea6d1cc08a9672 authored over 5 years ago by Yair Chuchem <[email protected]>
Replace custom IResultNodeTypes with use of Product

fd48f00a14782b1935daa9fa4e40020be76160fb authored over 5 years ago by Yair Chuchem <[email protected]>
rename TH modules to be under AST.TH

this looks more appropriate and it cleans up other folders

18b380ea497380b6efea8248e5d08c8118cf548b authored over 5 years ago by Yair Chuchem <[email protected]>
Remove AST.Combinator.Pair. Use Product with ANode instead

4707df5b6879c7ca48a9948bc766150278fc9d95 authored over 5 years ago by Yair Chuchem <[email protected]>
ANode: rename data constructor too

81f4d106bb003d4563c38cd6332681e0c89a6e2b authored over 5 years ago by Yair Chuchem <[email protected]>
hlint police

17cacf05bc999bc9434fc84b9c65787b0e6f1b7f authored over 5 years ago by Yair Chuchem <[email protected]>
Use Data.Functor.Product.PolyKinds, a fixed version of the original Product

d152b5d328c54999d6b19280b263777a3dc8a062 authored over 5 years ago by Yair Chuchem <[email protected]>
add original Data.Functor.Product as Data.Functor.Product.PolyKinds

470d33758fbf28269d00e8afae9dfee67940eba0 authored over 5 years ago by Yair Chuchem <[email protected]>
Single=>ANode

eb908a556c1e28f30ea1623d80fdb75f307922d7 authored over 5 years ago by Yair Chuchem <[email protected]>
Use Data.Functor.Product from base instead of Both

b1fa6b56c94518e247ba24cdb5c340bd99465d7c authored over 5 years ago by Yair Chuchem <[email protected]>
re-exports

29a57c75f72af242b008c758ccedad3009f64373 authored over 5 years ago by Yair Chuchem <[email protected]>
docs and re-exports

ff7fce0180bf6757a80050115567919ae39b87c8 authored over 5 years ago by Yair Chuchem <[email protected]>
docs update

550ac48e71383b60bb415c76796815bcc3d2a970 authored over 5 years ago by Yair Chuchem <[email protected]>
Move HasChild class to AST.Class.Has module

2ebdf2498a4599e9141fcd0feb553bb38ab76ca3 authored over 5 years ago by Yair Chuchem <[email protected]>
Replace ApplyKConstraints with more general and better named ApplyConstraints

ac58f13e97fe143554a7a64f27f6adb57ce7e7f7 authored over 5 years ago by Yair Chuchem <[email protected]>
Default NodesConstraint instance inherited from NodeTypesOf's constraint

30fe033bb43e56730e6bfd4e492a648abd4b1cc1 authored over 5 years ago by Yair Chuchem <[email protected]>
replace KnotsConstraint with more generic type functions

aa86a6c3d484be9dee17091376fdeba5fc678318 authored over 5 years ago by Yair Chuchem <[email protected]>
ConcatKnotConstraints => more generic ConcactConstraintFuncs

f2ffd9ae91fb57b8e673d74024c0ee01f8e94ae1 authored over 5 years ago by Yair Chuchem <[email protected]>
remove superfluous type parameter names

a33bb641aea26dbf7e18423aebc431a8d4dc8ec5 authored over 5 years ago by Yair Chuchem <[email protected]>
Simpler style with ScopedTypeVariables

dcb0e0150af94517f88f9099f66d311955b6ed55 authored over 5 years ago by Yair Chuchem <[email protected]>
remove re-exports

9e08a0cbb6a0aa4852cc94ad95a521abb04c8192 authored over 5 years ago by Yair Chuchem <[email protected]>
Replace ApplyKnotConstraint with a general Apply as in the singletons package

ad47aaf8d2a1ecd208c7ece84a8f2ac313b922f6 authored over 5 years ago by Eyal Lotem <[email protected]>
ApplyKnotConstraints=>Apply

d37924fbde5b1b7744fa6de8f3b50ab7b093521b authored over 5 years ago by Eyal Lotem <[email protected]>
Term.{Apply=>App}, like Lam

4b8a226e23d28e98f4deef6d0e7298c4ce37fc4e authored over 5 years ago by Eyal Lotem <[email protected]>
Remove unused ApplyKnotConstraints

5e85e445e6f0374cbecfe855f908616c6e8a2734 authored over 5 years ago by Eyal Lotem <[email protected]>
Simpler defunctionalization again: func repr via normal type

fe0711d8ba48b83762693bc3865f7635952f4112 authored over 5 years ago by Eyal Lotem <[email protected]>