News for hackers. Stuff that matters.
Re: by artikae on Monday March 10, 2025 @02:39PM (#43324166)
assoc-in reminds me a lot of lenses in Haskell. I figure you could probably implement something like it using them. This is what I came up with:

  import Control.Lens
  baseLens --> nextIndex = baseLens . ix nextIndex
  assocIn structure keyLens newValue = set keyLens newValue structure
It works like so:

  setTo256 structure = assocIn structure (ix 0 --> 0 --> 0) 256
  -- setTo256 [[[1]], [[2]]] returns [[[256]], [[2]]]

There are no comments on this comment yet.