2022/01/16

2022-01-16 00:00:00 +0100hueso(~root@user/hueso) (Quit: hueso)
2022-01-16 00:00:34 +0100ensyde(~ensyde@2600:1700:2050:1040:17c:22a2:b625:20d7)
2022-01-16 00:00:37 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2022-01-16 00:02:11 +0100epolanski(uid312403@id-312403.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2022-01-16 00:03:00 +0100hueso(~root@user/hueso)
2022-01-16 00:03:18 +0100Pickchea(~private@user/pickchea) (Quit: Leaving)
2022-01-16 00:04:34 +0100alx741(~alx741@157.100.93.160)
2022-01-16 00:04:45 +0100hueso(~root@user/hueso) (Client Quit)
2022-01-16 00:05:24 +0100TonyStone(~TonyStone@2603-7080-8607-c36a-9cdb-69bc-753b-1e50.res6.spectrum.com) (Quit: Leaving)
2022-01-16 00:05:45 +0100TonyStone(~TonyStone@2603-7080-8607-c36a-9cdb-69bc-753b-1e50.res6.spectrum.com)
2022-01-16 00:06:37 +0100gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2022-01-16 00:06:57 +0100 <EvanR> I suspect that whenever you start printing out infinite lists in ghci, that you have binded to a name with let xs = whatever (no "in"), the list gets consumed and discarded instead of growing in memory
2022-01-16 00:07:38 +0100 <EvanR> maybe it's regenerating the CAF from a seed each time you run a command
2022-01-16 00:07:38 +0100hueso(~root@user/hueso)
2022-01-16 00:09:12 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4)
2022-01-16 00:11:03 +0100hueso(~root@user/hueso) (Client Quit)
2022-01-16 00:11:32 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds)
2022-01-16 00:12:02 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 00:13:45 +0100ysh(sid6017@id-6017.ilkley.irccloud.com) (Quit: Connection closed for inactivity)
2022-01-16 00:13:59 +0100hueso(~root@user/hueso)
2022-01-16 00:14:02 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 00:14:41 +0100hueso(~root@user/hueso) (Client Quit)
2022-01-16 00:17:43 +0100hueso(~root@user/hueso)
2022-01-16 00:21:31 +0100emad(~emad@156.214.182.157) (Quit: Leaving)
2022-01-16 00:25:07 +0100random_(~random@185.219.68.251)
2022-01-16 00:25:31 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-16 00:25:54 +0100hueso(~root@user/hueso) (Quit: hueso)
2022-01-16 00:28:01 +0100random__(~random@185.219.68.251) (Ping timeout: 256 seconds)
2022-01-16 00:29:06 +0100hueso(~root@user/hueso)
2022-01-16 00:29:59 +0100 <lechner> byorgey geekosaur pavonia: thanks!
2022-01-16 00:30:17 +0100alx741(~alx741@157.100.93.160)
2022-01-16 00:34:08 +0100 <lechner> geekosaur: this one is legit https://archive.org/details/haskellschoolofe0000huda
2022-01-16 00:34:19 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 00:37:08 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 00:41:20 +0100 <lechner> Hi, is it acceptable to always use 'pure' instead of 'return'?
2022-01-16 00:42:04 +0100mmhat(~mmh@55d4d469.access.ecotel.net) (Quit: WeeChat 3.4)
2022-01-16 00:42:13 +0100 <c_wraith> unless you're on really old versions of GHC, yes
2022-01-16 00:42:28 +0100tzh_(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2022-01-16 00:44:01 +0100 <zero> lechner: return is a wart
2022-01-16 00:44:02 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Ping timeout: 250 seconds)
2022-01-16 00:44:49 +0100 <zero> you should use pure, and there was even a "Monad of no return" proposal, but i don't know if it went anywhere
2022-01-16 00:45:19 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-16 00:45:27 +0100 <lechner> thanks! i really meant from a theoretical/aestethical/whatever angle
2022-01-16 00:45:52 +0100 <lechner> it really does not 'return', does it?
2022-01-16 00:46:51 +0100 <zero> in my opinion it was a misguided attempt at making do notation familiar for people used to imperative languages
2022-01-16 00:47:26 +0100 <lechner> it provided five seconds of comfort
2022-01-16 00:47:27 +0100 <zero> but it really doesn't belng in the Monad class since AMP
2022-01-16 00:47:56 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4) (Quit: Reconnecting)
2022-01-16 00:48:20 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4)
2022-01-16 00:48:25 +0100 <c_wraith> "pure" is a pretty bad name, too
2022-01-16 00:48:33 +0100 <zero> i like it
2022-01-16 00:48:41 +0100 <c_wraith> "neutral" is a much better description of what it does
2022-01-16 00:48:50 +0100 <zero> how so?
2022-01-16 00:48:59 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4) (Client Quit)
2022-01-16 00:49:17 +0100 <c_wraith> all values in Haskell are pure.
2022-01-16 00:49:18 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4)
2022-01-16 00:49:27 +0100 <nshepperd> it should be called 'burrito'
2022-01-16 00:49:34 +0100 <c_wraith> (barring a few unsafe ones)
2022-01-16 00:50:16 +0100 <zero> if you look at it that way
2022-01-16 00:51:48 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4) (Client Quit)
2022-01-16 00:52:03 +0100mud(~mud@user/kadoban)
2022-01-16 00:52:07 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4)
2022-01-16 00:52:15 +0100 <lechner> for some, burritos are a point of no return. how about 'unwrap'?
2022-01-16 00:52:31 +0100 <zero> i like pure because i think of it as a "pure value" that can be turned into an arbitrary Functor
2022-01-16 00:53:09 +0100 <zero> so it's like an essence that you can turn into anything
2022-01-16 00:53:17 +0100max22-(~maxime@2a01cb0883359800fd5419c5ccb7ba8b.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2022-01-16 00:53:28 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4) (Client Quit)
2022-01-16 00:53:38 +0100 <zero> neutral is good too
2022-01-16 00:53:42 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4)
2022-01-16 00:53:45 +0100 <zero> in this sense
2022-01-16 00:53:57 +0100 <zero> whatever, they're just words
2022-01-16 00:54:21 +0100 <lechner> thanks!
2022-01-16 00:54:52 +0100alx741(~alx741@157.100.93.160)
2022-01-16 00:58:12 +0100 <geekosaur> I think monad of no return is still pending. there are some backward compatibility things that still need to be done in ghc?
2022-01-16 00:58:40 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 00:59:20 +0100 <geekosaur> because at the moment just removing return from Monad will break a lot of code, so they need a way to mark it as deprecated
2022-01-16 00:59:48 +0100oldsk00l(~znc@ec2-18-185-18-199.eu-central-1.compute.amazonaws.com) (Remote host closed the connection)
2022-01-16 01:01:31 +0100 <zero> the Applicative instance for pairs is interesting. it's Monoid a => Applicative (a,) where pure = (mempty,)
2022-01-16 01:01:36 +0100 <zero> did not know that
2022-01-16 01:02:28 +0100 <geekosaur> it has to be able to get a value for the other half of the pair from somewhere
2022-01-16 01:02:46 +0100 <zero> yup, makes sense
2022-01-16 01:03:15 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4) (Quit: Reconnecting)
2022-01-16 01:03:31 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4)
2022-01-16 01:03:46 +0100 <EvanR> when I first saw return and tried to understand it, I was confused because of its name
2022-01-16 01:04:06 +0100 <EvanR> also for 5 seconds
2022-01-16 01:04:42 +0100 <geekosaur> return not being what it sounded like was one of the first things I encountered in chatter after joining #haskell
2022-01-16 01:05:22 +0100 <EvanR> at least pure doesn't have that kind of baggage, and you immediately know it's not making something pure because everything is pure anyway
2022-01-16 01:05:37 +0100 <EvanR> because this is HAASSKEELLLLLLLL
2022-01-16 01:05:50 +0100 <zero> (:
2022-01-16 01:06:11 +0100zerounsafely performs IO
2022-01-16 01:06:19 +0100 <jackdk> :o
2022-01-16 01:06:20 +0100 <EvanR> also who the hell named pure that
2022-01-16 01:06:52 +0100 <zero> i'm more upset with "otherwise"
2022-01-16 01:06:58 +0100 <zero> way to long
2022-01-16 01:07:13 +0100 <geekosaur> frankly it's better than "t"
2022-01-16 01:07:53 +0100 <ephemient> you could always write | True if you want
2022-01-16 01:07:56 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4) (Client Quit)
2022-01-16 01:08:11 +0100 <zero> not readable, not canonical
2022-01-16 01:08:12 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4)
2022-01-16 01:09:01 +0100 <geekosaur> and they couldn't get away with reusing "else"
2022-01-16 01:09:11 +0100 <zero> i wonder if...
2022-01-16 01:09:14 +0100 <zero> brb
2022-01-16 01:09:30 +0100benin(~benin@183.82.30.17)
2022-01-16 01:09:30 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4) (Client Quit)
2022-01-16 01:09:46 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4)
2022-01-16 01:10:01 +0100 <EvanR> otherwise is readable
2022-01-16 01:10:15 +0100 <EvanR> code is read more times than it's written... unless it's my code
2022-01-16 01:11:51 +0100 <lechner> so true
2022-01-16 01:11:58 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-01-16 01:13:55 +0100shapr(~user@2601:7c0:c37c:46d0:fdf3:f0cd:30b3:4860) (Remote host closed the connection)
2022-01-16 01:14:08 +0100shapr(~user@2601:7c0:c37c:46d0:fdf3:f0cd:30b3:4860)
2022-01-16 01:14:52 +0100alx741(~alx741@157.100.93.160)
2022-01-16 01:20:09 +0100 <lechner> Hi, how can i daisy-chain the SQL statements starting in line 179 please? the error is below. Session vs Session () https://paste.tomsmeding.com/C8cs9CTz
2022-01-16 01:20:18 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 276 seconds)
2022-01-16 01:20:39 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4) (Quit: Reconnecting)
2022-01-16 01:20:57 +0100hsiktas[m](~hsiktasm]@2001:470:69fc:105::30d4)
2022-01-16 01:20:58 +0100Guest8449(1000@gabilgathol.bandrate.org) (Changing host)
2022-01-16 01:20:58 +0100Guest8449(1000@sourcemage/mage/beowulf)
2022-01-16 01:21:30 +0100Guest8449|beowulf|
2022-01-16 01:22:06 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-01-16 01:22:45 +0100 <geekosaur> you're misreading the error. you're passing it a Session (), it wants a Transaction ()
2022-01-16 01:23:22 +0100Tuplanolla(~Tuplanoll@91-159-68-166.elisa-laajakaista.fi) (Quit: Leaving.)
2022-01-16 01:25:02 +0100Constraintegic(~DundiDund@ppp-212-114-229-145.dynamic.mnet-online.de) (Ping timeout: 240 seconds)
2022-01-16 01:26:08 +0100zero(~z@user/zero) (haskell)
2022-01-16 01:26:21 +0100zzz(~z@user/zero)
2022-01-16 01:26:44 +0100 <zzz> is there an extension to make shadowing illegal?
2022-01-16 01:27:24 +0100 <zzz> or "overloading", i think it's the most used term arond here
2022-01-16 01:28:20 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-01-16 01:28:20 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 01:28:59 +0100 <geekosaur> -Wname-shadowing -Werror ?
2022-01-16 01:29:22 +0100 <geekosaur> (someday it will be possible to write -Werror=name-shadowing, but not currently)
2022-01-16 01:29:24 +0100 <ephemient> or -Werror=name-shadowing if you don't want to turn on -Werror for everything else
2022-01-16 01:29:26 +0100machinedgod(~machinedg@24.105.81.50) (Remote host closed the connection)
2022-01-16 01:29:30 +0100 <ephemient> isn't it possible now?
2022-01-16 01:29:32 +0100 <geekosaur> oh, that does work now?
2022-01-16 01:29:38 +0100 <geekosaur> I thought it wasn't in ghc
2022-01-16 01:29:52 +0100 <zzz> nice, thanks!
2022-01-16 01:29:54 +0100 <dmj`> ghc --show-options | grep shadow --color
2022-01-16 01:30:10 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-16 01:30:43 +0100 <ephemient> seems to work as I expect in GHC 8.10: > Main.hs:4:19: error: [-Wname-shadowing, -Werror=name-shadowing] This binding for ‘main’ shadows the existing binding …
2022-01-16 01:35:22 +0100machinedgod(~machinedg@24.105.81.50)
2022-01-16 01:39:06 +0100shapr(~user@2601:7c0:c37c:46d0:fdf3:f0cd:30b3:4860) (Remote host closed the connection)
2022-01-16 01:39:20 +0100shapr(~user@2601:7c0:c37c:46d0:fdf3:f0cd:30b3:4860)
2022-01-16 01:40:49 +0100 <EvanR> wat, without shadowing how do I pretend I'm overwriting vars in do notation xD
2022-01-16 01:41:09 +0100SummerSonw(~The_viole@203.77.49.232)
2022-01-16 01:41:51 +0100SummerSonw(~The_viole@203.77.49.232) (Client Quit)
2022-01-16 01:43:04 +0100 <geekosaur> ew
2022-01-16 01:43:25 +0100 <EvanR> x, x', x'', x''', x'''' is too confusing!
2022-01-16 01:44:39 +0100 <ephemient> mdo x <- pure $ x + 1; pure x -- 🙃
2022-01-16 01:44:48 +0100 <pavonia> x, x', x'', x'3, x'4 etc.
2022-01-16 01:45:29 +0100 <EvanR> x_i x_i+1 x_i+2
2022-01-16 01:45:35 +0100 <EvanR> with editor support to show fancy
2022-01-16 01:46:00 +0100retroid_(~retro@2e40edd9.skybroadband.com) (Ping timeout: 250 seconds)
2022-01-16 01:46:17 +0100alx741(~alx741@157.100.93.160)
2022-01-16 01:46:28 +0100 <EvanR> and language support to make i work
2022-01-16 01:47:21 +0100 <ephemient> > xᵢ + xᵢ₊₁ + xᵢ₊₂
2022-01-16 01:47:22 +0100 <lambdabot> <hint>:1:9: error: lexical error at character '\8321'
2022-01-16 01:50:31 +0100 <pavonia> Why doesn't it accept general Unicode digits in identifiers?
2022-01-16 01:50:31 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 01:51:46 +0100 <EvanR> > let xᵢ = 'c' in xᵢ
2022-01-16 01:51:47 +0100 <lambdabot> 'c'
2022-01-16 01:51:53 +0100 <EvanR> \o/
2022-01-16 01:54:41 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-16 01:57:53 +0100mvk(~mvk@2607:fea8:5cdd:f000::55f8)
2022-01-16 02:00:57 +0100zzzfacepalms
2022-01-16 02:01:30 +0100 <zzz> i thought no-name-shadowing would give me the warnings
2022-01-16 02:01:47 +0100 <zzz> but it's name-shadowing
2022-01-16 02:02:13 +0100 <zzz> "no" refers to the warning
2022-01-16 02:02:30 +0100 <zzz> not to the shadowing
2022-01-16 02:05:18 +0100shapr(~user@2601:7c0:c37c:46d0:fdf3:f0cd:30b3:4860) (Remote host closed the connection)
2022-01-16 02:05:32 +0100shapr(~user@2601:7c0:c37c:46d0:fdf3:f0cd:30b3:4860)
2022-01-16 02:06:51 +0100tommd(~tommd@75-164-130-101.ptld.qwest.net)
2022-01-16 02:06:57 +0100n3rdy1(~n3rdy1@2600:1700:4570:3480:1b88:50f:dae0:9293) (Ping timeout: 240 seconds)
2022-01-16 02:07:14 +0100alx741(~alx741@157.100.93.160)
2022-01-16 02:07:58 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
2022-01-16 02:09:51 +0100notzmv(~zmv@user/notzmv)
2022-01-16 02:09:51 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 02:10:38 +0100LukeHoersten(~LukeHoers@user/lukehoersten)
2022-01-16 02:11:24 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-01-16 02:17:31 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-01-16 02:18:30 +0100DNH(~DNH@2a02:8108:1100:16d8:b0c0:5871:210d:15db) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-01-16 02:19:38 +0100retroid_(~retro@2e40edd9.skybroadband.com)
2022-01-16 02:20:03 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 256 seconds)
2022-01-16 02:22:02 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it) (Ping timeout: 240 seconds)
2022-01-16 02:22:21 +0100_xor(~xor@dsl-50-5-233-169.fuse.net) (Quit: brb)
2022-01-16 02:24:35 +0100_xor(~xor@dsl-50-5-233-169.fuse.net)
2022-01-16 02:27:42 +0100alx741(~alx741@157.100.93.160)
2022-01-16 02:29:39 +0100 <zzz> why does `main = pure 7` print `7`?
2022-01-16 02:30:12 +0100 <EvanR> in ghci ?
2022-01-16 02:30:48 +0100 <tommd> It doesnt' in the context of a Haskell language specification or ghc-compiled program.
2022-01-16 02:31:00 +0100 <zzz> ah ok
2022-01-16 02:31:09 +0100 <zzz> so it's a ghci quirk
2022-01-16 02:31:09 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 02:31:23 +0100 <lechner> geekosaur: thanks! it took ages and is ugly, but it works. best of all, it makes sense & i'm in love with it somehow
2022-01-16 02:31:24 +0100 <EvanR> if you type main in ghci, it'll execute the IO action and return the result, and print it
2022-01-16 02:31:51 +0100 <EvanR> works with any IO action in ghci (that returns something that can Show)
2022-01-16 02:32:38 +0100 <EvanR> and if there's no Show... it prints nothing... apparently
2022-01-16 02:32:50 +0100 <zzz> EvanR: ok thanks. i understand how that's useful but it caused a moment of confusion for me
2022-01-16 02:32:58 +0100 <geekosaur> yes. this is documented in the ghc user manual
2022-01-16 02:33:26 +0100 <geekosaur> along with a way to change what typeclass it uses, so in principle you could use a prettyprinting typeclass instead
2022-01-16 02:33:45 +0100 <zzz> that's nice
2022-01-16 02:34:15 +0100 <geekosaur> https://downloads.haskell.org/ghc/latest/docs/html/users_guide/ghci.html#using-a-custom-interactiv…
2022-01-16 02:34:20 +0100 <EvanR> oh wow
2022-01-16 02:34:50 +0100 <ephemient> ghc should only cares what the type of main is in the main module when it's building an executable
2022-01-16 02:36:52 +0100 <geekosaur> yes, i only cares about the type of Main.main (or whatever entry point is specified by -main-is)
2022-01-16 02:41:55 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds)
2022-01-16 02:42:19 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 256 seconds)
2022-01-16 02:43:40 +0100tzh_(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Remote host closed the connection)
2022-01-16 02:43:59 +0100tzh_(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2022-01-16 02:46:30 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 02:49:19 +0100alx741(~alx741@157.100.93.160)
2022-01-16 02:50:32 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 240 seconds)
2022-01-16 02:50:39 +0100vysn(~vysn@user/vysn)
2022-01-16 02:52:40 +0100justsomeguy(~justsomeg@user/justsomeguy)
2022-01-16 02:53:57 +0100 <justsomeguy> Why should I care that kinds exist? What are they useful for?
2022-01-16 02:53:57 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 02:58:36 +0100ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Remote host closed the connection)
2022-01-16 02:58:51 +0100drewolson(~drewolson@user/drewolson) (Quit: The Lounge - https://thelounge.chat)
2022-01-16 02:59:01 +0100drewolson(~drewolson@user/drewolson)
2022-01-16 02:59:15 +0100 <EvanR> probably good when you get a kind mismatch, i.e. tried to use f on a when f doesn't take any arguments
2022-01-16 02:59:31 +0100 <EvanR> "don't care until it saves your ass"
2022-01-16 02:59:53 +0100ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2022-01-16 02:59:56 +0100 <pavonia> Kinds are to types what types are to values. So they are useful for "type-safe" type-level programming
2022-01-16 03:00:27 +0100 <EvanR> stops you from putting wrong number of arguments to a type constructor among other things
2022-01-16 03:00:47 +0100 <EvanR> guides you to what sort of things can be Functor, or Monad
2022-01-16 03:00:53 +0100 <EvanR> or what can't be
2022-01-16 03:02:41 +0100zmt00(~zmt00@user/zmt00)
2022-01-16 03:02:53 +0100 <pavonia> What do we call the next level, btw, to get type-safe kinds?
2022-01-16 03:03:06 +0100tired(~tired@user/tired) (Quit: /)
2022-01-16 03:03:09 +0100 <EvanR> sorts, then snaps, then crackles, then pops
2022-01-16 03:03:30 +0100 <EvanR> or cumulative hierarchy of types
2022-01-16 03:03:44 +0100 <pavonia> Ah right, I've heard of sorts before
2022-01-16 03:04:04 +0100 <pavonia> Is that already a thing in GHC?
2022-01-16 03:04:17 +0100 <EvanR> * :: BOX ?
2022-01-16 03:04:29 +0100vysn(~vysn@user/vysn) (Remote host closed the connection)
2022-01-16 03:04:38 +0100tired(~tired@user/tired)
2022-01-16 03:07:17 +0100ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-01-16 03:07:18 +0100kupi(uid212005@id-212005.hampstead.irccloud.com)
2022-01-16 03:08:07 +0100califax-(~califax@user/califx)
2022-01-16 03:08:30 +0100zmt00(~zmt00@user/zmt00) (Quit: Leaving)
2022-01-16 03:11:27 +0100califax(~califax@user/califx) (Ping timeout: 276 seconds)
2022-01-16 03:11:27 +0100califax-califax
2022-01-16 03:11:51 +0100alx741(~alx741@157.100.93.160)
2022-01-16 03:13:54 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 03:15:20 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 03:18:32 +0100biog(~user1@static.39.160.132.142.clients.your-server.de) (Quit: ZZZzzz…)
2022-01-16 03:18:35 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 256 seconds)
2022-01-16 03:24:22 +0100xff0x(~xff0x@2001:1a81:5294:3100:2847:70a9:c956:fedc) (Ping timeout: 250 seconds)
2022-01-16 03:25:08 +0100neurocyte0917095(~neurocyte@IP-094046087042.dynamic.medianet-world.de)
2022-01-16 03:25:08 +0100neurocyte0917095(~neurocyte@IP-094046087042.dynamic.medianet-world.de) (Changing host)
2022-01-16 03:25:08 +0100neurocyte0917095(~neurocyte@user/neurocyte)
2022-01-16 03:26:17 +0100xff0x(~xff0x@2001:1a81:52d5:6400:be64:2647:1b3d:efbf)
2022-01-16 03:27:10 +0100tzh_(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Remote host closed the connection)
2022-01-16 03:27:12 +0100zmt00(~zmt00@user/zmt00)
2022-01-16 03:27:24 +0100neurocyte091709(~neurocyte@user/neurocyte) (Ping timeout: 250 seconds)
2022-01-16 03:27:24 +0100neurocyte0917095neurocyte091709
2022-01-16 03:27:27 +0100tzh_(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2022-01-16 03:28:26 +0100biog(~user1@static.39.160.132.142.clients.your-server.de)
2022-01-16 03:30:02 +0100kjak(~kjak@pool-108-45-56-21.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2022-01-16 03:33:19 +0100tzh_(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
2022-01-16 03:33:28 +0100alx741(~alx741@157.100.93.160)
2022-01-16 03:34:53 +0100 <EvanR> that might have been removed to make way for dependent haskell
2022-01-16 03:35:13 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-01-16 03:36:27 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2022-01-16 03:38:32 +0100waleee(~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4) (Ping timeout: 240 seconds)
2022-01-16 03:43:00 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-16 03:51:00 +0100LukeHoersten(~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-01-16 03:52:15 +0100TonyStone(~TonyStone@2603-7080-8607-c36a-9cdb-69bc-753b-1e50.res6.spectrum.com) (Remote host closed the connection)
2022-01-16 03:54:42 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-01-16 03:56:21 +0100 <jackdk> yeah the axiom Type :: Type was added by the extension -XTypeInType
2022-01-16 03:57:31 +0100 <jackdk> the extension is now deprecated because it's always-on, now that the rework in GHC is solid
2022-01-16 03:58:05 +0100 <EvanR> the unreasonable effectiveness of Type in Type
2022-01-16 03:58:29 +0100 <EvanR> hey, martin lof originally defined it so
2022-01-16 04:01:59 +0100 <EvanR> can I take a moment to complement the base data structure Data.List.NonEmpty, it is surprisingly nice and somehow isn't hell to integrate with other stuff
2022-01-16 04:02:14 +0100 <EvanR> unlike anything other than Int for integers
2022-01-16 04:03:00 +0100 <EvanR> also it's required by sconcat
2022-01-16 04:09:40 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 04:13:51 +0100n3rdy1(~n3rdy1@2600:1700:4570:3480::41)
2022-01-16 04:14:32 +0100monochrom(trebla@216.138.220.146)
2022-01-16 04:15:04 +0100benin(~benin@183.82.30.17) (Ping timeout: 250 seconds)
2022-01-16 04:16:22 +0100zmt00(~zmt00@user/zmt00) (Read error: Connection reset by peer)
2022-01-16 04:22:06 +0100benin(~benin@183.82.30.17)
2022-01-16 04:22:41 +0100biog(~user1@static.39.160.132.142.clients.your-server.de) (Quit: ZZZzzz…)
2022-01-16 04:23:45 +0100tommd(~tommd@75-164-130-101.ptld.qwest.net) (Ping timeout: 256 seconds)
2022-01-16 04:32:10 +0100nf(~n@monade.li) (Quit: Fairfarren.)
2022-01-16 04:33:11 +0100nf(~n@monade.li)
2022-01-16 04:35:03 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-01-16 04:35:03 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-01-16 04:35:03 +0100finn_elijaFinnElija
2022-01-16 04:35:41 +0100zmt00(~zmt00@user/zmt00)
2022-01-16 04:38:29 +0100td_(~td@muedsl-82-207-238-062.citykom.de) (Ping timeout: 256 seconds)
2022-01-16 04:38:36 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
2022-01-16 04:40:08 +0100td_(~td@muedsl-82-207-238-133.citykom.de)
2022-01-16 04:42:59 +0100zmt00(~zmt00@user/zmt00) (Read error: Connection reset by peer)
2022-01-16 04:43:23 +0100nfyoneda
2022-01-16 04:43:41 +0100terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat)
2022-01-16 04:44:55 +0100terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1)
2022-01-16 04:47:08 +0100burnside_(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2022-01-16 04:47:41 +0100burnsidesLlama(~burnsides@client-8-72.eduroam.oxuni.org.uk)
2022-01-16 04:51:22 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.4)
2022-01-16 04:51:54 +0100burnsidesLlama(~burnsides@client-8-72.eduroam.oxuni.org.uk) (Ping timeout: 250 seconds)
2022-01-16 04:54:14 +0100 <zzz> sorts snaps crackles pops that's a joke, right? i believe anything at this point
2022-01-16 05:00:45 +0100yauhsien_(~yauhsien@61-231-24-192.dynamic-ip.hinet.net)
2022-01-16 05:00:45 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net) (Read error: Connection reset by peer)
2022-01-16 05:09:26 +0100 <EvanR> according to a physics book I read, the derivative of acceleration is jerk. The derivative of jerk is snap. The derivative of snap is crackle. And the derivative of crackle is pop
2022-01-16 05:09:43 +0100 <EvanR> so the joke is on us
2022-01-16 05:13:03 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-01-16 05:16:59 +0100kupi(uid212005@id-212005.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2022-01-16 05:17:02 +0100little_mac(~little_ma@2601:410:4300:3ce0:c8a9:440b:1eee:6f25)
2022-01-16 05:24:11 +0100SummerSonw(~The_viole@203.77.49.232)
2022-01-16 05:26:17 +0100mvk(~mvk@2607:fea8:5cdd:f000::55f8) (Ping timeout: 240 seconds)
2022-01-16 05:28:54 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2022-01-16 05:29:48 +0100 <zzz> https://en.m.wikipedia.org/wiki/Fourth,_fifth,_and_sixth_derivatives_of_position
2022-01-16 05:30:03 +0100meer(~delicacie@c-98-208-218-119.hsd1.fl.comcast.net) (Ping timeout: 256 seconds)
2022-01-16 05:30:41 +0100 <zzz> great
2022-01-16 05:36:26 +0100Morrow[m](~morrowmma@2001:470:69fc:105::1d0)
2022-01-16 05:42:32 +0100CiaoSen(~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-01-16 05:44:18 +0100 <EvanR> Char :: *
2022-01-16 05:44:22 +0100 <EvanR> * :: BOX
2022-01-16 05:44:30 +0100 <EvanR> BOX :: WithAFox
2022-01-16 05:44:41 +0100 <EvanR> WithAFox :: GreenEggsAndHam
2022-01-16 05:46:43 +0100zmt00(~zmt00@user/zmt00)
2022-01-16 05:47:34 +0100yauhsien_(~yauhsien@61-231-24-192.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-01-16 05:48:01 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-01-16 05:48:07 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net)
2022-01-16 05:58:51 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 05:58:57 +0100slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2022-01-16 06:02:14 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 06:03:03 +0100little_mac(~little_ma@2601:410:4300:3ce0:c8a9:440b:1eee:6f25) (Remote host closed the connection)
2022-01-16 06:03:52 +0100little_mac(~little_ma@2601:410:4300:3ce0:5434:4d02:a0f8:4397)
2022-01-16 06:14:52 +0100[_](~itchyjunk@user/itchyjunk/x-7353470)
2022-01-16 06:17:16 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 250 seconds)
2022-01-16 06:20:02 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 240 seconds)
2022-01-16 06:20:38 +0100[_][itchyjunk]
2022-01-16 06:24:17 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 06:27:25 +0100fef(~thedawn@user/thedawn)
2022-01-16 06:27:51 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-16 06:30:41 +0100xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2022-01-16 06:35:37 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-16 06:35:37 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-16 06:35:37 +0100wroathe(~wroathe@user/wroathe)
2022-01-16 06:37:12 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 250 seconds)
2022-01-16 06:37:12 +0100gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2022-01-16 06:39:59 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-01-16 06:40:19 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-16 06:40:57 +0100ensyde(~ensyde@2600:1700:2050:1040:17c:22a2:b625:20d7) (Ping timeout: 240 seconds)
2022-01-16 06:42:48 +0100gentauro(~gentauro@user/gentauro)
2022-01-16 06:52:24 +0100mbuf(~Shakthi@110.225.247.38)
2022-01-16 06:55:02 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 240 seconds)
2022-01-16 06:58:47 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 07:00:12 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Client Quit)
2022-01-16 07:08:17 +0100 <zzz> how does Solo differ from Identity?
2022-01-16 07:09:16 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
2022-01-16 07:10:15 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 07:11:00 +0100lavaman(~lavaman@98.38.249.169) (Client Quit)
2022-01-16 07:11:44 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 07:15:48 +0100mbuf(~Shakthi@110.225.247.38) (Quit: Leaving)
2022-01-16 07:16:10 +0100 <ephemient> zzz, https://hackage.haskell.org/package/base-4.16.0.0/docs/Data-Tuple.html#t:Solo explains
2022-01-16 07:16:31 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it)
2022-01-16 07:17:41 +0100 <zzz> seems equivalent to me
2022-01-16 07:18:13 +0100 <zzz> oh nvm
2022-01-16 07:18:25 +0100 <zzz> Identity is a newtype
2022-01-16 07:23:39 +0100little_mac(~little_ma@2601:410:4300:3ce0:5434:4d02:a0f8:4397) (Remote host closed the connection)
2022-01-16 07:28:56 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 07:31:52 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-01-16 07:33:20 +0100zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-01-16 07:37:32 +0100notzmv(~zmv@user/notzmv) (Ping timeout: 240 seconds)
2022-01-16 07:39:12 +0100Jing(~hedgehog@240e:390:7c53:a7e1:d86c:41cf:1829:367e)
2022-01-16 07:43:30 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds)
2022-01-16 07:47:17 +0100shapr(~user@2601:7c0:c37c:46d0:fdf3:f0cd:30b3:4860) (Ping timeout: 240 seconds)
2022-01-16 07:52:02 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 240 seconds)
2022-01-16 07:52:54 +0100Inst(~delicacie@2601:6c4:4080:3f80:d7a:54de:7875:5faa)
2022-01-16 08:01:20 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2022-01-16 08:02:23 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 08:02:54 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 08:05:32 +0100kaph_(~kaph@net-2-47-208-144.cust.vodafonedsl.it)
2022-01-16 08:05:37 +0100zmt00(~zmt00@user/zmt00) (Ping timeout: 240 seconds)
2022-01-16 08:08:02 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 240 seconds)
2022-01-16 08:08:09 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it) (Ping timeout: 256 seconds)
2022-01-16 08:08:12 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 250 seconds)
2022-01-16 08:10:16 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-01-16 08:13:07 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-16 08:14:24 +0100val-host(~val-host@2a02:2f0f:9108:b00:6891:37fc:a7bd:3738)
2022-01-16 08:17:47 +0100zmt00(~zmt00@user/zmt00)
2022-01-16 08:22:12 +0100travv0(sid293381@user/travv0) ()
2022-01-16 08:26:49 +0100ksqsf(~user@134.209.106.31)
2022-01-16 08:41:12 +0100kjak(~kjak@pool-108-45-56-21.washdc.fios.verizon.net)
2022-01-16 08:51:47 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 08:52:32 +0100kjak(~kjak@pool-108-45-56-21.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2022-01-16 08:54:24 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 09:01:12 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2022-01-16 09:01:55 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 09:05:09 +0100gehmehgeh(~user@user/gehmehgeh)
2022-01-16 09:09:55 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 256 seconds)
2022-01-16 09:11:03 +0100Codaraxis__(~Codaraxis@user/codaraxis) (Quit: Leaving)
2022-01-16 09:16:40 +0100mc47(~mc47@xmonad/TheMC47)
2022-01-16 09:17:20 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
2022-01-16 09:17:26 +0100acidsys(~LSD@2.lsd.systems) (Excess Flood)
2022-01-16 09:20:36 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2022-01-16 09:21:29 +0100coot(~coot@89-64-85-93.dynamic.chello.pl)
2022-01-16 09:23:17 +0100Constraintegic(~DundiDund@ppp-212-114-229-130.dynamic.mnet-online.de)
2022-01-16 09:25:05 +0100ysh(sid6017@id-6017.ilkley.irccloud.com)
2022-01-16 09:26:32 +0100acidsys(~LSD@2.lsd.systems)
2022-01-16 09:26:38 +0100incertia(~incertia@24.42.241.219) (Quit: ZNC 1.7.5 - https://znc.in)
2022-01-16 09:26:58 +0100incertia(~incertia@24.42.241.219)
2022-01-16 09:35:30 +0100ksqsf(~user@134.209.106.31)
2022-01-16 09:40:32 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 240 seconds)
2022-01-16 09:41:36 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
2022-01-16 09:42:17 +0100`2jt(~jtomas@10.red-83-58-228.dynamicip.rima-tde.net)
2022-01-16 09:43:24 +0100wyrd(~wyrd@gateway/tor-sasl/wyrd) (Ping timeout: 276 seconds)
2022-01-16 09:44:17 +0100wyrd(~wyrd@gateway/tor-sasl/wyrd)
2022-01-16 09:45:27 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 256 seconds)
2022-01-16 09:53:33 +0100SummerSonw(~The_viole@203.77.49.232) (Ping timeout: 256 seconds)
2022-01-16 09:54:37 +0100n3rdy1(~n3rdy1@2600:1700:4570:3480::41) (Ping timeout: 240 seconds)
2022-01-16 09:56:10 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 09:57:33 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d)
2022-01-16 10:00:20 +0100ksqsf(~user@134.209.106.31)
2022-01-16 10:00:26 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 250 seconds)
2022-01-16 10:01:55 +0100notzmv(~zmv@user/notzmv)
2022-01-16 10:02:54 +0100ksqsf(~user@134.209.106.31) (Remote host closed the connection)
2022-01-16 10:03:11 +0100ksqsf(~user@134.209.106.31)
2022-01-16 10:07:14 +0100_ht(~quassel@2a02:a468:b619:1:b64b:7088:4c77:6428)
2022-01-16 10:16:57 +0100ensyde(~ensyde@2600:1700:2050:1040:59da:fcd2:abfb:4d1d)
2022-01-16 10:16:59 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Read error: Connection reset by peer)
2022-01-16 10:17:18 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-01-16 10:17:38 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-01-16 10:18:11 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d) (Quit: Leaving)
2022-01-16 10:18:58 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net)
2022-01-16 10:19:53 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 10:22:02 +0100waleee(~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4)
2022-01-16 10:23:32 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-01-16 10:24:18 +0100jinsun(~quassel@user/jinsun) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-01-16 10:24:34 +0100Tuplanolla(~Tuplanoll@91-159-68-166.elisa-laajakaista.fi)
2022-01-16 10:24:39 +0100jinsun(~quassel@user/jinsun)
2022-01-16 10:28:03 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 10:32:36 +0100sprout(~quassel@2a02:a467:ccd6:1:798d:4129:9f07:fe5b)
2022-01-16 10:32:39 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2022-01-16 10:35:37 +0100sprout_(~quassel@2a02:a467:ccd6:1:d9b7:23d6:79dd:2e64) (Ping timeout: 240 seconds)
2022-01-16 10:37:49 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net)
2022-01-16 10:38:25 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-16 10:42:23 +0100jinsun(~quassel@user/jinsun) (Quit: No Ping reply in 180 seconds.)
2022-01-16 10:42:35 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-16 10:43:49 +0100jinsun(~quassel@user/jinsun)
2022-01-16 10:45:09 +0100fef(~thedawn@user/thedawn) (Ping timeout: 276 seconds)
2022-01-16 10:47:51 +0100Jing(~hedgehog@240e:390:7c53:a7e1:d86c:41cf:1829:367e) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-01-16 10:48:05 +0100szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-01-16 10:50:39 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 10:50:46 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-01-16 10:51:27 +0100cosimone(~user@93-47-231-31.ip115.fastwebnet.it)
2022-01-16 10:57:48 +0100Jing(~hedgehog@240e:390:7c53:a7e1:58ff:45a7:b03e:c3bc)
2022-01-16 10:59:50 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 11:00:07 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-01-16 11:01:07 +0100shriekingnoise(~shrieking@201.231.16.156) (Quit: Quit)
2022-01-16 11:03:39 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-01-16 11:04:02 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 240 seconds)
2022-01-16 11:06:13 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-01-16 11:07:00 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-01-16 11:07:22 +0100mmhat(~mmh@55d4c3c9.access.ecotel.net)
2022-01-16 11:13:07 +0100Hildegunst(~luc@80.248.12.109.rev.sfr.net)
2022-01-16 11:13:17 +0100Hildegunst(~luc@80.248.12.109.rev.sfr.net) (Client Quit)
2022-01-16 11:15:34 +0100spaceseller(~spacesell@31.147.205.13)
2022-01-16 11:15:49 +0100SummerSonw(~The_viole@203.77.49.232)
2022-01-16 11:27:20 +0100kaph_(~kaph@net-2-47-208-144.cust.vodafonedsl.it) (Quit: Leaving)
2022-01-16 11:27:47 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it)
2022-01-16 11:27:54 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-01-16 11:30:24 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 11:31:11 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-01-16 11:31:23 +0100Hildegunst(~luc@80.248.12.109.rev.sfr.net)
2022-01-16 11:33:33 +0100spaceseller(~spacesell@31.147.205.13) (Quit: Leaving)
2022-01-16 11:40:05 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2022-01-16 11:41:11 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 11:41:13 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds)
2022-01-16 11:42:13 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2022-01-16 11:42:54 +0100Lord_of_Life_Lord_of_Life
2022-01-16 11:43:12 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-16 11:43:53 +0100zer0bitz(~zer0bitz@2001:2003:f444:a000:310a:887:a8c8:ed35)
2022-01-16 11:47:51 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2022-01-16 11:49:08 +0100acidsys(~LSD@2.lsd.systems) (Excess Flood)
2022-01-16 11:49:55 +0100acidsys(~LSD@2.lsd.systems)
2022-01-16 11:50:09 +0100nunggu(~q@gateway/tor-sasl/nunggu) (Ping timeout: 276 seconds)
2022-01-16 11:54:56 +0100max22-(~maxime@2a01cb0883359800c0130ad75708c925.ipv6.abo.wanadoo.fr)
2022-01-16 11:56:20 +0100pavonia(~user@user/siracusa) (Quit: Bye!)
2022-01-16 12:01:02 +0100alx741(~alx741@157.100.93.160)
2022-01-16 12:04:05 +0100atwm(~atwm@19-193-28-81.ftth.cust.kwaoo.net)
2022-01-16 12:04:32 +0100Hildegunst(~luc@80.248.12.109.rev.sfr.net) (Quit: leaving)
2022-01-16 12:05:55 +0100kupi_(uid212005@id-212005.hampstead.irccloud.com)
2022-01-16 12:07:53 +0100nunggu(~q@gateway/tor-sasl/nunggu)
2022-01-16 12:10:02 +0100waleee(~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4) (Ping timeout: 240 seconds)
2022-01-16 12:12:49 +0100fef(~thedawn@user/thedawn)
2022-01-16 12:22:04 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 12:26:33 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2022-01-16 12:29:38 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-01-16 12:30:37 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net)
2022-01-16 12:30:40 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-01-16 12:31:50 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-01-16 12:32:37 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net)
2022-01-16 12:32:56 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net) (Read error: Connection reset by peer)
2022-01-16 12:33:29 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net)
2022-01-16 12:38:17 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2022-01-16 12:40:18 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2022-01-16 12:40:20 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it) (Ping timeout: 250 seconds)
2022-01-16 12:41:20 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-01-16 12:41:37 +0100Inst(~delicacie@2601:6c4:4080:3f80:d7a:54de:7875:5faa) (Ping timeout: 240 seconds)
2022-01-16 12:42:09 +0100kupi_kupi
2022-01-16 12:42:10 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-01-16 12:48:33 +0100Inst(~delicacie@2601:6c4:4080:3f80:e892:9f45:4e01:f54f)
2022-01-16 12:57:13 +0100CiaoSen(~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-01-16 12:57:49 +0100kupiGuest6690
2022-01-16 13:03:48 +0100Hildegunst(~luc@80.248.12.109.rev.sfr.net)
2022-01-16 13:04:31 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
2022-01-16 13:04:48 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2022-01-16 13:06:00 +0100DNH(~DNH@2a02:8108:1100:16d8:a006:e9af:80b4:2cf)
2022-01-16 13:06:56 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it)
2022-01-16 13:17:32 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 240 seconds)
2022-01-16 13:20:02 +0100Hildegunst(~luc@80.248.12.109.rev.sfr.net) (Quit: leaving)
2022-01-16 13:24:17 +0100__monty__(~toonn@user/toonn)
2022-01-16 13:27:02 +0100ksqsf(~user@134.209.106.31) (Ping timeout: 240 seconds)
2022-01-16 13:33:32 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
2022-01-16 13:38:54 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 13:43:27 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2022-01-16 13:43:36 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 250 seconds)
2022-01-16 13:45:31 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-01-16 13:45:55 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-01-16 13:47:13 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net)
2022-01-16 13:50:04 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 13:51:25 +0100max22-(~maxime@2a01cb0883359800c0130ad75708c925.ipv6.abo.wanadoo.fr) (Ping timeout: 240 seconds)
2022-01-16 13:52:07 +0100yauhsien(~yauhsien@61-231-24-192.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2022-01-16 13:52:29 +0100FragByte(~christian@user/fragbyte) (Quit: Quit)
2022-01-16 13:54:30 +0100FragByte(~christian@user/fragbyte)
2022-01-16 13:57:24 +0100nunggu(~q@gateway/tor-sasl/nunggu) (Changing host)
2022-01-16 13:57:24 +0100nunggu(~q@user/nunggu)
2022-01-16 14:01:01 +0100fef(~thedawn@user/thedawn) (Quit: Leaving)
2022-01-16 14:02:12 +0100fef(~thedawn@user/thedawn)
2022-01-16 14:02:20 +0100FragByte(~christian@user/fragbyte) (Quit: Quit)
2022-01-16 14:04:23 +0100FragByte(~christian@user/fragbyte)
2022-01-16 14:05:05 +0100biog(~user1@static.39.160.132.142.clients.your-server.de)
2022-01-16 14:06:17 +0100Erutuon(~Erutuon@user/erutuon) (Ping timeout: 256 seconds)
2022-01-16 14:08:48 +0100Guest1715(~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net)
2022-01-16 14:10:02 +0100Constraintegic(~DundiDund@ppp-212-114-229-130.dynamic.mnet-online.de) (Ping timeout: 240 seconds)
2022-01-16 14:14:29 +0100 <Inst> haskell is just painful
2022-01-16 14:14:30 +0100 <Inst> :(
2022-01-16 14:15:28 +0100 <Inst> okay, even weirder stuff since very few people do winhaskell
2022-01-16 14:16:08 +0100 <Inst> i'm trying to figure out if hready can be used to detect keypresses (answer is no)
2022-01-16 14:16:18 +0100val-host(~val-host@2a02:2f0f:9108:b00:6891:37fc:a7bd:3738) (Quit: Leaving)
2022-01-16 14:16:41 +0100machinedgod(~machinedg@24.105.81.50)
2022-01-16 14:16:51 +0100 <Inst> but, when I try to do a function application via fmap and bool into io handle, I get false. When I try to do the same via lambda case, I get true
2022-01-16 14:19:42 +0100atwm(~atwm@19-193-28-81.ftth.cust.kwaoo.net) (Remote host closed the connection)
2022-01-16 14:23:15 +0100DNH(~DNH@2a02:8108:1100:16d8:a006:e9af:80b4:2cf) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-01-16 14:24:26 +0100 <xsperry> Inst, you can foreign import c_getch and c_kbhit from conio.h
2022-01-16 14:25:01 +0100 <Inst> i'll try haskeline first, i was told to try that
2022-01-16 14:28:35 +0100APic(apic@apic.name) (Quit: [TLS] Client upgrade)
2022-01-16 14:28:47 +0100APic(apic@apic.name)
2022-01-16 14:30:07 +0100 <xsperry> s/c_getch/getch
2022-01-16 14:31:02 +0100SummerSonw(~The_viole@203.77.49.232) (Ping timeout: 240 seconds)
2022-01-16 14:32:01 +0100coot(~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot)
2022-01-16 14:32:49 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-16 14:34:23 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d)
2022-01-16 14:34:39 +0100 <sha296> Hello
2022-01-16 14:35:56 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d) (Client Quit)
2022-01-16 14:36:42 +0100DNH(~DNH@2a02:8108:1100:16d8:2032:bbef:e5a8:56de)
2022-01-16 14:40:22 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.4)
2022-01-16 14:41:23 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
2022-01-16 14:41:43 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d)
2022-01-16 14:41:57 +0100 <sha296> Hi
2022-01-16 14:42:30 +0100 <xsperry> hi
2022-01-16 14:43:18 +0100 <sha296> I am a beginner when it comes to Haskell
2022-01-16 14:43:19 +0100Guest1715(~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: Client closed)
2022-01-16 14:43:42 +0100 <sha296> I am looking forward to benefit from you people
2022-01-16 14:46:55 +0100 <polyphem> sha296: whats your background, and where are you at on your journey into haskell ?
2022-01-16 14:47:03 +0100mvk(~mvk@2607:fea8:5cdd:f000::55f8)
2022-01-16 14:47:47 +0100 <sha296> My background is in discrete maths and theoretical CS (algorithms specifically)
2022-01-16 14:48:02 +0100 <sha296> Currently, I am looking into some books
2022-01-16 14:48:06 +0100FragByte(~christian@user/fragbyte) (Quit: Quit)
2022-01-16 14:48:20 +0100 <sha296> How does one quote?
2022-01-16 14:48:28 +0100 <sha296> I am using hexchat?
2022-01-16 14:49:32 +0100 <kitzman> Hm, beginner question: how can a type be in scope, but its data constructor not?
2022-01-16 14:50:09 +0100FragByte(~christian@user/fragbyte)
2022-01-16 14:50:12 +0100 <polyphem> kitzman: a module exports a typename but not its constructors
2022-01-16 14:50:53 +0100 <polyphem> thats how encapsulation is done in haskell
2022-01-16 14:50:59 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 14:51:09 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d) (Quit: Leaving)
2022-01-16 14:51:32 +0100 <polyphem> usually there are also some "smart constructors" i.e. functions that construct the ype for you in scope
2022-01-16 14:51:41 +0100 <kitzman> oh. i see - so i would have to manipulate the struct just inside the module (and probs this will be beneficial for my code as well)
2022-01-16 14:52:17 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d)
2022-01-16 14:52:21 +0100 <polyphem> is it your own type/module ?
2022-01-16 14:52:44 +0100 <kitzman> yes. between the Endpoint and the Service layer.
2022-01-16 14:52:56 +0100 <geekosaur> sha296, irc doesn't have built-in quoting. you might want to try matrix.org as a more modern interface to irc
2022-01-16 14:53:04 +0100 <geekosaur> should be the same room name (#haskell)
2022-01-16 14:53:16 +0100 <sha296> Oh, I see
2022-01-16 14:53:23 +0100 <polyphem> in the module export list you exportet the type , and not its constructors
2022-01-16 14:53:30 +0100 <sha296> I do have matrix but I prefer xmpp
2022-01-16 14:54:44 +0100 <polyphem> module ServiceLayer (MyType) where ... exports only the type, wheras module ServiceLayer (MyType(..)) where ... exports also the constructors
2022-01-16 14:54:47 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d) (Client Quit)
2022-01-16 14:55:01 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d)
2022-01-16 14:55:32 +0100CiaoSen(~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-01-16 14:55:35 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 256 seconds)
2022-01-16 14:55:51 +0100 <kitzman> polyphem: thank you, now I see my mistake
2022-01-16 14:56:24 +0100 <polyphem> not necessarily a mistake, it depends what you want to encapsulate/export ...
2022-01-16 14:56:50 +0100 <kitzman> yeah, I think it makes sense to do this in this particular case
2022-01-16 14:57:15 +0100 <polyphem> kitzman: thats your design desicion to make :)
2022-01-16 14:57:16 +0100Tuplanolla(~Tuplanoll@91-159-68-166.elisa-laajakaista.fi) (Ping timeout: 250 seconds)
2022-01-16 14:57:25 +0100FragByte(~christian@user/fragbyte) (Quit: Quit)
2022-01-16 14:57:40 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.4)
2022-01-16 14:58:15 +0100 <geekosaur> not aware of any xmpp gateways, sorry
2022-01-16 14:58:30 +0100 <geekosaur> just matrix and irccloud
2022-01-16 14:58:48 +0100 <polyphem> kitzman: check out "smart constructors" to get a broader idea ... usefull
2022-01-16 14:59:08 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
2022-01-16 14:59:28 +0100FragByte(~christian@user/fragbyte)
2022-01-16 15:00:24 +0100`2jt(~jtomas@10.red-83-58-228.dynamicip.rima-tde.net) (Remote host closed the connection)
2022-01-16 15:00:47 +0100`2jt(~jtomas@10.red-83-58-228.dynamicip.rima-tde.net)
2022-01-16 15:00:50 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d) (Leaving)
2022-01-16 15:01:03 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d)
2022-01-16 15:01:21 +0100SummerSonw(~The_viole@203.77.49.232)
2022-01-16 15:01:29 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d) (Quit: Leaving)
2022-01-16 15:01:45 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d)
2022-01-16 15:02:12 +0100geranim0(~geranim0@modemcable242.171-178-173.mc.videotron.ca)
2022-01-16 15:02:42 +0100waleee(~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4)
2022-01-16 15:06:20 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Read error: Connection reset by peer)
2022-01-16 15:07:46 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net)
2022-01-16 15:10:13 +0100max22-(~maxime@2a01cb08833598007a0a24004d47b92d.ipv6.abo.wanadoo.fr)
2022-01-16 15:11:04 +0100 <kitzman> thank you I will ^^
2022-01-16 15:11:39 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 15:13:00 +0100val-host(~val-host@2a02:2f0f:9108:b00:6891:37fc:a7bd:3738)
2022-01-16 15:13:12 +0100 <zzz> how does `length = sum . map (const 1)` differ from the "normal" way or is it just a matter of style?
2022-01-16 15:13:29 +0100 <zzz> s/^how//
2022-01-16 15:13:48 +0100Tuplanolla(~Tuplanoll@91-159-69-157.elisa-laajakaista.fi)
2022-01-16 15:14:25 +0100 <polyphem> zzz: sum itself is a fold , you are adding another tracersal of the list by map
2022-01-16 15:14:44 +0100 <polyphem> *traversal
2022-01-16 15:16:38 +0100 <zzz> isn't it subject to fusion?
2022-01-16 15:16:48 +0100 <polyphem> so instead of just folding , you are folding after mapping , which might get optimized
2022-01-16 15:17:23 +0100 <zzz> ah yes, i'm assuming optimization
2022-01-16 15:17:29 +0100val-host(~val-host@2a02:2f0f:9108:b00:6891:37fc:a7bd:3738) (Client Quit)
2022-01-16 15:17:47 +0100 <polyphem> i guess , but i really dont know much about optimization , i guess so
2022-01-16 15:18:54 +0100sha296(~shakil@2409:4060:208:b748:90bc:94d2:ef56:d69d) (Quit: Leaving)
2022-01-16 15:19:38 +0100 <zzz> i expect this kind of optimization to be trivial but am also not sure
2022-01-16 15:20:29 +0100 <polyphem> its a "readable" implementation which is good IMO
2022-01-16 15:22:00 +0100 <Sqaure> anyone know if there exist some trick (using TH presumably) to turn servant "Api" types into typeclasses. I find their approach gives horrible error messages. Every type error become a "Api type" error.
2022-01-16 15:25:52 +0100teddyc(theodorc@cassarossa.samfundet.no) (Read error: Connection reset by peer)
2022-01-16 15:29:32 +0100teddyc(theodorc@cassarossa.samfundet.no)
2022-01-16 15:30:10 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
2022-01-16 15:34:42 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg)
2022-01-16 15:35:03 +0100hololeap(~hololeap@user/hololeap) (Read error: Connection reset by peer)
2022-01-16 15:36:24 +0100hololeap(~hololeap@user/hololeap)
2022-01-16 15:37:57 +0100DNH(~DNH@2a02:8108:1100:16d8:2032:bbef:e5a8:56de) (Ping timeout: 240 seconds)
2022-01-16 15:40:16 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 15:48:32 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 240 seconds)
2022-01-16 15:48:49 +0100Topsi(~Tobias@dyndsl-095-033-024-084.ewe-ip-backbone.de)
2022-01-16 15:50:23 +0100max22-(~maxime@2a01cb08833598007a0a24004d47b92d.ipv6.abo.wanadoo.fr) (Quit: Leaving)
2022-01-16 15:51:36 +0100 <carbolymer> what was the name of the GHC extension which was disabling lazines? something like StrictHaskell
2022-01-16 15:53:00 +0100 <carbolymer> Strict
2022-01-16 15:53:04 +0100 <yushyin> carbolymer: https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/strict.html
2022-01-16 15:53:59 +0100 <geekosaur> or StrictData. note that using -XStrict means you can't use most of the Prelude, which relies on laziness
2022-01-16 15:54:24 +0100Guest6690(uid212005@id-212005.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2022-01-16 15:55:50 +0100Ruit(~textual@c-69-248-83-247.hsd1.nj.comcast.net)
2022-01-16 16:01:20 +0100 <carbolymer> thx
2022-01-16 16:02:01 +0100SummerSonw(~The_viole@203.77.49.232) (Quit: Leaving)
2022-01-16 16:04:09 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-01-16 16:04:38 +0100Ruit(~textual@c-69-248-83-247.hsd1.nj.comcast.net) (Quit: Textual IRC Client: www.textualapp.com)
2022-01-16 16:05:58 +0100CiaoSen(~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-01-16 16:08:06 +0100xkuru(~xkuru@user/xkuru)
2022-01-16 16:10:15 +0100jkaye(~jkaye@2601:281:8300:7530:ebdf:216a:24ec:ae90)
2022-01-16 16:13:18 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2022-01-16 16:13:32 +0100xff0x(~xff0x@2001:1a81:52d5:6400:be64:2647:1b3d:efbf) (Ping timeout: 250 seconds)
2022-01-16 16:14:19 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-01-16 16:22:40 +0100Everything(~Everythin@37.115.210.35)
2022-01-16 16:23:09 +0100nunggu(~q@user/nunggu) (Ping timeout: 276 seconds)
2022-01-16 16:23:38 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 16:24:37 +0100nunggu(~q@user/nunggu)
2022-01-16 16:27:23 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-01-16 16:27:38 +0100alMalsamo(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-01-16 16:27:57 +0100alMalsamo(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-01-16 16:27:57 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2022-01-16 16:28:47 +0100nunggu(~q@user/nunggu) (Remote host closed the connection)
2022-01-16 16:29:10 +0100nunggu(~q@user/nunggu)
2022-01-16 16:30:51 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-16 16:30:51 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-16 16:30:51 +0100wroathe(~wroathe@user/wroathe)
2022-01-16 16:32:59 +0100mikoto-chan(~mikoto-ch@213.177.151.239)
2022-01-16 16:34:16 +0100xff0x(~xff0x@2001:1a81:52d5:6400:be64:2647:1b3d:efbf)
2022-01-16 16:35:19 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-16 16:46:51 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-16 16:51:02 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2022-01-16 16:51:15 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-16 16:51:15 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-16 16:51:15 +0100wroathe(~wroathe@user/wroathe)
2022-01-16 16:56:23 +0100 <cheater> people still haven't made a strict prelude?
2022-01-16 16:56:50 +0100yehoshua[m]Yehoshua
2022-01-16 16:57:35 +0100Yehoshua(~yehoshuay@2001:470:69fc:105::1:593f) (Quit: Reconnecting)
2022-01-16 16:57:48 +0100LukeHoersten(~LukeHoers@user/lukehoersten)
2022-01-16 16:57:49 +0100Yehoshua(~yehoshuay@2001:470:69fc:105::1:593f)
2022-01-16 16:58:37 +0100slowButPresent(~slowButPr@user/slowbutpresent)
2022-01-16 16:58:42 +0100Yehoshua(~yehoshuay@2001:470:69fc:105::1:593f) (Client Quit)
2022-01-16 16:58:56 +0100Yehoshua(~yehoshua@2001:470:69fc:105::1:593f)
2022-01-16 17:00:12 +0100nunggu(~q@user/nunggu) (Ping timeout: 276 seconds)
2022-01-16 17:01:17 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection)
2022-01-16 17:01:36 +0100nunggu(~q@user/nunggu)
2022-01-16 17:01:36 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg)
2022-01-16 17:02:29 +0100Yehoshua(~yehoshua@2001:470:69fc:105::1:593f) (Client Quit)
2022-01-16 17:02:32 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection)
2022-01-16 17:02:44 +0100Yehoshua(~yehoshua@2001:470:69fc:105::1:593f)
2022-01-16 17:02:50 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg)
2022-01-16 17:03:22 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 250 seconds)
2022-01-16 17:05:36 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 17:05:49 +0100 <Sqaure> I guess im not seeing the obvious but i had to create this function to convert my Servant app actions to Servants context : eitherToHandler :: (e -> ServantErr) -> Either e a -> Handler a ; eitherToHandler f = Handler . withExceptT f . liftEither
2022-01-16 17:07:27 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds)
2022-01-16 17:09:52 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 250 seconds)
2022-01-16 17:11:34 +0100random_(~random@185.219.68.251) (Read error: Connection reset by peer)
2022-01-16 17:12:16 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-01-16 17:12:37 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-01-16 17:12:57 +0100YoungFrog(~youngfrog@2a02:a03f:c21b:f900:f89b:2c73:97b1:7ba3) (Remote host closed the connection)
2022-01-16 17:13:17 +0100YoungFrog(~youngfrog@2a02:a03f:c21b:f900:9952:728:f039:79c2)
2022-01-16 17:15:25 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg)
2022-01-16 17:15:48 +0100fef(~thedawn@user/thedawn) (Ping timeout: 276 seconds)
2022-01-16 17:19:23 +0100LukeHoersten(~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-01-16 17:24:55 +0100MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net)
2022-01-16 17:26:39 +0100mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2022-01-16 17:29:18 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2022-01-16 17:30:59 +0100 <sprout> > nil
2022-01-16 17:31:00 +0100 <lambdabot> error: Variable not in scope: nil
2022-01-16 17:31:19 +0100 <sprout> > []
2022-01-16 17:31:21 +0100 <lambdabot> []
2022-01-16 17:31:27 +0100 <sprout> > head []
2022-01-16 17:31:29 +0100 <lambdabot> *Exception: Prelude.head: empty list
2022-01-16 17:34:45 +0100shapr(~user@2601:7c0:c37c:46d0:2bce:110:d6ba:469e)
2022-01-16 17:40:42 +0100mc47(~mc47@xmonad/TheMC47)
2022-01-16 17:41:38 +0100cjay-cjay
2022-01-16 17:43:49 +0100biog(~user1@static.39.160.132.142.clients.your-server.de) (Quit: ZZZzzz…)
2022-01-16 17:47:27 +0100spaceseller(~spacesell@31.147.205.13)
2022-01-16 17:49:31 +0100 <zzz> why would you want a strict prelude?
2022-01-16 17:50:53 +0100spaceseller(~spacesell@31.147.205.13) (Client Quit)
2022-01-16 17:50:56 +0100 <EvanR> what even is a strict prelude
2022-01-16 17:53:32 +0100 <zzz> i never got this fixation on strictness
2022-01-16 17:54:45 +0100 <zzz> haskell is *the* lazy language, and actually does it well. why do people keep trying to make it strict?
2022-01-16 17:54:48 +0100teddyc(theodorc@cassarossa.samfundet.no) (Quit: WeeChat 3.0)
2022-01-16 17:55:12 +0100 <jkaye> It's very easy to leak memory unintentionally with lazy semantics by default. It can be hard to find these leaks, and similarly hard to reason about them
2022-01-16 17:55:17 +0100 <geekosaur> because figuring out where laziness is / isn't appropriate is hard
2022-01-16 17:55:26 +0100 <jkaye> So, it becomes an issue for a lot of people, and they look for a solution
2022-01-16 17:55:41 +0100 <jkaye> These problems are well-documented and (I think) well agreed upon within the community at large
2022-01-16 17:55:51 +0100 <geekosaur> that said, I kinda feel like you lose the point of purity, and thereby the point of Haskell, if you lose laziness
2022-01-16 17:56:26 +0100xb0o2(~xb0o2@user/xb0o2)
2022-01-16 17:56:46 +0100 <Rembane> I'd prefer tooling that helped me with finding where my code has the wrong amount of laziness rather than throwing it all out.
2022-01-16 17:57:54 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-16 17:57:58 +0100 <EvanR> a visualizer of the program-in-motion, tony stark style
2022-01-16 17:58:11 +0100 <EvanR> you point at a hologram in space and see the space leaking in real time
2022-01-16 17:58:48 +0100 <jkaye> Rembane, I tend to agree. IF it somehow became easier to work with/reason about I think a lot of the questions/complaints would melt. I'd use a tool like that for sure
2022-01-16 17:59:09 +0100 <EvanR> ghc-vis is good but not that
2022-01-16 18:00:03 +0100 <geekosaur> the ghc devs and folks working woith them are still wokring on tooling based around the eventlog that is supposed to help with that
2022-01-16 18:00:14 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 18:00:18 +0100 <Rembane> geekosaur: That's really cool.
2022-01-16 18:00:19 +0100jakalx(~jakalx@base.jakalx.net)
2022-01-16 18:00:55 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
2022-01-16 18:00:57 +0100Constraintegic(~DundiDund@ppp-212-114-229-130.dynamic.mnet-online.de)
2022-01-16 18:02:08 +0100 <geekosaur> that said, it is notable that even ghc devs have big problems finding and reasoning about laziness leaks
2022-01-16 18:02:22 +0100 <geekosaur> but I have to think turning Haskell into a worse OCaml is not the solution
2022-01-16 18:03:07 +0100 <Rembane> Maybe laziness leaks are really hard to keep track of?
2022-01-16 18:04:00 +0100 <geekosaur> they are. but that's what the eventlog is about
2022-01-16 18:05:26 +0100 <EvanR> if you're expecting to get away with very little heap usage, you can turn the heap limit low which acts like gutter bumpers during testing. But real code might need to use a bunch of space at some point, and not be a bug
2022-01-16 18:05:49 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2022-01-16 18:05:49 +0100 <EvanR> how does a tool know the diff
2022-01-16 18:05:54 +0100zmt01(~zmt00@user/zmt00)
2022-01-16 18:06:11 +0100 <jkaye> One super naive way would be to see if the memory is being used by thunks vs. values
2022-01-16 18:06:34 +0100 <jkaye> 10Gb of thunks is probably not what someone meant to do. Operative word being probably, because I'm sure there are situations where that is intended
2022-01-16 18:06:56 +0100 <jkaye> But for the type of thing that I'm referring to, it would be strategies similar to that
2022-01-16 18:06:57 +0100zmt00(~zmt00@user/zmt00) (Ping timeout: 240 seconds)
2022-01-16 18:07:07 +0100 <jkaye> I'm sure smarter GHC people could come up with much better ways
2022-01-16 18:08:20 +0100teddyc(theodorc@cassarossa.samfundet.no)
2022-01-16 18:08:33 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-16 18:13:08 +0100Jeanne-Kamikaze(~Jeanne-Ka@static-198-54-131-125.cust.tzulo.com)
2022-01-16 18:15:37 +0100Inst(~delicacie@2601:6c4:4080:3f80:e892:9f45:4e01:f54f) (Ping timeout: 240 seconds)
2022-01-16 18:17:42 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection)
2022-01-16 18:17:58 +0100 <geekosaur> there's some refinements to that, like you can ignore thunks that never make it out of the nursery
2022-01-16 18:18:01 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg)
2022-01-16 18:19:43 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-01-16 18:22:15 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds)
2022-01-16 18:22:21 +0100 <dmj`> Csaba's STG interpreter can detect space leaks
2022-01-16 18:22:41 +0100lechner(~lechner@debian/lechner) (Quit: WeeChat 3.0)
2022-01-16 18:24:21 +0100lechner(~lechner@debian/lechner)
2022-01-16 18:25:26 +0100lavaman(~lavaman@98.38.249.169)
2022-01-16 18:27:33 +0100lbseale(~ep1ctetus@user/ep1ctetus)
2022-01-16 18:29:24 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 18:29:47 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2022-01-16 18:31:36 +0100biog(~user1@static.39.160.132.142.clients.your-server.de)
2022-01-16 18:32:43 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 18:35:02 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
2022-01-16 18:35:07 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 18:38:17 +0100waleee(~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4) (Ping timeout: 240 seconds)
2022-01-16 18:38:32 +0100MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net) (Quit: WeeChat 3.3)
2022-01-16 18:39:32 +0100mud(~mud@user/kadoban) (Read error: Connection reset by peer)
2022-01-16 18:39:58 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-16 18:40:30 +0100waleee(~waleee@h-98-128-229-110.NA.cust.bahnhof.se)
2022-01-16 18:40:37 +0100mud(~mud@user/kadoban)
2022-01-16 18:42:15 +0100wyrd(~wyrd@gateway/tor-sasl/wyrd) (Ping timeout: 276 seconds)
2022-01-16 18:43:02 +0100wyrd(~wyrd@gateway/tor-sasl/wyrd)
2022-01-16 18:46:07 +0100Kaiepi(~Kaiepi@156.34.47.253) (Remote host closed the connection)
2022-01-16 18:51:16 +0100benin(~benin@183.82.30.17) (Ping timeout: 250 seconds)
2022-01-16 18:52:28 +0100benin(~benin@183.82.30.17)
2022-01-16 18:52:57 +0100zmt01(~zmt00@user/zmt00) (Read error: Connection reset by peer)
2022-01-16 18:54:44 +0100Jing(~hedgehog@240e:390:7c53:a7e1:58ff:45a7:b03e:c3bc) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-01-16 18:56:21 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-16 18:57:33 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 256 seconds)
2022-01-16 19:01:03 +0100Kaiepi(~Kaiepi@156.34.47.253)
2022-01-16 19:03:00 +0100deadmarshal(~deadmarsh@95.38.231.124)
2022-01-16 19:03:39 +0100zmt00(~zmt00@user/zmt00)
2022-01-16 19:05:05 +0100max22-(~maxime@2a01cb0883359800342882a7243a01c5.ipv6.abo.wanadoo.fr)
2022-01-16 19:08:00 +0100machinedgod(~machinedg@24.105.81.50)
2022-01-16 19:12:29 +0100zmt00(~zmt00@user/zmt00) (Read error: Connection reset by peer)
2022-01-16 19:13:52 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg)
2022-01-16 19:15:57 +0100jkaye(~jkaye@2601:281:8300:7530:ebdf:216a:24ec:ae90) (Ping timeout: 240 seconds)
2022-01-16 19:20:29 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-16 19:21:32 +0100Shiranai(~Shiranai@190.237.13.17)
2022-01-16 19:24:54 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 19:25:05 +0100 <Shiranai> Hello, I want to do "popping" on the natural numbers, i.e., `a  = [1..]`, `a' = pop 1 a`, `a' == [1,3,4,..]`. It doesn't have to be lists, but I want this popping functionality, how to implement this?
2022-01-16 19:25:54 +0100 <dsal> :t splitAt
2022-01-16 19:25:55 +0100 <lambdabot> Int -> [a] -> ([a], [a])
2022-01-16 19:26:03 +0100 <dsal> splitAt 1 [1..10]
2022-01-16 19:26:08 +0100 <dsal> > splitAt 1 [1..10]
2022-01-16 19:26:10 +0100 <lambdabot> ([1],[2,3,4,5,6,7,8,9,10])
2022-01-16 19:26:45 +0100 <EvanR> so this pop is more like a "lookup delete"
2022-01-16 19:26:56 +0100shriekingnoise(~shrieking@201.231.16.156)
2022-01-16 19:26:57 +0100 <EvanR> Data.Map and Data.IntMap have that
2022-01-16 19:27:29 +0100 <EvanR> for infinite number of natural numbers, maybe use a Data.Set to track which numbers you already deleted
2022-01-16 19:29:30 +0100 <dsal> Yeah, doing it with lists is probably not cheap.
2022-01-16 19:29:32 +0100 <EvanR> a co-finite set represented by it's finite complement
2022-01-16 19:29:36 +0100 <dsal> > second (drop 1) $ splitAt 1 [1..10]
2022-01-16 19:29:37 +0100 <lambdabot> ([1],[3,4,5,6,7,8,9,10])
2022-01-16 19:29:44 +0100 <EvanR> its*
2022-01-16 19:29:50 +0100 <sofviic[m]> the naive solution would probs be `pop n l = take n l ++ drop (n+1) l`
2022-01-16 19:29:53 +0100 <sofviic[m]> s/naive/naïve/
2022-01-16 19:30:24 +0100 <EvanR> oh, was that 1 the index of what to lookup-delete
2022-01-16 19:31:02 +0100 <EvanR> a jenga stack
2022-01-16 19:31:33 +0100 <dsal> > let pop x = uncurry (<>) . second (drop 1) . splitAt x in pop 1 [1..10]
2022-01-16 19:31:34 +0100 <lambdabot> [1,3,4,5,6,7,8,9,10]
2022-01-16 19:32:01 +0100 <EvanR> it's cheap if you stay near the top of the stack / list
2022-01-16 19:34:27 +0100lbseale(~ep1ctetus@user/ep1ctetus) (Quit: Leaving)
2022-01-16 19:34:54 +0100biog(~user1@static.39.160.132.142.clients.your-server.de) (Quit: ZZZzzz…)
2022-01-16 19:35:37 +0100evocatus(~evocatus@62.182.77.224)
2022-01-16 19:35:39 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-16 19:35:43 +0100n3rdy1(~n3rdy1@2600:1700:4570:3480::41)
2022-01-16 19:36:00 +0100 <sofviic[m]> * the naïve solution would probs be `pop n l = take n l ++ drop (n+1) l`,
2022-01-16 19:36:00 +0100 <sofviic[m]> without the `l` argument: `pop n = ((<>) . take n) <*> (drop (n+1))`.
2022-01-16 19:42:17 +0100econo(uid147250@user/econo)
2022-01-16 19:50:17 +0100biog(~user1@static.39.160.132.142.clients.your-server.de)
2022-01-16 19:52:41 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 19:54:25 +0100zmt00(~zmt00@user/zmt00)
2022-01-16 19:56:58 +0100 <Shiranai> great, thanks guys
2022-01-16 19:59:54 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2022-01-16 20:00:19 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it) (Read error: Connection reset by peer)
2022-01-16 20:04:21 +0100 <EvanR> if haskell pops all the boards from stack of theseus and replaces them, is it still the same stack
2022-01-16 20:04:50 +0100kjak(~kjak@pool-108-45-56-21.washdc.fios.verizon.net)
2022-01-16 20:06:32 +0100deadmarshal(~deadmarsh@95.38.231.124) (Ping timeout: 240 seconds)
2022-01-16 20:08:43 +0100biog(~user1@static.39.160.132.142.clients.your-server.de) (Quit: ZZZzzz…)
2022-01-16 20:09:37 +0100 <Shiranai> no because pushing the values into the stack again probably made them get allocated in a different part in memory :^)
2022-01-16 20:10:13 +0100 <EvanR> isn't the point of a ship to move around!
2022-01-16 20:10:20 +0100 <monochrom> hahaha
2022-01-16 20:11:40 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it)
2022-01-16 20:12:00 +0100 <monochrom> But what about the point of a stack? :)
2022-01-16 20:14:48 +0100 <EvanR> many languages feature generators that output another value on demand, it's funny haskell gets "put value back into generator" for free, something often not in the generator API
2022-01-16 20:15:35 +0100 <EvanR> also KLAX was awesome
2022-01-16 20:16:07 +0100 <EvanR> a game made for implementing as haskell list
2022-01-16 20:21:55 +0100Kaiepi(~Kaiepi@156.34.47.253) (Remote host closed the connection)
2022-01-16 20:22:49 +0100Kaiepi(~Kaiepi@156.34.47.253)
2022-01-16 20:23:17 +0100n3rdy1(~n3rdy1@2600:1700:4570:3480::41) (Ping timeout: 240 seconds)
2022-01-16 20:23:17 +0100fef(~thedawn@user/thedawn)
2022-01-16 20:25:00 +0100biog(~user1@static.39.160.132.142.clients.your-server.de)
2022-01-16 20:25:32 +0100Erutuon(~Erutuon@user/erutuon)
2022-01-16 20:27:17 +0100Sgeo(~Sgeo@user/sgeo)
2022-01-16 20:31:04 +0100califax(~califax@user/califx) (Remote host closed the connection)
2022-01-16 20:31:30 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
2022-01-16 20:31:51 +0100califax(~califax@user/califx)
2022-01-16 20:32:45 +0100fef(~thedawn@user/thedawn) (Ping timeout: 276 seconds)
2022-01-16 20:36:12 +0100n3rdy1(~n3rdy1@2600:1700:4570:3480:1b88:50f:dae0:9293)
2022-01-16 20:46:24 +0100x88x88x(~x88x88x@149.28.53.172) (Quit: ZNC - https://znc.in)
2022-01-16 20:46:56 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection)
2022-01-16 20:47:15 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg)
2022-01-16 20:47:38 +0100fef(~thedawn@user/thedawn)
2022-01-16 20:48:36 +0100xstill-(xstill@fimu/xstill) (Quit: Ping timeout (120 seconds))
2022-01-16 20:48:36 +0100xsarnik(xsarnik@lounge.fi.muni.cz) (Quit: Ping timeout (120 seconds))
2022-01-16 20:51:51 +0100ProfSimm(~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds)
2022-01-16 20:51:57 +0100x88x88x(~x88x88x@149.28.53.172)
2022-01-16 20:54:08 +0100xstill-(xstill@fimu/xstill)
2022-01-16 20:54:29 +0100little_mac(~little_ma@2601:410:4300:3ce0:1926:260a:1924:1e2)
2022-01-16 20:54:30 +0100pavonia(~user@user/siracusa)
2022-01-16 20:54:37 +0100zaquest(~notzaques@5.130.79.72) (Remote host closed the connection)
2022-01-16 20:55:46 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-16 20:55:54 +0100zaquest(~notzaques@5.130.79.72)
2022-01-16 21:02:22 +0100xsarnik(xsarnik@lounge.fi.muni.cz)
2022-01-16 21:03:53 +0100ProfSimm(~ProfSimm@87.227.196.109)
2022-01-16 21:05:27 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-01-16 21:05:27 +0100juhp(~juhp@128.106.188.82) (Ping timeout: 256 seconds)
2022-01-16 21:07:14 +0100juhp(~juhp@128.106.188.82)
2022-01-16 21:07:43 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-16 21:08:29 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-16 21:11:24 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2022-01-16 21:11:28 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-01-16 21:12:37 +0100coot(~coot@89-64-85-93.dynamic.chello.pl)
2022-01-16 21:16:14 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-16 21:16:14 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-16 21:16:14 +0100wroathe(~wroathe@user/wroathe)
2022-01-16 21:20:32 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-01-16 21:22:26 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.4)
2022-01-16 21:22:59 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-01-16 21:28:51 +0100xsarnik(xsarnik@lounge.fi.muni.cz) (Ping timeout: 256 seconds)
2022-01-16 21:28:51 +0100xstill-(xstill@fimu/xstill) (Ping timeout: 256 seconds)
2022-01-16 21:30:50 +0100atwm(~atwm@pop.92-184-112-8.mobile.abo.orange.fr)
2022-01-16 21:31:52 +0100atwm(~atwm@pop.92-184-112-8.mobile.abo.orange.fr) (Remote host closed the connection)
2022-01-16 21:36:58 +0100xstill-(xstill@fimu/xstill)
2022-01-16 21:37:30 +0100xsarnik(xsarnik@lounge.fi.muni.cz)
2022-01-16 21:38:37 +0100biog(~user1@static.39.160.132.142.clients.your-server.de) (Quit: ZZZzzz…)
2022-01-16 21:39:59 +0100evocatus(~evocatus@62.182.77.224) (Quit: Leaving)
2022-01-16 21:45:56 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2022-01-16 21:51:24 +0100fef(~thedawn@user/thedawn) (Ping timeout: 276 seconds)
2022-01-16 21:52:50 +0100justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 250 seconds)
2022-01-16 21:53:16 +0100zer0bitz(~zer0bitz@2001:2003:f444:a000:310a:887:a8c8:ed35) (Ping timeout: 250 seconds)
2022-01-16 21:54:55 +0100sektor(~kvirc@87.227.175.182) (Ping timeout: 256 seconds)
2022-01-16 22:02:44 +0100_ht(~quassel@2a02:a468:b619:1:b64b:7088:4c77:6428) (Remote host closed the connection)
2022-01-16 22:04:49 +0100lispy(~lispy4@84.69.59.93)
2022-01-16 22:08:21 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-16 22:08:21 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-16 22:08:21 +0100wroathe(~wroathe@user/wroathe)
2022-01-16 22:09:45 +0100xlei_(~akans@pool-71-125-19-142.nycmny.fios.verizon.net)
2022-01-16 22:10:47 +0100xlei(~akans@pool-71-125-19-142.nycmny.fios.verizon.net) (Ping timeout: 256 seconds)
2022-01-16 22:12:02 +0100mikoto-chan(~mikoto-ch@213.177.151.239) (Ping timeout: 240 seconds)
2022-01-16 22:13:27 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-16 22:14:35 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 256 seconds)
2022-01-16 22:18:27 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it) (Read error: Connection reset by peer)
2022-01-16 22:24:18 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 22:24:22 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-16 22:25:30 +0100 <energizer> shot in the dark - is there a unicode symbol in math that represents `isInfixOf`?
2022-01-16 22:27:14 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it)
2022-01-16 22:27:15 +0100kaph(~kaph@net-2-47-208-144.cust.vodafonedsl.it) (Remote host closed the connection)
2022-01-16 22:27:22 +0100 <hpc> the closest symbols i can think of all operate on sets
2022-01-16 22:28:55 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2022-01-16 22:28:58 +0100 <d34df00d> energizer: if you're asking that, then probably your readers won't know either, so I'd go with inventing your own for your domain.
2022-01-16 22:30:32 +0100Shiranai(~Shiranai@190.237.13.17) (Quit: Connection closed)
2022-01-16 22:34:08 +0100mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2022-01-16 22:38:08 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-01-16 22:41:59 +0100Kaiepi(~Kaiepi@156.34.47.253) (Quit: Leaving)
2022-01-16 22:42:15 +0100Kaiepi(~Kaiepi@156.34.47.253)
2022-01-16 22:49:53 +0100benin(~benin@183.82.30.17) (Ping timeout: 256 seconds)
2022-01-16 22:50:49 +0100yonedanf
2022-01-16 22:53:06 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-16 22:53:49 +0100justsomeguy(~justsomeg@user/justsomeguy)
2022-01-16 22:55:01 +0100nerdypepper(~nerdypepp@user/nerdypepper) (Ping timeout: 240 seconds)
2022-01-16 22:57:54 +0100nerdypepper(~nerdypepp@user/nerdypepper)
2022-01-16 23:01:55 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2022-01-16 23:03:03 +0100jkaye(~jkaye@2601:281:8300:7530:a42:be20:6ada:7861)
2022-01-16 23:03:26 +0100 <energizer> is there a package somewhere with safe versions of functions like `safeMaximum :: [a] -> Maybe a`
2022-01-16 23:04:36 +0100 <xsperry> safe package, perhaps
2022-01-16 23:04:36 +0100 <ephemient> (∣) = isSubsequenceOf would be *somewhat* understandable, maybe. can't think of one for isInfixOf though
2022-01-16 23:04:59 +0100 <johnw> Can I use cabal to compile .agda files in my project, in order to import compiled Agda modules into my Haskell project?
2022-01-16 23:06:26 +0100 <energizer> xsperry: that's it, thanks
2022-01-16 23:06:34 +0100 <xsperry> np
2022-01-16 23:07:01 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl)
2022-01-16 23:07:37 +0100 <hololeap> energizer: I wonder if you could borrow something from relational algebra: https://en.wikipedia.org/wiki/Relational_algebra
2022-01-16 23:08:15 +0100Sgeo_(~Sgeo@user/sgeo)
2022-01-16 23:08:36 +0100 <energizer> hololeap: i'm not seeing the connection
2022-01-16 23:09:12 +0100 <EvanR> I've been avoiding safeMaximum by putting an item at the head of the list to act as the default
2022-01-16 23:09:29 +0100gehmehgeh(~user@user/gehmehgeh) (Remote host closed the connection)
2022-01-16 23:09:29 +0100xb0o2(~xb0o2@user/xb0o2) (Quit: Client closed)
2022-01-16 23:09:54 +0100hololeapshrugs
2022-01-16 23:10:01 +0100 <energizer> i guess isInfixOf is really a regular expression match query
2022-01-16 23:10:10 +0100gehmehgeh(~user@user/gehmehgeh)
2022-01-16 23:10:12 +0100 <hololeap> isInfixOf seems like it could be related to some kind of join
2022-01-16 23:10:17 +0100shapr(~user@2601:7c0:c37c:46d0:2bce:110:d6ba:469e) (Ping timeout: 240 seconds)
2022-01-16 23:10:38 +0100 <hololeap> I'm not familiar enough with all that to give more detail than that
2022-01-16 23:11:15 +0100Sgeo(~Sgeo@user/sgeo) (Ping timeout: 256 seconds)
2022-01-16 23:12:09 +0100 <geekosaur> johnw, cabal doesn't currently know about Agda. there's been a proposal made for a plugin mechanism which would allow adding support for arbitrary languages (rather than, say, adding wired-in support for Agda or Rust or whatever) but it's only a proposal at present
2022-01-16 23:12:33 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds)
2022-01-16 23:14:15 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-01-16 23:15:35 +0100jkaye(~jkaye@2601:281:8300:7530:a42:be20:6ada:7861) (Remote host closed the connection)
2022-01-16 23:16:16 +0100 <energizer> ephemient: (|) actually seems right for isInfixOf, since "abc" is a product "a" \times "b" \times "c" in the regular-language sense and "bc" 'divides' that product. or am i wrong?
2022-01-16 23:16:47 +0100benin(~benin@106.198.88.241)
2022-01-16 23:16:56 +0100 <energizer> oh yeah i'm wrong
2022-01-16 23:16:58 +0100 <energizer> duh
2022-01-16 23:17:13 +0100 <energizer> cuz "ac" also divides "abc"
2022-01-16 23:19:09 +0100 <energizer> ...or does it
2022-01-16 23:19:24 +0100 <ephemient> also U+007C is special in Haskell, so I wrote U+2223 there
2022-01-16 23:19:42 +0100 <ephemient> which makes it all the more awkward
2022-01-16 23:20:17 +0100gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2022-01-16 23:22:15 +0100coot(~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot)
2022-01-16 23:22:26 +0100 <energizer> https://en.wikipedia.org/wiki/Division_(mathematics)#Left_and_right_division
2022-01-16 23:22:59 +0100Ruit(~textual@c-69-248-83-247.hsd1.nj.comcast.net)
2022-01-16 23:23:20 +0100 <monochrom> This × is non-commutative. abc is not ac × b
2022-01-16 23:23:27 +0100Ruit(~textual@c-69-248-83-247.hsd1.nj.comcast.net) (Client Quit)
2022-01-16 23:23:57 +0100you(~ShmoSeph@c-69-248-83-247.hsd1.nj.comcast.net)
2022-01-16 23:23:58 +0100 <energizer> that applies to the matrix case too, so i dont think that hurts us
2022-01-16 23:24:57 +0100 <sclv> johnw: the above is basically correct. in the meantime, if you want, you can use a custom setup.hs that compiles agda as a preconf hook
2022-01-16 23:24:59 +0100 <energizer> `"abc" / "bc"` is `Just "a"` i think?
2022-01-16 23:25:11 +0100 <monochrom> Yeah.
2022-01-16 23:28:50 +0100random-jellyfish(~random-je@user/random-jellyfish)
2022-01-16 23:32:06 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-01-16 23:32:10 +0100justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.3)
2022-01-16 23:34:50 +0100 <energizer> `"aba" / "a"` makes "ab" or "ba" ?
2022-01-16 23:36:02 +0100merijn(~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
2022-01-16 23:37:00 +0100 <energizer> oh here we go https://en.wikipedia.org/wiki/Quotient_of_a_formal_language
2022-01-16 23:37:01 +0100ensyde(~ensyde@2600:1700:2050:1040:59da:fcd2:abfb:4d1d) (Read error: Connection reset by peer)
2022-01-16 23:38:40 +0100 <Hecate> §3
2022-01-16 23:38:43 +0100 <Hecate> (woops)
2022-01-16 23:38:53 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-16 23:39:42 +0100lispy(~lispy4@84.69.59.93) (Quit: Leaving)
2022-01-16 23:41:13 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-16 23:41:46 +0100 <monochrom> Also https://en.wikipedia.org/wiki/Composition_of_relations#Quotients >:)
2022-01-16 23:42:36 +0100 <energizer> ephemient: actually i think (|) can be correct, if it's defined to mean "right-divides" or to mean "left-divides"
2022-01-16 23:43:16 +0100 <EvanR> the poor disrespected broken pipe symbol, such a missed opportunity to mean "divides"
2022-01-16 23:43:28 +0100 <EvanR> I mean... seriously...
2022-01-16 23:43:47 +0100 <ephemient> but neither left-divides nor right-divides is what you want, is it?
2022-01-16 23:43:51 +0100 <EvanR> ¦
2022-01-16 23:44:18 +0100 <energizer> ephemient: aren't they equivalent and both equal to isInfixOf?
2022-01-16 23:45:56 +0100 <energizer> ...or are they equivalent to isPrefixOf and isSuffixOf
2022-01-16 23:48:13 +0100 <energizer> i think it might be prefix/suffix not infix but i'm not, like, good at this
2022-01-16 23:48:36 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-16 23:49:28 +0100 <ephemient> if you're thinking of (⨉) = (<>) then it's definitely prefix/suffix
2022-01-16 23:53:17 +0100wroathe(~wroathe@user/wroathe)