Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add List.Base.build/Church encodings of Data types #2304

Open
jamesmckinna opened this issue Feb 27, 2024 · 0 comments
Open

Add List.Base.build/Church encodings of Data types #2304

jamesmckinna opened this issue Feb 27, 2024 · 0 comments

Comments

@jamesmckinna
Copy link
Contributor

jamesmckinna commented Feb 27, 2024

Justifiably, we prioritise the (weakly-)initial-algebra approach to Data.* datatypes via... data definitions, but looking at haskell's Foldable for #2300 I'm conscious that we don't have any implementation of build for List, or more systematically, Church-style analogues for the basic datatypes of the library, together with their build-based equivalence to the standard ones.

This issue might be moot, but it has already come up for me in #1962 as to whether or not to take an initial algebra/free extension approach to Free constructions, or to proceed via a Church-style encoding. I think it's worth further discussion as an issue in its own right, as well as waking up the thread about API vs. implementation in the library design...

@jamesmckinna jamesmckinna changed the title Add List.Base.build/Church encodings of data types Add List.Base.build/Church encodings of Data types Feb 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant