-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
IOHK
committed
Sep 30, 2023
1 parent
1906e1f
commit 034b3af
Showing
123 changed files
with
6,419 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
54 changes: 54 additions & 0 deletions
54
...ategories-0.3.0.0-r0-7c010101053ce835399ba6f2101aa82c197420a6aa3d681801a2730f82b13fdc.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = {}; | ||
package = { | ||
specVersion = "3.0"; | ||
identifier = { name = "FiniteCategories"; version = "0.3.0.0"; }; | ||
license = "GPL-3.0-or-later"; | ||
copyright = ""; | ||
maintainer = "[email protected]"; | ||
author = "Guillaume Sabbagh"; | ||
homepage = "https://gitlab.utc.fr/gsabbagh/FiniteCategories"; | ||
url = ""; | ||
synopsis = "Finite categories and usual categorical constructions on them."; | ||
description = "This package provides tools to create categories at the value level. This is different from the __Hask__ category where types are objects in a category with an infinite collection of objects and functions, here we construct categories where objects and arrows are arbitrary values so that we can change categories during runtime. Each category implements two functions following the category structure axioms : @ar@ which returns arrows between two objects of the category and @identity@ which returns the identity of an object. A FiniteCategory implements an additional function : @ob@ which returns objects of the category. Thanks to these functions, we can construct automatically all the usual constructions on the categories (limits and colimits, adjunctions, Yoneda embedding, etc.) Functors are different from usual @Functor@ typeclass, we store functors as mapping between objects and morphisms of two categories. This package is also different from the package @data-category@ because we can enumerate objects and arrows in a finite category. This allows us to construct limit, colimits, adjunctions, etc. automatically for arbitrary finite categories. On the other hand, we loose typecheck at compilation time which ensures that composition is sound in __Hask__, composition in our package might lead to an error raised during runtime. See the Readme file for installation help. See the package FiniteCategoriesGraphViz to visualize categories with graphviz."; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = [ | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."random" or (errorHandler.buildDepError "random")) | ||
(hsPkgs."WeakSets" or (errorHandler.buildDepError "WeakSets")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
]; | ||
buildable = true; | ||
}; | ||
tests = { | ||
"FiniteCategories-test" = { | ||
depends = [ | ||
(hsPkgs."FiniteCategories" or (errorHandler.buildDepError "FiniteCategories")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."random" or (errorHandler.buildDepError "random")) | ||
(hsPkgs."WeakSets" or (errorHandler.buildDepError "WeakSets")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
}; | ||
} |
54 changes: 54 additions & 0 deletions
54
...ategories-0.3.0.1-r0-d05294bb56ad28cca4a5883e68c493db66e72e29deca73736f31101b5c79aa05.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = {}; | ||
package = { | ||
specVersion = "3.0"; | ||
identifier = { name = "FiniteCategories"; version = "0.3.0.1"; }; | ||
license = "GPL-3.0-or-later"; | ||
copyright = ""; | ||
maintainer = "[email protected]"; | ||
author = "Guillaume Sabbagh"; | ||
homepage = "https://gitlab.utc.fr/gsabbagh/FiniteCategories"; | ||
url = ""; | ||
synopsis = "Finite categories and usual categorical constructions on them."; | ||
description = "This package provides tools to create categories at the value level. This is different from the __Hask__ category where types are objects in a category with an infinite collection of objects and functions, here we construct categories where objects and arrows are arbitrary values so that we can change categories during runtime. Each category implements two functions following the category structure axioms : @ar@ which returns arrows between two objects of the category and @identity@ which returns the identity of an object. A FiniteCategory implements an additional function : @ob@ which returns objects of the category. Thanks to these functions, we can construct automatically all the usual constructions on the categories (limits and colimits, adjunctions, Yoneda embedding, etc.) Functors are different from usual @Functor@ typeclass, we store functors as mapping between objects and morphisms of two categories. This package is also different from the package @data-category@ because we can enumerate objects and arrows in a finite category. This allows us to construct limit, colimits, adjunctions, etc. automatically for arbitrary finite categories. On the other hand, we loose typecheck at compilation time which ensures that composition is sound in __Hask__, composition in our package might lead to an error raised during runtime. See the Readme file for installation help. See the package FiniteCategoriesGraphViz to visualize categories with graphviz."; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = [ | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."random" or (errorHandler.buildDepError "random")) | ||
(hsPkgs."WeakSets" or (errorHandler.buildDepError "WeakSets")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
]; | ||
buildable = true; | ||
}; | ||
tests = { | ||
"FiniteCategories-test" = { | ||
depends = [ | ||
(hsPkgs."FiniteCategories" or (errorHandler.buildDepError "FiniteCategories")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."random" or (errorHandler.buildDepError "random")) | ||
(hsPkgs."WeakSets" or (errorHandler.buildDepError "WeakSets")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
}; | ||
} |
62 changes: 62 additions & 0 deletions
62
...sGraphViz-0.1.0.0-r0-a4d59bd1a5afc2bc694b13a4e2d9146e1add38b358dcde8f79dbfad74d015b05.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = {}; | ||
package = { | ||
specVersion = "3.0"; | ||
identifier = { name = "FiniteCategoriesGraphViz"; version = "0.1.0.0"; }; | ||
license = "GPL-3.0-or-later"; | ||
copyright = ""; | ||
maintainer = "[email protected]"; | ||
author = "Guillaume Sabbagh"; | ||
homepage = "https://gitlab.utc.fr/gsabbagh/FiniteCategoriesGraphViz"; | ||
url = ""; | ||
synopsis = "Transform objects of the package FiniteCategories into graphs using GraphViz."; | ||
description = "A way to visualize finite categories of the package FiniteCategories thanks to GraphViz. See FiniteCategories for examples of categories."; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = [ | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
(hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) | ||
(hsPkgs."fgl" or (errorHandler.buildDepError "fgl")) | ||
(hsPkgs."graphviz" or (errorHandler.buildDepError "graphviz")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."process" or (errorHandler.buildDepError "process")) | ||
(hsPkgs."random" or (errorHandler.buildDepError "random")) | ||
(hsPkgs."WeakSets" or (errorHandler.buildDepError "WeakSets")) | ||
(hsPkgs."FiniteCategories" or (errorHandler.buildDepError "FiniteCategories")) | ||
]; | ||
buildable = true; | ||
}; | ||
tests = { | ||
"FiniteCategories-test" = { | ||
depends = [ | ||
(hsPkgs."FiniteCategoriesGraphViz" or (errorHandler.buildDepError "FiniteCategoriesGraphViz")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
(hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) | ||
(hsPkgs."fgl" or (errorHandler.buildDepError "fgl")) | ||
(hsPkgs."graphviz" or (errorHandler.buildDepError "graphviz")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."process" or (errorHandler.buildDepError "process")) | ||
(hsPkgs."random" or (errorHandler.buildDepError "random")) | ||
(hsPkgs."WeakSets" or (errorHandler.buildDepError "WeakSets")) | ||
(hsPkgs."FiniteCategories" or (errorHandler.buildDepError "FiniteCategories")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
}; | ||
} |
73 changes: 73 additions & 0 deletions
73
...ge/HsYAML-0.2.1.2-r0-0ee0f8ba02aa176aef00365b23e8b1a217074a24ab9f02c88bf925c53562a486.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = { exe = false; }; | ||
package = { | ||
specVersion = "1.12"; | ||
identifier = { name = "HsYAML"; version = "0.2.1.2"; }; | ||
license = "GPL-2.0-only"; | ||
copyright = "2015-2018 Herbert Valerio Riedel\n, 2007-2008 Oren Ben-Kiki"; | ||
maintainer = "https://github.com/haskell-hvr/HsYAML"; | ||
author = "Herbert Valerio Riedel"; | ||
homepage = "https://github.com/haskell-hvr/HsYAML"; | ||
url = ""; | ||
synopsis = "Pure Haskell YAML 1.2 processor"; | ||
description = "@HsYAML@ is a [YAML 1.2](http://yaml.org/spec/1.2/spec.html) processor, i.e. a library for parsing and serializing YAML documents.\n\nFeatures of @HsYAML@ include:\n\n* Pure Haskell implementation with small dependency footprint and emphasis on strict compliance with the [YAML 1.2 specification](http://yaml.org/spec/1.2/spec.html).\n* Direct decoding to native Haskell types via (@aeson@-inspired) typeclass-based API (see \"Data.YAML\").\n* Allows round-tripping while preserving ordering, anchors, and comments at Event-level.\n* Support for constructing custom YAML node graph representation (including support for cyclic YAML data structures).\n* Support for the standard (untyped) /Failsafe/, (strict) /JSON/, and (flexible) /Core/ \\\"schemas\\\" providing implicit typing rules as defined in the YAML 1.2 specification (including support for user-defined custom schemas; see \"Data.YAML.Schema\").\n* Support for emitting YAML using /Failsafe/, (strict) /JSON/, and (flexible) /Core/ \\\"schemas\\\" (including support for user-defined custom encoding schemas; see \"Data.YAML.Schema\").\n* Event-based API resembling LibYAML's Event-based API (see \"Data.YAML.Event\").\n* Low-level API access to lexical token-based scanner (see \"Data.YAML.Token\").\n\nSee also the <//hackage.haskell.org/package/HsYAML-aeson HsYAML-aeson> package which allows to decode and encode YAML by leveraging @aeson@'s 'FromJSON' and 'ToJSON' instances."; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = (([ | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) | ||
(hsPkgs."parsec" or (errorHandler.buildDepError "parsec")) | ||
(hsPkgs."transformers" or (errorHandler.buildDepError "transformers")) | ||
] ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).lt "7.6") (hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim"))) ++ (pkgs.lib).optional (!(compiler.isGhc && (compiler.version).ge "8.0")) (hsPkgs."fail" or (errorHandler.buildDepError "fail"))) ++ (pkgs.lib).optional (!(compiler.isGhc && (compiler.version).ge "7.10")) (hsPkgs."nats" or (errorHandler.buildDepError "nats")); | ||
buildable = true; | ||
}; | ||
exes = { | ||
"yaml-test" = { | ||
depends = (pkgs.lib).optionals (flags.exe) [ | ||
(hsPkgs."HsYAML" or (errorHandler.buildDepError "HsYAML")) | ||
(hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) | ||
(hsPkgs."megaparsec" or (errorHandler.buildDepError "megaparsec")) | ||
(hsPkgs."microaeson" or (errorHandler.buildDepError "microaeson")) | ||
(hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
]; | ||
buildable = if flags.exe then true else false; | ||
}; | ||
}; | ||
tests = { | ||
"tests" = { | ||
depends = [ | ||
(hsPkgs."HsYAML" or (errorHandler.buildDepError "HsYAML")) | ||
(hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) | ||
(hsPkgs."QuickCheck" or (errorHandler.buildDepError "QuickCheck")) | ||
(hsPkgs."tasty" or (errorHandler.buildDepError "tasty")) | ||
(hsPkgs."tasty-quickcheck" or (errorHandler.buildDepError "tasty-quickcheck")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
}; | ||
} |
55 changes: 55 additions & 0 deletions
55
...AML-aeson-0.2.0.1-r9-e8f562d3ba853b752163227635de435c71bef357d754cd902ec3c05d4e90cae5.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = { exe = false; }; | ||
package = { | ||
specVersion = "2.2"; | ||
identifier = { name = "HsYAML-aeson"; version = "0.2.0.1"; }; | ||
license = "GPL-2.0-or-later"; | ||
copyright = "2018-2019 Herbert Valerio Riedel"; | ||
maintainer = "Simon Jakobi, Andreas Abel"; | ||
author = "Herbert Valerio Riedel"; | ||
homepage = ""; | ||
url = ""; | ||
synopsis = "JSON to YAML Adapter"; | ||
description = "The [YAML 1.2](https://yaml.org/spec/1.2/spec.html) format provides\na much richer data-model and feature-set\nthan the [JavaScript Object Notation (JSON)](https://tools.ietf.org/html/rfc7159) format.\nHowever, sometimes it's desirable to ignore the extra capabilities\nand treat YAML as if it was merely a more convenient markup format\nfor humans to write JSON data. To this end this module provides a\ncompatibility layer atop [HsYAML](https://hackage.haskell.org/package/HsYAML)\nwhich allows decoding YAML documents in the more limited JSON data-model while also providing\nconvenience by reusing [aeson](https://hackage.haskell.org/package/aeson)'s\n'FromJSON' instances for decoding the YAML data into native Haskell data types."; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = [ | ||
(hsPkgs."HsYAML" or (errorHandler.buildDepError "HsYAML")) | ||
(hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) | ||
(hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."unordered-containers" or (errorHandler.buildDepError "unordered-containers")) | ||
(hsPkgs."vector" or (errorHandler.buildDepError "vector")) | ||
]; | ||
buildable = true; | ||
}; | ||
exes = { | ||
"yaml-test" = { | ||
depends = (pkgs.lib).optionals (flags.exe) [ | ||
(hsPkgs."HsYAML" or (errorHandler.buildDepError "HsYAML")) | ||
(hsPkgs."HsYAML-aeson" or (errorHandler.buildDepError "HsYAML-aeson")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) | ||
(hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
]; | ||
buildable = if flags.exe then true else false; | ||
}; | ||
}; | ||
}; | ||
} |
Oops, something went wrong.