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

feat(semigroup): add partial semigroup #1664

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

JalilArfaoui
Copy link

I suggest this partial semigroup generator, inspired by struct but that can take partial elements

@JalilArfaoui JalilArfaoui force-pushed the feat/add_partial_semigroup branch from cbc3a0f to 4b4881a Compare February 14, 2023 14:54
@JalilArfaoui
Copy link
Author

@gcanti Do you have any opinion on this ?

@gcanti
Copy link
Owner

gcanti commented Feb 14, 2023

@JalilArfaoui It seems to me that throughout the codebase, the absence of a value is modeled through Option rather than optional properties. I won't go into the details of this implementation, but adding support for optional properties would be an exception.

In any case, development is frozen until a yet-to-be-determined date when I am clear on which direction to take after finishing developments in the new org @fp-ts.

@JalilArfaoui
Copy link
Author

Thanks @gcanti.

I think I undertand your point, but I find partials are useful to work on … «partial data structures», where the absence of value does not mean None, it just mean we don’t care … for instance when trying to merge configuration options or some metadata …

To me Option type and Partial serve different purpose …

I didn’t knew some big changes are in development … I’ll go check out on the Discord

@JalilArfaoui
Copy link
Author

OK I just found out https://github.com/fp-ts/core

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants