input-output-hk / input-output-hk/agda-sets

Improve level polymorphism

Open
#2 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Agda
Stars
5
Forks
2
PR merge metrics
No merged PRs in 30d

Description

We could upgrade `Set` to be of type `Type a → Type b`. The downside is that we'd have to reformulate `unions` to look more like the monadic `bind` operation.

The main benefit of this would be that the `Predicates` model would then not require `--type-in-type` anymore. I don't know if there are any downsides.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the definitions of Set, unions, and the Predicates model, then inspect how --type-in-type is currently required. Evaluate the proposed Type a → Type b formulation and the corresponding unions redesign. Done means the polymorphic level change is implemented, unions remain usable, and Predicates no longer requires the flag without introducing regressions.

Written by the indexing model from the issue text.

Assessment

Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.