Skip to content

Feat/overhaul#38

Merged
cmk merged 6 commits into
mainfrom
feat/overhaul
Mar 22, 2026
Merged

Feat/overhaul#38
cmk merged 6 commits into
mainfrom
feat/overhaul

Conversation

@cmk
Copy link
Copy Markdown
Owner

@cmk cmk commented Mar 22, 2026

No description provided.

cmk added 6 commits March 22, 2026 00:14
Iso.hs: toYoneda->yoneda, toCoyoneda->coyoneda, sieved->indexing,
cosieved->coindexing, coswapped->eswapped, coassociated->eassociated,
reixes->reixing, recxes->recxing. Add cloneIso.re law to invert doc.
Re-export re from Iso.hs operators section.

Lens.hs: toPastro->pastro, toTambara->tambara, toClosure->closure,
toEnvironment->environment. Add rematching' (existentialized Relens
constructor, née costrong).

Prism.hs: toPastroSum->pastroSum, toTambaraSum->tambaraSum. Add
rehandling' (existentialized Reprism constructor, née cochoice).

Setter.hs: reliftedA->coliftedA, reliftedF->coliftedF, reover->coover,
scribe->tells, locally->localizes.

Fold.hs: toFold0->fold0'. Move viewing (née fromFold0) to View.hs.

View.hs: relike->unlike, toProduct->tupling, fromSum->summing.
Add viewing from Fold.hs.

Combinator.hs: Remove costrong/cochoice (moved to Lens/Prism as
rematching'/rehandling'). Keep Arrow re-exports from Import.hs
(profunctor arrow operators deferred — name collision with Arrow).
Remove Traversal.hs re-exports of arrow operators.

Note: cxsetter/ixsetter1/cxsetter1 constructors deferred (need
proper Cxoptic implementation).
Drop Control.Arrow (|||),(&&&),(+++),(***) from Import.hs re-exports.
Replace all function-level usage with either and fanout (new helper
in Import.hs). Arrow instances in Carrier.hs Conjoin use qualified
Control.Arrow as A.

Fix profunctor-optics-sort Import.hs to import from sub-modules
instead of Data.Profunctor.Optic (which is the user-facing front door).
(****) -> (***), (++++) -> (+++), (&&&&) -> (&&&), (||||) -> (|||)
Now that Arrow re-exports are removed, these take over the names
with the correct profunctor-polymorphic constraints.

View.hs: relike -> unlike, toProduct -> tupling, fromSum -> summing.
Lens.hs, Prism.hs, View.hs, Setter.hs: Reorder exports and source
code into consistent sections:
  * Constructors / *** Dual / *** Reversed
  * Indexed Constructors / *** Coindexed
  * Optics / *** Dual / *** Reversed
  * Indexed Optics / *** Coindexed
  * Operators / *** Dual / *** Reversed
  * Indexed Operators / *** Coindexed
  * Reexports

Re-add rematching', rehandling', viewing that agents dropped.
Hide pastro/tambara from Data.Profunctor.Strong and tambaraSum/
pastroSum from Data.Profunctor.Choice to avoid collision with our
renamed versions.
Add H2/H3 sub-sections for Fold0/Fold1 and Traversal0 variants
in both the Optics and Operators sections, matching the nesting
pattern used in Constructors:
  * Foo / *** Dual / ** Foo0 / ** Foo1
  * Indexed / *** Coindexed / ** Indexed Foo0

Move afolded/acolist to appropriate sub-sections. Separate
cofoldMapOf/cofoldOfA into Dual Operators. Move matchOf to
Traversal0 Operators. Separate collectOf/cotraverseOf into
Dual Operators.
Main types (Foo, Foo0, Foo1) and their indexed variants are all H1.
Duals/reversed/coindexed are H2 (one level deeper than parent).
Previously duals were H3 which over-indented them in Haddock output.
@cmk cmk merged commit e687e3b into main Mar 22, 2026
2 checks passed
@cmk cmk deleted the feat/overhaul branch March 22, 2026 07:24
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.

1 participant