syb: Scrap Your Boilerplate

[ bsd3, generics, library ] [ Propose Tags ]

This package contains the generics system described in the Scrap Your Boilerplate papers (see http://www.cs.uu.nl/wiki/GenericProgramming/SYB). It defines the Data class of types permitting folding and unfolding of constructor applications, instances of this class for primitive types, and a variety of traversals.


[Skip to Readme]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.0.3, 0.2, 0.2.1, 0.2.2, 0.3, 0.3.1, 0.3.2, 0.3.3, 0.3.4, 0.3.5, 0.3.6, 0.3.6.1, 0.3.6.2, 0.3.7, 0.4.0, 0.4.1, 0.4.2, 0.4.3, 0.4.4, 0.5, 0.5.1, 0.6, 0.7, 0.7.1, 0.7.2.1, 0.7.2.2, 0.7.2.3, 0.7.2.4 (info)
Dependencies base (>=4.0 && <4.8) [details]
License BSD-3-Clause
Author Ralf Lammel, Simon Peyton Jones, Jose Pedro Magalhaes
Maintainer generics@haskell.org
Revised Revision 2 made by SergeyVinokurov at 2023-03-18T22:46:47Z
Category Generics
Home page http://www.cs.uu.nl/wiki/GenericProgramming/SYB
Bug tracker http://code.google.com/p/scrapyourboilerplate/issues/list
Source repo head: git clone https://github.com/dreixel/syb
Uploaded by JosePedroMagalhaes at 2013-08-19T12:41:40Z
Distributions Arch:0.7.2.4, Debian:0.7.1, Fedora:0.7.2.3, FreeBSD:0.5.1, LTSHaskell:0.7.2.4, NixOS:0.7.2.4, Stackage:0.7.2.4, openSUSE:0.7.2.4
Reverse Dependencies 361 direct, 15875 indirect [details]
Downloads 337452 total (442 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for syb-0.4.1

[back to package description]
syb: Scrap Your Boilerplate!
================================================================================

Scrap Your Boilerplate (SYB) is a library for generic programming in Haskell. It 
is supported since the GHC >= 6.0 implementation of Haskell. Using this 
approach, you can write generic functions such as traversal schemes (e.g., 
everywhere and everything), as well as generic read, generic show and generic 
equality (i.e., gread, gshow, and geq). This approach is based on just a few 
primitives for type-safe cast and processing constructor applications. 

It was originally developed by Ralf Lämmel and Simon Peyton Jones. Since then,
many people have contributed with research relating to SYB or its applications. 

More information is available on the webpage: 
http://www.cs.uu.nl/wiki/GenericProgramming/SYB


Features
--------

* Easy generic programming with combinators
* GHC can derive Data and Typeable instances for your datatypes
* Comes with many useful generic functions


Requirements
------------

* GHC 6.10.1 or later
* Cabal 1.6 or later


Bugs & Support
--------------

Please report issues or request features at the bug tracker:

  http://code.google.com/p/scrapyourboilerplate/issues/list

For discussion about the library with the authors, maintainers, and other
interested persons use the mailing list:

  http://www.haskell.org/mailman/listinfo/generics