Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→ 1,803,955 events total
2021-08-02 16:35:19 × dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Client Quit)
2021-08-02 16:36:08 <dminuoso> davean: what was the name of that again?
2021-08-02 16:36:10 azeem joins (~azeem@176.200.220.247)
2021-08-02 16:36:55 dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net)
2021-08-02 16:37:00 × drd quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 272 seconds)
2021-08-02 16:38:18 × jippiedoe quits (~david@2a02-a448-48bd-1-6c05-d94f-4fec-758a.fixed6.kpn.net) (Ping timeout: 250 seconds)
2021-08-02 16:39:22 <davean> dminuoso: skete
2021-08-02 16:39:32 <davean> well, skete-haskell specificly for the one for Hackge :-p
2021-08-02 16:39:43 × Guest72 quits (~Guest72@2a02:a31a:a23c:f480:2fd7:e087:5546:a438) (Ping timeout: 246 seconds)
2021-08-02 16:39:57 × dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Client Quit)
2021-08-02 16:40:02 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds)
2021-08-02 16:40:34 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
2021-08-02 16:40:39 <euouae> Are lenses “atomic”?
2021-08-02 16:40:46 dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net)
2021-08-02 16:40:56 <davean> euouae: what does that even mean?
2021-08-02 16:40:56 <dminuoso> What does "atomic" mean?
2021-08-02 16:41:00 <euouae> or is atomicity someone else’s job?
2021-08-02 16:41:13 <euouae> well the put get is what I’m thinking of
2021-08-02 16:41:25 <davean> Thats oen of the laws
2021-08-02 16:41:28 <euouae> of course the laws are the laws. Maybe they guarantee atomicity
2021-08-02 16:41:39 <davean> euouae: I think you're confused
2021-08-02 16:41:47 <euouae> Thread safe is what I’m trying to say
2021-08-02 16:41:48 <davean> Haskell is a functional language
2021-08-02 16:42:10 <davean> Yes, thats mostly meaningless - for example you don't mutate in Haskell, you create an edited copy
2021-08-02 16:42:24 <euouae> Ooh I see, so the changes from put are not reflected elsewhere
2021-08-02 16:42:39 <euouae> it truly is like the record update
2021-08-02 16:42:45 <davean> yes
2021-08-02 16:42:49 <davean> You can have references to stuff, like MVars
2021-08-02 16:42:52 <davean> and you can lens into MVars
2021-08-02 16:43:10 <davean> but it works the same way there. Sure the changes are reflected elsewhere, but its the same, you made a copy and updated the reference
2021-08-02 16:43:21 <euouae> No race conditions ?
2021-08-02 16:43:46 <dminuoso> euouae: Right, except for the part that they are composable, first-class, and generalize to things like Folds or Traverses - things you dont get from record accessors. :-)
2021-08-02 16:43:50 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
2021-08-02 16:43:53 <dminuoso> No race conditions.
2021-08-02 16:43:56 × dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Client Quit)
2021-08-02 16:44:34 <euouae> Oh yeah that true, the composabilityhas me stumped
2021-08-02 16:45:03 burnsidesLlama joins (~burnsides@dhcp168-023.wadham.ox.ac.uk)
2021-08-02 16:45:30 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-08-02 16:45:31 <euouae> As for folds— I don’t know that one yet. It’s cool reading papers though, I find that sometimes they help a lot to read the docs
2021-08-02 16:45:47 markpythonicbitc joins (~textual@2601:647:5a00:35:e0da:ada7:2ca5:10dd)
2021-08-02 16:46:31 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
2021-08-02 16:46:42 reumeth joins (~reumeth@user/reumeth)
2021-08-02 16:46:43 <dminuoso> % foldMapOf (folded . both . _Just) Sum [(Just 21, Just 21)]
2021-08-02 16:46:43 <yahb> dminuoso: Sum {getSum = 42}
2021-08-02 16:47:10 <dminuoso> It's the same idea as foldr. Collapsing an optic that has multiple targets into some value.
2021-08-02 16:47:26 <dminuoso> Or perhaps better phrased "consuming"
2021-08-02 16:47:41 <euouae> Oh nice
2021-08-02 16:47:48 <delYsid> I dont get how re from the lens package is useful. Or reuse, for that matter. If it cant modify, why is reuse _Foo more interesting then uses Foo?
2021-08-02 16:48:16 <delYsid> er, gets Foo I mean
2021-08-02 16:48:42 chris_ joins (~chris@81.96.113.213)
2021-08-02 16:49:11 <delYsid> How do I change a constructor somewhere deep in a structure?
2021-08-02 16:49:38 deejaytee joins (~deejaytee@cpc91196-cmbg18-2-0-cust215.5-4.cable.virginm.net)
2021-08-02 16:49:53 <dminuoso> delYsid: With over?
2021-08-02 16:50:47 <dminuoso> delYsid: Regarding reuse, it's probably more useful for non-trivial prisms. The documentation has a slightly better example
2021-08-02 16:50:50 × burnsidesLlama quits (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2021-08-02 16:50:53 <dminuoso> % 6 ^.re (_Left.unto succ)
2021-08-02 16:50:53 <yahb> dminuoso: Left 7
2021-08-02 16:51:39 justsomeguy joins (~justsomeg@user/justsomeguy)
2021-08-02 16:52:12 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-08-02 16:52:15 <dminuoso> If you happen to already hold the prism in your hand, then I think reuse has some value. But if not, you might as well just use `use (Left . succ)`
2021-08-02 16:52:28 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-08-02 16:52:41 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
2021-08-02 16:52:58 × chris_ quits (~chris@81.96.113.213) (Ping timeout: 240 seconds)
2021-08-02 16:53:10 <dminuoso> Or perhaps with some Iso you hold in your hand.
2021-08-02 16:54:10 mei joins (~mei@user/mei)
2021-08-02 16:54:24 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-08-02 16:54:42 × pe200012 quits (~pe200012@113.105.10.33) (Ping timeout: 245 seconds)
2021-08-02 16:54:48 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-08-02 16:55:14 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: leaving)
2021-08-02 17:00:20 × azeem quits (~azeem@176.200.220.247) (Read error: Connection reset by peer)
2021-08-02 17:01:19 × jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-08-02 17:01:39 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-08-02 17:02:13 azeem joins (~azeem@dynamic-adsl-94-34-48-122.clienti.tiscali.it)
2021-08-02 17:03:35 mattil joins (~mattilinn@87-92-172-201.rev.dnainternet.fi)
2021-08-02 17:04:13 y04nn joins (~y04nn@91.193.4.154)
2021-08-02 17:05:07 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2021-08-02 17:05:30 × jgeerds quits (~jgeerds@55d45555.access.ecotel.net) (Ping timeout: 272 seconds)
2021-08-02 17:05:36 × mattil quits (~mattilinn@87-92-172-201.rev.dnainternet.fi) (Remote host closed the connection)
2021-08-02 17:06:01 mattil joins (~mattilinn@87-92-172-201.rev.dnainternet.fi)
2021-08-02 17:07:49 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-08-02 17:07:59 allbery_b joins (~geekosaur@xmonad/geekosaur)
2021-08-02 17:07:59 allbery_b is now known as geekosaur
2021-08-02 17:08:52 Tuplanolla joins (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi)
2021-08-02 17:11:50 × azeem quits (~azeem@dynamic-adsl-94-34-48-122.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-08-02 17:15:02 azeem joins (~azeem@dynamic-adsl-94-34-48-122.clienti.tiscali.it)
2021-08-02 17:16:22 <tromp> i don't understand the compiler error i get on https://paste.ofcode.org/DBck6pC68BLWgyrAcsn9Gq
2021-08-02 17:16:45 <tromp> Legality.hs:105:27: error: Variable not in scope: args :: t0 [Char]
2021-08-02 17:16:46 <tromp> |
2021-08-02 17:16:46 <tromp> 105 | verbose = "-v" `elem` args
2021-08-02 17:16:46 <tromp> | ^^^^
2021-08-02 17:17:11 × enoq quits (~enoq@194-208-179-35.lampert.tv) (Quit: enoq)
2021-08-02 17:17:19 <tromp> how is args not in scope there?
2021-08-02 17:17:37 <dminuoso> tromp: You have to use let bindings, the where is part of the main declaration.
2021-08-02 17:17:57 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 258 seconds)
2021-08-02 17:18:00 <dminuoso> i.e. do { args <- getArgs; let legality = map (\fen -> fen ++ "\n " ++ research verbose (readFEN fen)); ... }
2021-08-02 17:18:47 geekosaur joins (~geekosaur@xmonad/geekosaur)
2021-08-02 17:19:49 <tromp> i tried a let .... in block earlier, but it failed because let and in were at same indentation level
2021-08-02 17:20:00 <tromp> indenting the in further fixes it
2021-08-02 17:20:07 <dminuoso> tromp: drop the `in`
2021-08-02 17:20:16 <dminuoso> do-expressions support a special form of let

All times are in UTC.