A lens as a first-class value, unbound from any source: get projects A→B,
put writes B back into an A. Apply with cell.through(optic); build with
optic / iso / atKey / compose (optic.ts). readsSource is false
only for an iso, letting through bind a cheaper 1-arg backward.
A lens as a first-class value, unbound from any source:
getprojects A→B,putwrites B back into an A. Apply withcell.through(optic); build withoptic/iso/atKey/compose(optic.ts).readsSourceisfalseonly for aniso, lettingthroughbind a cheaper 1-arg backward.