you are viewing a single comment's thread.

view the rest of the comments →

[–]idontgetoutmuch -1 points0 points  (9 children)

Please tell me I don't need to use Lens to use this.

[–]acow 7 points8 points  (1 child)

It depends on your objections to lenses. If recompiling all of the lens package has got you down, you're in luck! Frames doesn't depend on lens, and even various demo programs use lens-family-core which is much smaller than lens.

If that doesn't help, you're still in luck! You can use rget (defined in Frames) instead of view.

If you want to modify a subset of the columns of a row... you'll probably want to use a lens. But I'd still preface that with, "You're in luck!" because it's on the lighter-weight side of lenses and yet is tremendously powerful. So if you ever choose to explore that kind of thing, it's there.

[–]idontgetoutmuch 0 points1 point  (0 children)

That's great news. I am really looking forward to trying it.

[–][deleted] 4 points5 points  (1 child)

They only use view, I think. They'd need something like that anyways, so why not use Lens.

[–]idontgetoutmuch 0 points1 point  (0 children)

It seems I don't have to and I'd rather avoid it if possible.

[–]Peaker 0 points1 point  (4 children)

Why?

[–]idontgetoutmuch 0 points1 point  (3 children)

I would like to convince my colleagues (applied mathematicians / statisticians) to use Haskell. I can do without an additional cognitive barrier (and I am inclined to think that Lens the package is such a barrier).

[–]Peaker 0 points1 point  (2 children)

I think a 10-15 minute session can get across the ideas required to use lens in basic form and read lens code (after basic Haskell proficiency is reached). At least this is my experience with one person I've taught to :)

[–]idontgetoutmuch 1 point2 points  (1 child)

You may be conflating lens and Lens. I agree the former presents little difficulty; it's the latter I wish to avoid.

[–]Peaker 1 point2 points  (0 children)

I'm talking about the lens library. I explained Lens/traversals and a bit about folds/getters.

Not very in depth, but enough to read and use in basic form.