Logs on 2022-07-08 (liberachat/#haskell)
| 00:01:36 | → | nuc13u5 joins (~nuc13u5@73.48.251.119) |
| 00:02:18 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 00:04:18 | × | mstksg quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 240 seconds) |
| 00:04:47 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 00:06:28 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 00:06:33 | → | mstksg joins (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
| 00:09:02 | → | jjhoo joins (~jahakala@user/jjhoo) |
| 00:09:39 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 00:11:06 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 00:17:36 | × | ix quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.5) |
| 00:17:51 | → | ix joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
| 00:21:19 | × | jjhoo quits (~jahakala@user/jjhoo) (Remote host closed the connection) |
| 00:21:46 | × | pleo quits (~pleo@user/pleo) (Quit: quit) |
| 00:23:30 | × | alp quits (~alp@user/alp) (Ping timeout: 276 seconds) |
| 00:29:51 | → | nate4 joins (~nate@98.45.169.16) |
| 00:31:39 | → | slack7373 joins (~slack1256@186.11.61.110) |
| 00:31:39 | × | slack1256 quits (~slack1256@191.126.99.200) (Read error: Connection reset by peer) |
| 00:34:01 | → | Kaladin joins (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) |
| 00:34:59 | × | gurkenglas quits (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) (Ping timeout: 244 seconds) |
| 00:36:32 | → | sonny joins (~sonny@142.126.78.125) |
| 00:37:07 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
| 00:40:50 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 00:42:13 | × | machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 256 seconds) |
| 00:42:23 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:7d79:d1a4:aca1:4fde) (Remote host closed the connection) |
| 00:44:49 | → | gdown joins (~gavin@h69-11-149-231.kndrid.broadband.dynamic.tds.net) |
| 00:54:04 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 00:54:25 | → | sonny joins (~sonny@142.126.78.125) |
| 00:55:03 | × | nuc13u5 quits (~nuc13u5@73.48.251.119) (Remote host closed the connection) |
| 00:57:21 | → | frost joins (~frost@user/frost) |
| 00:58:44 | × | ulvarrefr quits (~user@188.124.56.153) (Ping timeout: 255 seconds) |
| 01:00:19 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 01:07:23 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:7d79:d1a4:aca1:4fde) |
| 01:08:06 | → | nate4 joins (~nate@98.45.169.16) |
| 01:10:21 | → | vglfr joins (~vglfr@88.155.112.245) |
| 01:10:28 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:16:35 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:17:32 | → | nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) |
| 01:19:37 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 256 seconds) |
| 01:19:51 | × | Kaladin quits (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) (Quit: Leaving) |
| 01:23:33 | × | nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Ping timeout: 244 seconds) |
| 01:29:26 | → | Kaladin joins (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) |
| 01:31:09 | → | eggplant_ joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 01:33:53 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:7d79:d1a4:aca1:4fde) (Ping timeout: 244 seconds) |
| 01:35:38 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 01:35:58 | → | sonny joins (~sonny@142.126.78.125) |
| 01:50:59 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 01:52:16 | → | nate4 joins (~nate@98.45.169.16) |
| 01:57:35 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 256 seconds) |
| 02:03:32 | → | jargon joins (~jargon@184.101.208.36) |
| 02:04:28 | → | nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) |
| 02:05:46 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 02:08:09 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 276 seconds) |
| 02:13:30 | × | Kaladin quits (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) (Quit: Leaving) |
| 02:18:19 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 244 seconds) |
| 02:18:58 | <hololeap> | has anyone put any thought into how to use composed Alternatives? |
| 02:19:56 | × | quarkyalice quits (~alice@user/quarkyalice) (Read error: Connection reset by peer) |
| 02:20:14 | → | quarkyalice joins (~alice@user/quarkyalice) |
| 02:20:49 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 256 seconds) |
| 02:21:57 | <hololeap> | I was trying to think of a way to "abort" something like this so that it would skip g and h: (\f g h -> f <|> g <|> h) :: Alternative f => f a -> f a -> f a -> f a |
| 02:22:57 | <hololeap> | turns out it is pretty simple if you change it to: f (Maybe a) -> f (Maybe a) -> f (Maybe a) -> f (Maybe a) |
| 02:23:30 | <hololeap> | if you want to abort, you just have the Alternative succeed with the value Nothing |
| 02:23:30 | → | jpds1 joins (~jpds@gateway/tor-sasl/jpds) |
| 02:24:19 | <hololeap> | this ends up looking a lot loke: MaybeT f a |
| 02:25:25 | <hololeap> | so I'm wondering if there is a way to express this problem more generally using composed Applicatives, even if there isn't a nice interface for it |
| 02:26:19 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds) |
| 02:29:10 | × | vglfr quits (~vglfr@88.155.112.245) (Ping timeout: 244 seconds) |
| 02:32:22 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 02:32:22 | → | yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) |
| 02:32:43 | → | sonny joins (~sonny@142.126.78.125) |
| 02:33:10 | × | td_ quits (~td@muedsl-82-207-238-170.citykom.de) (Ping timeout: 240 seconds) |
| 02:33:17 | → | vglfr joins (~vglfr@88.155.112.245) |
| 02:33:22 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 02:33:27 | × | winny quits (~weechat@user/winny) (Remote host closed the connection) |
| 02:35:21 | → | td_ joins (~td@94.134.91.254) |
| 02:36:01 | → | winny joins (~weechat@user/winny) |
| 02:36:50 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 02:38:36 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 02:38:56 | → | sonny joins (~sonny@142.126.78.125) |
| 02:39:21 | × | yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 276 seconds) |
| 02:45:14 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 02:45:33 | × | slack7373 quits (~slack1256@186.11.61.110) (Remote host closed the connection) |
| 02:45:35 | → | sonny joins (~sonny@142.126.78.125) |
| 02:49:14 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 02:49:34 | → | sonny joins (~sonny@142.126.78.125) |
| 02:51:12 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 02:51:43 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 02:53:27 | → | yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) |
| 02:54:51 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed) |
| 02:55:36 | × | vglfr quits (~vglfr@88.155.112.245) (Ping timeout: 276 seconds) |
| 03:05:00 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 03:05:12 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 03:07:13 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 03:07:14 | → | Haskelytic joins (~Haskelyti@118.179.211.17) |
| 03:07:24 | × | yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 244 seconds) |
| 03:09:33 | <Haskelytic> | "Alternatively, and more usefully, ((->) e) can be thought of as a context in which a value of type e is available to be consulted in a read-only fashion." from the typeclassopedia doesn't make sense to me. How can a value of type `e` be "available to be consulted" when `e -> a` consumes a provided `e` to produce an `a` ? |
| 03:11:14 | <Haskelytic> | Oh wait, it makes sense if I consider that statement from the perspective of the mapping and not someone applying it |
| 03:12:44 | <monochrom> | Yes, programming is a dialectic class struggle. :) |
| 03:17:14 | × | nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Remote host closed the connection) |
| 03:19:53 | → | nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) |
| 03:24:04 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 03:24:25 | → | sonny joins (~sonny@142.126.78.125) |
| 03:24:27 | × | nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Ping timeout: 244 seconds) |
| 03:26:07 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 03:26:27 | → | sonny joins (~sonny@142.126.78.125) |
| 03:27:41 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 256 seconds) |
| 03:30:15 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 03:31:22 | × | Vajb quits (~Vajb@85-76-102-9-nat.elisa-mobile.fi) (Read error: Connection reset by peer) |
| 03:32:11 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) |
| 03:33:18 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 276 seconds) |
| 03:34:58 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 03:35:19 | → | sonny joins (~sonny@142.126.78.125) |
| 03:36:10 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) (Ping timeout: 240 seconds) |
| 03:36:57 | × | sonny quits (~sonny@142.126.78.125) (Remote host closed the connection) |
| 03:42:01 | × | waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 244 seconds) |
| 03:43:17 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 03:46:09 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 03:47:42 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 244 seconds) |
| 03:47:43 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds) |
| 03:48:05 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds) |
| 03:48:48 | × | gdown quits (~gavin@h69-11-149-231.kndrid.broadband.dynamic.tds.net) (Remote host closed the connection) |
| 03:49:10 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 03:49:46 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 03:59:14 | → | mrmr joins (~mrmr@user/mrmr) |
| 03:59:32 | <yin> | :) |
| 03:59:32 | → | yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) |
| 04:01:09 | <Axman6> | Haskelytic: because that e can be passed to many other functions which also consume that e - thig of e = Config |
| 04:01:13 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 04:01:29 | → | kenran joins (~kenran@200116b82b11f800d1a334670b804eed.dip.versatel-1u1.de) |
| 04:01:54 | <Axman6> | which is exactly what Reader does (which is just a wrapper around e -> a) |
| 04:05:50 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds) |
| 04:08:16 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 04:09:42 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 276 seconds) |
| 04:10:03 | → | nate4 joins (~nate@98.45.169.16) |
| 04:11:28 | → | alp joins (~alp@user/alp) |
| 04:11:34 | → | Vajb joins (~Vajb@85-76-102-9-nat.elisa-mobile.fi) |
| 04:12:30 | × | yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 04:12:30 | × | Vajb quits (~Vajb@85-76-102-9-nat.elisa-mobile.fi) (Read error: Connection reset by peer) |
| 04:12:49 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 04:13:20 | → | Vajb joins (~Vajb@2001:999:58c:b683:1e3e:e86f:8cdc:e10) |
| 04:14:48 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:15:08 | <jackdk> | It is a simple idea expressed in such a baroque way - I remember being so confused by transformer documentation when I was first starting out. |
| 04:15:12 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 04:16:13 | → | notzmv joins (~zmv@user/notzmv) |
| 04:22:58 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 04:23:50 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:25:10 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 04:25:45 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 04:29:13 | × | kenran quits (~kenran@200116b82b11f800d1a334670b804eed.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
| 04:29:37 | × | toluene quits (~toluene@user/toulene) (Read error: Connection reset by peer) |
| 04:30:10 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 04:30:10 | × | winny quits (~weechat@user/winny) (Write error: Connection reset by peer) |
| 04:30:10 | × | jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Read error: Connection reset by peer) |
| 04:30:41 | → | winny joins (~weechat@user/winny) |
| 04:30:47 | → | toluene joins (~toluene@user/toulene) |
| 04:31:09 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:31:20 | → | jpds1 joins (~jpds@gateway/tor-sasl/jpds) |
| 04:42:51 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 276 seconds) |
| 04:44:50 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 240 seconds) |
| 04:45:15 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 04:59:34 | → | mbuf joins (~Shakthi@122.164.9.153) |
| 05:04:24 | → | wenjie joins (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 05:20:09 | → | coot joins (~coot@213.134.190.95) |
| 05:22:30 | × | quarkyalice quits (~alice@user/quarkyalice) (Ping timeout: 240 seconds) |
| 05:23:47 | → | _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl) |
| 05:23:57 | → | quarkyalice joins (~alice@172.77.26.62) |
| 05:23:57 | × | quarkyalice quits (~alice@172.77.26.62) (Changing host) |
| 05:23:57 | → | quarkyalice joins (~alice@user/quarkyalice) |
| 05:25:06 | → | christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) |
| 05:25:30 | → | cyanide3dinner joins (~cyanide4d@110.227.171.252) |
| 05:25:33 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 256 seconds) |
| 05:28:52 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 05:30:00 | → | fockerize joins (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 05:30:39 | × | mbuf quits (~Shakthi@122.164.9.153) (Ping timeout: 256 seconds) |
| 05:40:30 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 05:45:51 | × | _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection) |
| 05:57:14 | × | liz quits (~liz@86.159.158.175) (Quit: Lost terminal) |
| 05:59:22 | → | mbuf joins (~Shakthi@122.164.13.128) |
| 06:07:05 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 06:12:50 | → | yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) |
| 06:16:31 | → | vglfr joins (~vglfr@coupling.penchant.volia.net) |
| 06:16:59 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 06:20:11 | → | dcoutts joins (~duncan@host-92-23-41-52.as13285.net) |
| 06:20:24 | × | shriekingnoise quits (~shrieking@201.212.175.181) (Quit: Quit) |
| 06:25:46 | → | MajorBiscuit joins (~MajorBisc@86-88-79-148.fixed.kpn.net) |
| 06:27:42 | <kronicmage> | anyone know how to make a conduit terminate? |
| 06:27:50 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Ping timeout: 240 seconds) |
| 06:28:08 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 06:28:15 | <kronicmage> | in particular I have a `sourceFile filePath` that I want to have Nothing to await on when the file has all been consumed |
| 06:28:24 | <kronicmage> | right now my `await` just hangs forever |
| 06:33:59 | <jackdk> | looking at the source code of various sinks (like `sinkHandle`) in `conduit` itself, it seems like does in fact await forever, so the source is probably expected to stop `yield`ing when it has no more to produce |
| 06:34:49 | <jackdk> | https://hackage.haskell.org/package/conduit-1.3.4.2/docs/src/Data.Conduit.Combinators.html#sourceFile `sourceFile` will return `()` once it has no more to produce |
| 06:34:50 | <kronicmage> | is there a version of `sourceFile` that does stop yielding then? |
| 06:35:05 | <kronicmage> | hmm i'll take a look |
| 06:35:38 | <jackdk> | the one in conduit seems to do that? |
| 06:36:07 | → | briandaed joins (~briandaed@109.95.143.14.r.toneticgroup.pl) |
| 06:36:11 | <kronicmage> | I see, my problem is elsewhere |
| 06:36:16 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 06:36:19 | <kronicmage> | thank you |
| 06:37:14 | → | gmg joins (~user@user/gehmehgeh) |
| 06:37:42 | <kronicmage> | okay it seems ZipSource does not behave like ZipList as the docs would have me believe |
| 06:39:17 | <kronicmage> | I have `(,) <$> ZipSource finiteStream <*> ZipSource (yieldMany [0..])` to tag the things from `finiteStream` with a counter, but ZipSource awaits indefinitely when one of the conduits is exhausted |
| 06:39:21 | <kronicmage> | is there anyway I can get around this? |
| 06:39:39 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 06:40:21 | × | yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
| 06:41:34 | → | redmp joins (~redmp@mobile-166-171-250-168.mycingular.net) |
| 06:42:00 | × | redmp quits (~redmp@mobile-166-171-250-168.mycingular.net) (Client Quit) |
| 06:45:42 | × | alp quits (~alp@user/alp) (Ping timeout: 276 seconds) |
| 06:46:50 | <jackdk> | I'd try to define a `ConduitT i (i, Int) m r` that does the tagging, instead of doing a zip? I don't normally write streaming stuff |
| 06:47:13 | <jackdk> | Or maybe use https://hackage.haskell.org/package/conduit-1.3.4.2/docs/Data-Conduit-Internal.html#v:zipSources |
| 06:47:58 | <jackdk> | although... the docs for ZipSource say "A combined source will take input yielded from each of its Sources until any of them stop producing output." so I think there's something else going on |
| 06:48:38 | → | qrpnxz joins (~qrpnxz@fsf/member/qrpnxz) |
| 06:48:44 | → | `2jt joins (~jtomas@141.red-88-17-65.dynamicip.rima-tde.net) |
| 06:52:12 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 06:52:51 | × | cyanide3dinner quits (~cyanide4d@110.227.171.252) (Remote host closed the connection) |
| 06:59:25 | × | tcard quits (~tcard@p945242-ipngn9701hodogaya.kanagawa.ocn.ne.jp) (Quit: Leaving) |
| 07:01:26 | × | quarkyalice quits (~alice@user/quarkyalice) (Remote host closed the connection) |
| 07:01:50 | → | quarkyalice joins (~alice@172.77.26.62) |
| 07:01:50 | × | quarkyalice quits (~alice@172.77.26.62) (Changing host) |
| 07:01:50 | → | quarkyalice joins (~alice@user/quarkyalice) |
| 07:02:02 | → | michalz joins (~michalz@185.246.204.72) |
| 07:02:47 | → | gurkenglas joins (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) |
| 07:03:45 | → | res0nat0r0844 joins (~Fletch@dia.whatbox.ca) |
| 07:04:29 | → | tcard joins (~tcard@p945242-ipngn9701hodogaya.kanagawa.ocn.ne.jp) |
| 07:12:50 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 07:13:56 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 07:16:04 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 07:16:27 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 07:17:05 | × | Midjak quits (~Midjak@82.66.147.146) (Read error: Connection reset by peer) |
| 07:24:00 | × | causal quits (~user@50.35.83.177) (Quit: WeeChat 3.5) |
| 07:24:47 | × | sander quits (~sander@user/sander) (Quit: So long! :)) |
| 07:25:07 | → | ccntrq joins (~Thunderbi@2a02:908:1d43:8ae0:90cd:9d46:c4ce:7598) |
| 07:25:36 | → | sander joins (~sander@user/sander) |
| 07:30:50 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 07:32:58 | × | quarkyalice quits (~alice@user/quarkyalice) (Ping timeout: 244 seconds) |
| 07:36:03 | → | chomwitt joins (~chomwitt@2a02:587:dc0d:4a00:e563:a1c3:b513:f7a5) |
| 07:37:22 | × | hexeme quits (~hexeme@user/hexeme) (Quit: co'o ro do) |
| 07:40:54 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 264 seconds) |
| 07:41:15 | → | hexeme joins (~hexeme@user/hexeme) |
| 07:44:12 | → | Pickchea joins (~private@user/pickchea) |
| 07:45:53 | → | cfricke joins (~cfricke@user/cfricke) |
| 07:45:59 | → | Tuplanolla joins (~Tuplanoll@91-159-69-97.elisa-laajakaista.fi) |
| 07:53:34 | → | machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net) |
| 07:53:48 | → | coot joins (~coot@213.134.190.95) |
| 07:56:15 | → | tzh_ joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 07:57:13 | → | lemonsni- joins (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) |
| 07:58:00 | × | chomwitt quits (~chomwitt@2a02:587:dc0d:4a00:e563:a1c3:b513:f7a5) (Ping timeout: 276 seconds) |
| 07:58:00 | × | lemonsnicks quits (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (Quit: ZNC 1.8.2 - https://znc.in) |
| 07:58:00 | × | hexeme quits (~hexeme@user/hexeme) (Quit: co'o ro do) |
| 07:58:00 | × | hueso quits (~root@user/hueso) (Quit: No Ping reply in 180 seconds.) |
| 07:58:17 | × | coot quits (~coot@213.134.190.95) (Ping timeout: 244 seconds) |
| 07:58:51 | → | hueso joins (~root@user/hueso) |
| 07:58:59 | → | ShalokShalom joins (~quassel@2a02:8109:b40:42f4:4f45:338b:3ba8:8f20) |
| 08:00:00 | → | hexeme joins (~hexeme@user/hexeme) |
| 08:00:27 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Ping timeout: 276 seconds) |
| 08:07:20 | × | jpds1 quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds) |
| 08:08:11 | → | jpds1 joins (~jpds@gateway/tor-sasl/jpds) |
| 08:10:30 | → | coot joins (~coot@213.134.190.95) |
| 08:11:09 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 08:11:50 | → | nate4 joins (~nate@98.45.169.16) |
| 08:12:22 | → | CiaoSen joins (~Jura@p200300c9570ffb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 08:13:12 | × | eggplant_ quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Remote host closed the connection) |
| 08:15:21 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 268 seconds) |
| 08:16:22 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 244 seconds) |
| 08:16:22 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 08:17:21 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 08:17:50 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 08:17:58 | × | tzh_ quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 08:18:51 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 08:19:14 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 08:19:14 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 08:19:14 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 08:20:21 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 08:20:50 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 08:20:50 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 08:20:50 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 08:28:16 | → | alp joins (~alp@user/alp) |
| 08:28:25 | → | osukup[m] joins (~osukupmat@2001:470:69fc:105::2:418d) |
| 08:31:27 | → | Surobaki joins (~surobaki@79.77.128.17) |
| 08:31:39 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 08:34:15 | × | cosimone quits (~user@93-44-186-171.ip98.fastwebnet.it) (Ping timeout: 276 seconds) |
| 08:38:45 | → | yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) |
| 08:39:19 | → | wolfshappen_ joins (~waff@irc.furworks.de) |
| 08:39:37 | × | perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.5) |
| 08:41:10 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 244 seconds) |
| 08:41:36 | → | perrierjouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 08:41:55 | × | wolfshappen quits (~waff@irc.furworks.de) (Ping timeout: 260 seconds) |
| 08:44:44 | → | PiDelport joins (uid25146@id-25146.lymington.irccloud.com) |
| 08:47:15 | × | Surobaki quits (~surobaki@79.77.128.17) (Ping timeout: 276 seconds) |
| 08:47:58 | × | yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 08:49:49 | × | sus quits (zero@user/zeromomentum) (Quit: the lounge - https://webirc.envs.net) |
| 08:50:21 | × | paddymahoney quits (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) (Ping timeout: 246 seconds) |
| 08:51:48 | → | sus joins (zero@user/zeromomentum) |
| 08:54:13 | → | kuribas joins (~user@ptr-17d51emh493yj3hltjo.18120a2.ip6.access.telenet.be) |
| 08:54:58 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 08:55:21 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 08:55:45 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 08:55:45 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 08:55:45 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 08:56:51 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 08:57:14 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 08:57:14 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 08:57:14 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 08:58:16 | → | coot joins (~coot@213.134.190.95) |
| 08:58:21 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 08:58:45 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 08:58:45 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 08:58:45 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 08:59:51 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 09:00:13 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 09:00:13 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 09:00:13 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 09:02:47 | → | cosimone joins (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81) |
| 09:07:18 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 09:09:26 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 09:09:45 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 09:09:45 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 09:09:45 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 09:10:51 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 09:11:14 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 09:11:14 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 09:11:14 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 09:13:35 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 09:13:52 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 09:17:50 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 240 seconds) |
| 09:19:10 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 240 seconds) |
| 09:19:35 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 09:25:10 | × | jargon quits (~jargon@184.101.208.36) (Ping timeout: 240 seconds) |
| 09:25:36 | → | jargon joins (~jargon@184.101.188.251) |
| 09:26:28 | → | bilegeek joins (~bilegeek@101.sub-174-209-38.myvzw.com) |
| 09:27:40 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 244 seconds) |
| 09:29:39 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 09:31:04 | × | alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer) |
| 09:31:10 | → | alexhandy2 joins (~trace@user/trace) |
| 09:34:18 | × | raym quits (~raym@user/raym) (Ping timeout: 264 seconds) |
| 09:37:36 | × | fockerize quits (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 276 seconds) |
| 09:38:26 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 09:40:51 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 09:41:15 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 09:41:15 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 09:41:15 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 09:43:19 | <kuribas> | is it just me, or is Generics way, way harder then it should be? |
| 09:45:12 | × | bilegeek quits (~bilegeek@101.sub-174-209-38.myvzw.com) (Quit: Leaving) |
| 09:48:22 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 09:49:49 | × | qhong quits (~qhong@rescomp-21-400677.stanford.edu) (Remote host closed the connection) |
| 09:59:00 | <dknite> | kuribas: Probably just you, but you'll get over it, don't worry |
| 09:59:14 | <kuribas> | I doubt it |
| 09:59:32 | <kuribas> | like, why is there this extra type variable which complicates everything. |
| 09:59:47 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 10:01:46 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 244 seconds) |
| 10:02:32 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection) |
| 10:02:46 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 10:02:48 | × | frost quits (~frost@user/frost) (Ping timeout: 252 seconds) |
| 10:05:23 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 10:06:25 | <kuribas> | And balancing the :*: also complicates things. |
| 10:08:10 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 10:09:27 | → | fweht joins (uid404746@id-404746.lymington.irccloud.com) |
| 10:09:30 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 244 seconds) |
| 10:09:33 | × | cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.5) |
| 10:12:08 | → | Surobaki joins (~surobaki@137.44.222.80) |
| 10:12:17 | → | frost joins (~frost@user/frost) |
| 10:13:39 | → | kjak joins (~kjak@pool-108-31-68-111.washdc.fios.verizon.net) |
| 10:13:42 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 276 seconds) |
| 10:13:55 | × | Surobaki quits (~surobaki@137.44.222.80) (Changing host) |
| 10:13:55 | → | Surobaki joins (~surobaki@user/surobaki) |
| 10:13:59 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
| 10:15:06 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 10:15:37 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed) |
| 10:17:27 | <kuribas> | How do I make an existential function again? |
| 10:17:51 | <kuribas> | for example: (forall a. Show a => a) takes any `a` which has a Show instance. |
| 10:18:06 | <kuribas> | However I want (exists a. Show a => a) |
| 10:18:10 | × | kjak quits (~kjak@pool-108-31-68-111.washdc.fios.verizon.net) (Ping timeout: 240 seconds) |
| 10:18:23 | <kuribas> | a function that has some type which has a show instance. |
| 10:19:59 | <kuribas> | oh never mind, I can just remove the forall. |
| 10:23:18 | <jackdk> | kuribas: generics took me a while. this talk helped me a lot: https://www.youtube.com/watch?v=yiT3fAA-BDo |
| 10:23:45 | <kuribas> | If I write (forall a. y), it means y is independent of a, right? |
| 10:23:49 | <kuribas> | Or can y contain a? |
| 10:24:59 | <kuribas> | jackdk: I *do* understand generics. I just find it hard to use. |
| 10:25:08 | → | __monty__ joins (~toonn@user/toonn) |
| 10:26:03 | → | _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl) |
| 10:26:31 | osukup[m] | is now known as mimi1vx[m] |
| 10:26:38 | × | frost quits (~frost@user/frost) (Ping timeout: 252 seconds) |
| 10:26:56 | → | kjak joins (~kjak@pool-108-31-68-111.washdc.fios.verizon.net) |
| 10:28:05 | <kuribas> | I want to write a polymorphic function parameterised over `a`, like `(Foo a, Bar a) -> Baz a` |
| 10:28:33 | <kuribas> | or `(Foo a, Bar a, Fuga a) -> Baz a` |
| 10:29:10 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds) |
| 10:29:14 | <kuribas> | However ghc's type system seems not good enough to express that the tuple is a function of `a`. |
| 10:29:39 | <kuribas> | this function should be universally quantified. |
| 10:29:44 | <kuribas> | (forall a. ...) |
| 10:30:01 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 10:30:06 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 10:30:43 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Client Quit) |
| 10:31:03 | × | alexhandy2 quits (~trace@user/trace) (Read error: Connection reset by peer) |
| 10:31:10 | → | alexhandy joins (~trace@user/trace) |
| 10:32:33 | × | alp quits (~alp@user/alp) (Ping timeout: 276 seconds) |
| 10:33:47 | <Lears> | Honestly I'm not sure exactly what you're trying to do. But maybe you want functor product? |
| 10:34:31 | <kuribas> | I could use a HList, or just (:*:), but tuples seem more ergonomic. |
| 10:35:10 | <__monty__> | kuribas: Isn't an explicit forall enough? |
| 10:35:46 | <kuribas> | if I write (forall a. f a -> i a), ghc cannot infer the f. |
| 10:36:05 | × | dcoutts quits (~duncan@host-92-23-41-52.as13285.net) (Ping timeout: 256 seconds) |
| 10:36:25 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 10:36:38 | → | frost joins (~frost@user/frost) |
| 10:37:03 | <__monty__> | Can't you use it multiple times? `forall f i. (forall a. f a -> i a)` |
| 10:38:37 | <kuribas> | the problem is inferring the `f`. |
| 10:38:54 | <kuribas> | WHat is `f` for (forall a. (Foo a, Bar a)) ? |
| 10:39:42 | × | Surobaki quits (~surobaki@user/surobaki) (Quit: Leaving) |
| 10:40:32 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 10:41:05 | → | raym joins (~raym@user/raym) |
| 10:41:26 | <kuribas> | Seems my API is simply not possible, and I'd need a hetergenous list. |
| 10:41:52 | → | jjhoo joins (~jahakala@user/jjhoo) |
| 10:42:18 | × | CiaoSen quits (~Jura@p200300c9570ffb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
| 10:44:28 | → | califax_ joins (~califax@user/califx) |
| 10:45:12 | × | califax quits (~califax@user/califx) (Ping timeout: 268 seconds) |
| 10:45:43 | califax_ | is now known as califax |
| 10:51:03 | → | chomwitt joins (~chomwitt@2a02:587:dc0d:4a00:bd6:dafd:ce58:5eb6) |
| 10:52:01 | <tomsmeding> | kuribas: \a -> (Foo a, Bar a) is unfortunately not expressible in a type in GHC |
| 10:52:28 | <tomsmeding> | A type-level lambda needs a guarding type constructor, i.e. a newtype |
| 10:52:34 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 10:52:43 | → | ccapndave joins (~ccapndave@xcpe-194-230-18-110.cgn.res.adslplus.ch) |
| 10:53:01 | <tomsmeding> | So yeah, in today's haskell, you either need :*: / HList (mostly the same solution in this respect) or a newtypr |
| 10:53:35 | <tomsmeding> | I point out the existence of Data.Functor.Product as a slightly more canonical, albeit more verbose, version of :*: |
| 10:55:10 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 10:55:53 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 10:57:16 | <jackdk> | I do wish those two were unified |
| 10:57:30 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 272 seconds) |
| 10:58:00 | <ccapndave> | Hi everyone - I wrote a little Haskell program to parse bank account statements a while ago. Since then I have got an M1 Mac and I'm trying to run it today and I get an error saying: No setup information found for ghc-8.8.4 on your platform. This probably means a GHC bindist has not yet been added for OS key 'macosx-aarch64'. Supported versions: ghc-8.10.5, ghc-8.10.6, ghc-8.10.7, ghc-9.0.2, ghc-9.2.1, ghc-9.2.2, |
| 10:58:01 | <kuribas> | hmm, maybe I found a way... |
| 10:58:01 | <ccapndave> | ghc-9.2.3 |
| 10:58:12 | <ccapndave> | I installed using `ghcup`. Any idea what I should do to fix this? |
| 10:59:52 | <raehik> | ccapndave: I think native M1 support is only available in the newer GHC versions |
| 10:59:54 | <ccapndave> | Ah, I just did `stack config set resolver ghc-8.10.7` and that looked like it helps |
| 11:00:09 | <raehik> | ah, so you had the new one installed but stack was asking for an older one |
| 11:00:13 | <ccapndave> | I guess so |
| 11:00:33 | <ccapndave> | I haven't touched anything Haskell-y (sadly) for about 9 months so I forgot how it works |
| 11:01:01 | → | coot joins (~coot@213.134.190.95) |
| 11:01:09 | <ccapndave> | The day I find someone willing to pay me to work with Haskell will be the day I chuck out every other language |
| 11:01:16 | <raehik> | If you have bugs or performance issues, consider using 9.0 or 9.2. But they might need a bit more fiddling with Stack due to how they package things |
| 11:01:31 | <ccapndave> | Its a very simple program so hopefully it won't require any tweaking |
| 11:01:59 | <ccapndave> | https://github.com/ccapndave/postfinance-freeagent |
| 11:02:26 | → | nate4 joins (~nate@98.45.169.16) |
| 11:03:27 | <kuribas> | Why is this language so amazing and frustrating at the same time? |
| 11:04:17 | × | jonathanx quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 244 seconds) |
| 11:07:15 | <kuribas> | When it comes to parsing, manipulation complex data, I haven't found anything nearly as nice. |
| 11:07:20 | → | sayola joins (~vekto@dslb-088-078-152-210.088.078.pools.vodafone-ip.de) |
| 11:07:39 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 11:07:52 | <kuribas> | Also creating nice DSLs. Lisps take pride in that, but lisp DSLs can be hard to understand. |
| 11:08:48 | <sm> | ccapndave: I recommend 9.2, it supports the M1 and builds 3x quicker |
| 11:09:10 | <ccapndave> | Alright |
| 11:09:21 | <ccapndave> | `stack` is throwing all kinds of dependency errors anyway |
| 11:09:36 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 276 seconds) |
| 11:09:41 | <ccapndave> | ha - Stack has not been tested with GHC versions above 9.0, and using 9.2, this may fail |
| 11:09:46 | <ccapndave> | This is the first message I got |
| 11:09:59 | <sm> | that's a standard stack message, ignore it |
| 11:10:04 | <ccapndave> | Ok |
| 11:10:38 | <ccapndave> | I can see that an afternoon that was supposed to be spent doing taxes is going to turn into an afternoon playing with Haskell |
| 11:10:47 | <sm> | lots of errors are caused by mixed intel and arm binaries installed by different tools, the safest way is to expunge all of them now then install all tools with an up to date ghcup |
| 11:10:52 | <jackdk> | Death, taxes, and type errors. |
| 11:11:02 | <sm> | and then tell stack to use ghcup's ghcs |
| 11:11:22 | <ccapndave> | Ah - I just did `stack config set resolver ghc-9.2` and then `stack install` |
| 11:11:28 | <jackdk> | I personally would not use stack, because it seems to bring lots of pain and another layer to think about, but you can probably make it work |
| 11:11:32 | <ccapndave> | I should install it from `ghc` first eh |
| 11:11:59 | <sm> | you can see which kind of binaries you have in Activity Monitor |
| 11:12:26 | <ccapndave> | Activity Monitor like the Mac `top` thing? |
| 11:12:51 | → | jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 11:12:55 | <sm> | yes |
| 11:13:40 | <sm> | https://haskell-links.org/?q=stack-system-ghc is how to make stack use ghcup |
| 11:14:03 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
| 11:14:37 | <kuribas> | tomsmeding: I think I found a way... It does require wrapping the tuple in an existential. |
| 11:15:28 | <ccapndave> | sm: Thanks very much. Now I shall fight with versions until it installs |
| 11:16:36 | <tomsmeding> | kuribas: how does that look? |
| 11:17:00 | <kuribas> | tomsmeding: data PartialTuple x a = forall t f y . ( GFTranspose x t f, Coercible (Rep y ()) (Tupled f a)) => PT y |
| 11:17:00 | <kuribas> | |
| 11:17:07 | <ccapndave> | I had to copy-paste a lot of nonsense into `stack.yaml`'s `extra-deps` but it seems to be compiling :+1: |
| 11:17:42 | <tomsmeding> | kuribas: ._. |
| 11:17:50 | <sm> | that's usually a sign of using the wrong resolver |
| 11:19:20 | <kuribas> | tomsmeding: or I could require the user to use a function, instead of wrapping an existential. |
| 11:20:11 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 11:20:13 | <ccapndave> | sm: Feel free to take a peek - https://github.com/ccapndave/postfinance-freeagent |
| 11:20:28 | <ccapndave> | It does compile like this however, which is a step in the right direction |
| 11:20:59 | <sm> | nifty! I'm interested in finance tools too. Tried FreeAgent a while back |
| 11:21:23 | <kuribas> | tomsmeding: like: fzipTupleWith (partially $ \(Identity x, Const y) -> ...) (fields, names) |
| 11:21:30 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 11:21:41 | <ccapndave> | sm: Its great, I've been using it almost since the beginning |
| 11:21:47 | <sm> | 9.2.3 is in stackage now, so you could just use https://www.stackage.org/nightly-2022-07-07 |
| 11:21:48 | <kuribas> | tomsmeding: vs fzipTupleWith (\(PT (Identity x, Const y)) -> ...) (fields, names) |
| 11:22:04 | <tomsmeding> | kuribas: that's cool |
| 11:22:21 | <tomsmeding> | Is that Rep from Representable? |
| 11:22:27 | <kuribas> | tomsmeding: for generics |
| 11:22:32 | <tomsmeding> | Ooh |
| 11:22:32 | <ccapndave> | sm: Assume I know little about package management in Haskell :) What does "use" mean in this context? |
| 11:24:35 | <kuribas> | tomsmeding: not typechecked yet :) |
| 11:24:44 | <tomsmeding> | Heh |
| 11:24:45 | <sm> | ccapndave: well, usually in stack.yaml we'd see `resolver: nightly-2022-07-07` or so, causing all the packages in https://www.stackage.org/nightly-2022-07-07 to be available. Your resolver setting is unfamiliar to me, it seems to specify just the compiler version and no snapshot ? As a result you have to list all the deps manually |
| 11:25:51 | <ccapndave> | yay |
| 11:26:02 | <ccapndave> | That did the trick |
| 11:26:04 | <ccapndave> | Thanks |
| 11:26:16 | <sm> | np |
| 11:27:30 | → | alp joins (~alp@user/alp) |
| 11:30:38 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Ping timeout: 244 seconds) |
| 11:31:03 | × | alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer) |
| 11:31:09 | → | alexhandy2 joins (~trace@user/trace) |
| 11:32:41 | × | sayola quits (~vekto@dslb-088-078-152-210.088.078.pools.vodafone-ip.de) (Quit: Leaving.) |
| 11:38:59 | → | pleo joins (~pleo@user/pleo) |
| 11:39:21 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 11:39:45 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 11:39:50 | × | califax quits (~califax@user/califx) (Quit: ZNC 1.8.2 - https://znc.in) |
| 11:39:53 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 11:39:57 | → | califax_ joins (~califax@user/califx) |
| 11:40:50 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 11:41:07 | califax_ | is now known as califax |
| 11:43:50 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 240 seconds) |
| 11:51:51 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 276 seconds) |
| 11:53:56 | × | gurkenglas quits (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) (Ping timeout: 255 seconds) |
| 11:56:34 | → | Guest30 joins (~Guest30@80.92.68.22) |
| 11:57:11 | × | ccntrq quits (~Thunderbi@2a02:908:1d43:8ae0:90cd:9d46:c4ce:7598) (Remote host closed the connection) |
| 11:59:45 | → | ccntrq joins (~Thunderbi@2a02:908:1d43:8ae0:8f94:7da8:255b:75f5) |
| 12:00:09 | × | Guest30 quits (~Guest30@80.92.68.22) (Client Quit) |
| 12:01:36 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 276 seconds) |
| 12:07:29 | → | sayola joins (~sayola@dslb-088-078-152-210.088.078.pools.vodafone-ip.de) |
| 12:08:04 | × | ShalokShalom quits (~quassel@2a02:8109:b40:42f4:4f45:338b:3ba8:8f20) (Remote host closed the connection) |
| 12:08:49 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 12:09:20 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 12:10:46 | × | frost quits (~frost@user/frost) (Ping timeout: 252 seconds) |
| 12:10:56 | × | cheater quits (~Username@user/cheater) (Read error: Connection reset by peer) |
| 12:12:28 | → | ShalokShalom joins (~quassel@2a02:8109:b40:42f4:4f45:338b:3ba8:8f20) |
| 12:12:28 | × | ShalokShalom quits (~quassel@2a02:8109:b40:42f4:4f45:338b:3ba8:8f20) (Client Quit) |
| 12:14:23 | → | cheater joins (~Username@user/cheater) |
| 12:19:08 | × | fweht quits (uid404746@id-404746.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 12:19:26 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 12:19:43 | → | quarkyalice_ joins (~alice@172.79.210.234) |
| 12:19:43 | × | quarkyalice_ quits (~alice@172.79.210.234) (Changing host) |
| 12:19:43 | → | quarkyalice_ joins (~alice@user/quarkyalice/x-8092822) |
| 12:20:53 | → | adrazalan joins (~adrazalan@42.191.189.65) |
| 12:22:04 | → | yaroot_ joins (~yaroot@166.104.13.160.dy.iij4u.or.jp) |
| 12:22:48 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 12:23:38 | × | yaroot quits (~yaroot@2409:12:ac0:2300:680e:dbff:fe1e:4953) (Ping timeout: 240 seconds) |
| 12:23:38 | yaroot_ | is now known as yaroot |
| 12:25:27 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 12:25:39 | × | pleo quits (~pleo@user/pleo) (Ping timeout: 276 seconds) |
| 12:25:58 | → | Pickchea joins (~private@user/pickchea) |
| 12:26:41 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 12:27:15 | → | pleo joins (~pleo@user/pleo) |
| 12:27:47 | × | pleo quits (~pleo@user/pleo) (Client Quit) |
| 12:28:06 | → | pleo joins (~pleo@user/pleo) |
| 12:31:04 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 244 seconds) |
| 12:32:57 | → | fockerize joins (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 12:33:36 | → | john joins (~john@115.98.233.159) |
| 12:33:49 | <john> | Hi |
| 12:34:01 | <john> | I am solving haskell from first principles |
| 12:34:35 | <john> | task write a function which takes a string "curry is awesome" and returns "awesome is curry" |
| 12:35:15 | <kuribas> | :t words |
| 12:35:17 | <lambdabot> | String -> [String] |
| 12:35:22 | <kuribas> | :t unwords |
| 12:35:24 | <lambdabot> | [String] -> String |
| 12:35:37 | <john> | my answer is myReverse x = drop 9 x ++ " " ++ take 4 (drop 5 x) ++ " " ++ take 5 x |
| 12:36:02 | <john> | can my answer be re written using $ sign ? |
| 12:36:09 | Clint | squints. |
| 12:36:30 | <kuribas> | john: did you just hardcode the word lengths? :-O |
| 12:36:43 | <john> | @kuribas |
| 12:36:43 | <lambdabot> | Unknown command, try @list |
| 12:37:05 | <john> | The question asks to make a function only for that string "curry is awesome" |
| 12:37:15 | <john> | its very early in the book |
| 12:37:19 | <john> | chap 3 |
| 12:37:55 | <kuribas> | :t \s -> case s of "curry is awesome" -> "awesome is curry"; _ -> "" |
| 12:37:56 | <lambdabot> | [Char] -> [Char] |
| 12:38:14 | <dknite> | john: That doesn't mean you shouldn't think generally |
| 12:38:39 | <dknite> | Think about the steps: break the string into words |
| 12:38:40 | <kuribas> | dknite: maybe it does? The text should clarify what needs to be done. |
| 12:39:01 | <dknite> | Then reverse the words |
| 12:39:08 | <john> | while my answer works, if i use $ sign like this myReverse x = drop 9 x ++ " " take 4 $ drop 5 x ++" "++ take 5 x |
| 12:39:16 | <dknite> | Finally join them again |
| 12:39:19 | <john> | it gives an error.. why |
| 12:39:27 | <john> | I dont want to use brackets |
| 12:39:45 | <dknite> | john: that's not always feasible |
| 12:40:47 | <john> | @dknite.. the book says $ can be used instead of brackets ?? |
| 12:40:47 | <lambdabot> | Unknown command, try @list |
| 12:41:08 | <john> | the error i get is here. https://pastebin.com/SPxFu64Z |
| 12:41:56 | <dknite> | kuribas: It is not a textbook or homework, so exercises don't have to razor-accurately specified |
| 12:42:03 | <Clint> | your first problem is that you got rid of a ++ |
| 12:42:10 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 240 seconds) |
| 12:42:33 | <int-e> | you're missing a ++, and ++ binds stronger than $ does |
| 12:43:02 | × | ccapndave quits (~ccapndave@xcpe-194-230-18-110.cgn.res.adslplus.ch) (Read error: Connection reset by peer) |
| 12:43:24 | <int-e> | > take 4 $ "ghi" ++ " " ++ "abcdef" |
| 12:43:26 | <lambdabot> | "ghi " |
| 12:45:25 | <john> | @intt-e.. can you elaborate on stronger ? .. |
| 12:45:25 | <lambdabot> | Unknown command, try @list |
| 12:45:56 | × | qrpnxz quits (~qrpnxz@fsf/member/qrpnxz) (Quit: WeeChat 3.4) |
| 12:46:35 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 244 seconds) |
| 12:46:35 | <john> | are there some rules as to when the $ can be used ?? |
| 12:47:50 | × | cosimone quits (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81) (Ping timeout: 240 seconds) |
| 12:48:07 | <TMA> | john: $ is a way to avoid parentheses |
| 12:48:07 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 256 seconds) |
| 12:48:25 | → | jgeerds joins (~jgeerds@55d437cf.access.ecotel.net) |
| 12:48:50 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 12:51:20 | <TMA> | john: a b c is a shorthand for (((a) b) c) ; a $ b c is a shorthand for ((a) ((b) c)) or a (b c) |
| 12:51:43 | <kuribas> | dknite: it should at least say something like "reverse the words". Otherwise his solution is as good as any. |
| 12:52:04 | × | pavonia quits (~user@user/siracusa) (Quit: k-lined (proving Goldbach's conjecture is off-topic on this network)) |
| 12:52:28 | <dknite> | kuribas: Oh it's a correct solution alright |
| 12:52:45 | → | Haskelytic joins (~Haskelyti@118.179.211.17) |
| 12:52:50 | <kuribas> | dknite: though it would get minus points for complexity :) |
| 12:53:16 | <john> | is there an order in which $ sign is evaluated? why am i getting the error ? |
| 12:53:49 | <int-e> | you have a (" " take 4) subexpression that will never be correctly typed, as it says on line 19. |
| 12:55:23 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 12:55:25 | <int-e> | once you fix that you'll run into the fact that ++ binds more strongly than $ |
| 12:56:14 | <john> | int-e : ya i fixed that |
| 12:56:15 | <[itchyjunk]> | $++$ |
| 12:56:18 | <john> | still got this https://pastebin.com/WPh8sA2C |
| 12:56:29 | <[itchyjunk]> | oops wrong channel |
| 12:57:00 | <john> | int-e are you saying that in this particular case i will not be able to use $ ?? |
| 12:57:06 | <int-e> | john: well, as I said, ++ binds more strongly than $, so `take 4` becomes an argument of ++ as it says on line 20 |
| 12:57:25 | <int-e> | john: not to save parentheses, nope |
| 12:57:53 | <john> | int e : thanks.. I guess i need to understand rules of using $ a bit more.. |
| 12:57:55 | <john> | thanks a lot |
| 12:58:12 | <int-e> | Which is fine, parentheses are good. Personally I mostly use $ in places where it's never wrong... like println $ ...whatever... or pure $ ...whatever... |
| 12:58:39 | <john> | int-e : ok |
| 12:58:44 | <int-e> | so mostly a select few functions that take a single argument |
| 12:59:00 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 12:59:08 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 12:59:36 | → | cosimone joins (~user@93-44-186-171.ip98.fastwebnet.it) |
| 12:59:37 | → | coot joins (~coot@213.134.190.95) |
| 13:00:03 | <int-e> | btw, I also think it's worth your time to actually read error messages... they often provide good hints as to what it's wrong, but you'll need practice to decipher them |
| 13:00:12 | <int-e> | it's->is |
| 13:00:19 | × | Techcable quits (~Techcable@user/Techcable) (Remote host closed the connection) |
| 13:00:29 | <john> | int-e: i was actually going over the same coupled with your interpretation.. |
| 13:00:35 | <john> | :D |
| 13:02:27 | → | Techcable joins (~Techcable@user/Techcable) |
| 13:02:41 | <john> | int-e : The book asks readers to focus on the first few lines of the error.. which in my case talks about type mismatch.. https://pastebin.com/WPh8sA2C any reason you focussed on the second part ? |
| 13:04:18 | <int-e> | Well, the second part breaks down the error location in terms of subexpressions. In this case, that's more useful than the first part because one of the subexpressions doesn't make sense even if you don't think in terms of types |
| 13:04:46 | <int-e> | basically, if you're confused about precedences, the second part will help you more than the first |
| 13:05:09 | <int-e> | oh... also... those are two errors |
| 13:05:10 | <int-e> | hmm |
| 13:05:22 | <int-e> | but the second one is easier to understand? |
| 13:05:32 | <john> | int-e: understood.. but how did you know where to focus? or is it that out of practice ?? |
| 13:05:56 | <int-e> | It's kind of cheating... I knew what was wrong before I saw the error. |
| 13:06:30 | <john> | oh.. ok.. so its just practice.. ..having a tough time with haskell in general..:D |
| 13:06:33 | <john> | thanks |
| 13:07:00 | × | cosimone quits (~user@93-44-186-171.ip98.fastwebnet.it) (Remote host closed the connection) |
| 13:11:12 | × | mncheckm quits (~mncheck@193.224.205.254) (Quit: Leaving) |
| 13:12:12 | → | cosimone joins (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81) |
| 13:13:43 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 13:17:07 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 13:17:50 | × | jgeerds quits (~jgeerds@55d437cf.access.ecotel.net) (Ping timeout: 240 seconds) |
| 13:18:05 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 255 seconds) |
| 13:18:32 | → | amonowy joins (~amonowy@83.6.20.198.ipv4.supernova.orange.pl) |
| 13:19:50 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 13:20:41 | × | alp quits (~alp@user/alp) (Ping timeout: 244 seconds) |
| 13:21:55 | <amonowy> | Hi! I just finished my first Haskell project and I'm looking for someone to review it (for money). Its terminal app with Brick that is simple interface to Trello (some todo app). It is 1700 lines of code. |
| 13:22:30 | <fockerize> | how to pass args to cabal run ? |
| 13:22:50 | <fockerize> | cabal run -- arg1 doesn't seem to work |
| 13:23:13 | <maerwald[m]> | fockerize: cabal run <target> -- [arg for target..] |
| 13:23:31 | <maerwald[m]> | Ok, my client swallowed it |
| 13:23:45 | <maerwald[m]> | cabal run target -- args for target |
| 13:24:05 | <fockerize> | got it |
| 13:27:16 | → | Pickchea joins (~private@user/pickchea) |
| 13:28:26 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 244 seconds) |
| 13:30:53 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 13:31:05 | × | alexhandy2 quits (~trace@user/trace) (Read error: Connection reset by peer) |
| 13:31:16 | → | alexhandy joins (~trace@user/trace) |
| 13:31:58 | × | fockerize quits (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds) |
| 13:32:43 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 13:33:49 | → | alp joins (~alp@user/alp) |
| 13:33:49 | × | gentauro quits (~gentauro@user/gentauro) (Read error: Connection reset by peer) |
| 13:35:56 | × | phma quits (~phma@2001:5b0:2172:b528:f34b:433f:7c06:fc5b) (Read error: Connection reset by peer) |
| 13:36:48 | → | phma joins (phma@2001:5b0:215a:f018:4fce:809b:f264:f166) |
| 13:37:13 | × | john quits (~john@115.98.233.159) (Quit: Leaving) |
| 13:38:19 | → | quarkyalice joins (~alice@172.79.210.234) |
| 13:38:19 | × | quarkyalice quits (~alice@172.79.210.234) (Changing host) |
| 13:38:19 | → | quarkyalice joins (~alice@user/quarkyalice) |
| 13:39:53 | → | gentauro joins (~gentauro@user/gentauro) |
| 13:41:01 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 13:41:10 | × | pleo quits (~pleo@user/pleo) (Ping timeout: 240 seconds) |
| 13:43:26 | × | quarkyalice quits (~alice@user/quarkyalice) (Remote host closed the connection) |
| 13:44:50 | → | quarkyalice joins (~alice@user/quarkyalice) |
| 13:45:38 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 13:46:00 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 244 seconds) |
| 13:49:14 | × | sayola quits (~sayola@dslb-088-078-152-210.088.078.pools.vodafone-ip.de) (Quit: Leaving.) |
| 13:49:38 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 240 seconds) |
| 13:49:52 | → | sayola joins (~sayola@dslb-088-078-152-210.088.078.pools.vodafone-ip.de) |
| 13:54:25 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds) |
| 13:55:48 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 13:56:06 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 14:02:48 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 14:03:23 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 14:05:48 | → | pleo joins (~pleo@user/pleo) |
| 14:05:50 | × | FragByte quits (~christian@user/fragbyte) (Quit: Quit) |
| 14:06:06 | → | duckie joins (~duckie@user/duckie) |
| 14:07:48 | → | FragByte joins (~christian@user/fragbyte) |
| 14:09:22 | <kuribas> | tomsmeding: I replaced the generics with a custom hlist, and everything suddenly became much simpler :) |
| 14:09:38 | <kuribas> | tomsmeding: and type inference improved as well! (due to the custom hlist). |
| 14:11:42 | <kuribas> | tomsmeding: it's a shame I cannot overload list syntax like in idris. |
| 14:12:24 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 14:12:33 | <kuribas> | eh, I think I found a weird bug. |
| 14:12:50 | <kuribas> | this fails: zipShow x = fzipManyWith (\(Identity y :> Const t :> _ :> End) -> Const $ t <> Text.pack (show y)) (x :~> flabels :~> fdicts @Show :~> End) |
| 14:13:04 | <kuribas> | But this works: zipShow x = fzipManyWith (\(Identity y :> Const t :> Dict :> End) -> Const $ t <> Text.pack (show y)) (x :~> flabels :~> fdicts @Show :~> End) |
| 14:13:25 | <kuribas> | The only difference is that I put an explicit `Dict`, even though it isn't used. |
| 14:13:42 | <kuribas> | However, without it, ghc doesn't seem to be able to find the Show dictionary from the context. |
| 14:14:12 | <PiDelport> | kuribas: Regarding overloading list syntax, there's the OverloadedLists extension? |
| 14:14:21 | <geekosaur> | it's got limitations |
| 14:14:28 | <dmj`> | amonowy: I'll check it out :P |
| 14:15:13 | <geekosaur> | heterogeneous lists still aren't possible with OverloadedLists. I think they're not even possible with RebindableSyntax |
| 14:15:16 | <kuribas> | PiDelport: that still goes via a monomorphic list. |
| 14:15:30 | <kuribas> | where in idris it is purely syntactic. |
| 14:15:53 | <kuribas> | [a, b, c] gets desugared to a :: b :: c :: [] |
| 14:16:00 | <Lears> | kuribas: If you need the constraint in scope, you need to match to expose it. |
| 14:16:02 | <kuribas> | and (::) and [] can be overloaded. |
| 14:16:08 | <kuribas> | Lears: right. |
| 14:16:51 | → | Kevin578 joins (~Kevin578@pool-173-76-179-30.bstnma.fios.verizon.net) |
| 14:19:30 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 14:22:20 | × | ccntrq quits (~Thunderbi@2a02:908:1d43:8ae0:8f94:7da8:255b:75f5) (Remote host closed the connection) |
| 14:28:27 | → | jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 14:30:30 | × | jonathanx quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 240 seconds) |
| 14:32:29 | <tomsmeding> | kuribas: the Dict pattern match doesn't seem to bind any fields, but it does bind one: the Show dictionary |
| 14:32:45 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 14:33:01 | <tomsmeding> | Without the explicit match, haskell semantics forces the argument to be lazy, which prevents ghc from projecting out the dictionary |
| 14:33:18 | <kuribas> | tomsmeding: right. That makes sense. |
| 14:33:23 | <tomsmeding> | This is, I believe, why evidence-producing matches like these need to be strict |
| 14:33:45 | <tomsmeding> | Just inference (heh) from a user though |
| 14:33:50 | → | heartburn joins (~gass@2a00:d880:3:1::b1e4:b241) |
| 14:34:03 | → | nate4 joins (~nate@98.45.169.16) |
| 14:34:36 | × | califax quits (~califax@user/califx) (Ping timeout: 268 seconds) |
| 14:35:59 | → | califax joins (~califax@user/califx) |
| 14:36:26 | <kuribas> | now the hard part: a record of lenses ... |
| 14:36:50 | <geekosaur> | isn't that what ALens is for? |
| 14:37:05 | → | shriekingnoise joins (~shrieking@201.212.175.181) |
| 14:37:09 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 244 seconds) |
| 14:38:03 | <kuribas> | no, a record of lenses in that record :) |
| 14:39:06 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 264 seconds) |
| 14:40:20 | × | finsternis quits (~X@23.226.237.192) (Read error: Connection reset by peer) |
| 14:41:19 | → | finsternis joins (~X@23.226.237.192) |
| 14:45:37 | → | yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) |
| 14:46:08 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Quit: Leaving) |
| 14:48:06 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 14:50:31 | × | yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
| 15:01:30 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 15:03:28 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds) |
| 15:03:55 | × | amonowy quits (~amonowy@83.6.20.198.ipv4.supernova.orange.pl) (Quit: Client closed) |
| 15:04:39 | → | pgas joins (~pg@190.247.245.154) |
| 15:08:01 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 15:08:01 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 15:08:20 | → | califax joins (~califax@user/califx) |
| 15:08:45 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 15:11:06 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 15:11:24 | → | califax joins (~califax@user/califx) |
| 15:12:01 | → | kenran joins (~kenran@200116b82b11f800f722575e74152ce8.dip.versatel-1u1.de) |
| 15:16:06 | × | MajorBiscuit quits (~MajorBisc@86-88-79-148.fixed.kpn.net) (Quit: WeeChat 3.5) |
| 15:17:23 | × | Katarushisu quits (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat) |
| 15:19:52 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 15:20:46 | → | waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
| 15:24:25 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Ping timeout: 260 seconds) |
| 15:25:00 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 15:27:07 | × | alp quits (~alp@user/alp) (Ping timeout: 260 seconds) |
| 15:30:25 | <Pickchea> | Hello, I have a relatively simple problem to which I can't seem to find a solution. I'm writing a function using two definitions for pattern matching. I would like to append a where clause to define a variable for an expression that occurs in both function definitions. However, the where clause only defines variables for the immediately preceding function definition. Is there a way to provide a variable for both function definitions? |
| 15:31:05 | <maerwald> | move the pattern matching into the function body |
| 15:31:10 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 15:32:43 | <Pickchea> | maerwald, using case? |
| 15:33:51 | → | smitop2 joins (uid328768@id-328768.tinside.irccloud.com) |
| 15:33:54 | <kuribas> | Pickchea: use a case statement? |
| 15:33:58 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 240 seconds) |
| 15:34:05 | <Pickchea> | OK thanks! |
| 15:34:22 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 15:34:43 | × | christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 256 seconds) |
| 15:34:47 | × | mrmr quits (~mrmr@user/mrmr) (Quit: The Lounge - https://thelounge.chat) |
| 15:35:52 | <maerwald> | Pickchea: multiway if, lambda case, etc. |
| 15:35:57 | → | Haskelytic joins (~Haskelyti@118.179.211.17) |
| 15:36:07 | → | Guest34 joins (~Guest34@2605:a601:a615:f600:c043:338:8fca:5b7c) |
| 15:36:25 | × | sander quits (~sander@user/sander) (Quit: So long! :)) |
| 15:36:45 | <Guest34> | Is there any way to wrap a constraint in a newtype to prevents its evaluation? |
| 15:37:37 | <Guest34> | I've got a recursive constraint that will overflow the stack, and I need a way to break the loop. |
| 15:37:56 | → | ubert1 joins (~Thunderbi@p200300ecdf0da547da8c9bf37b686f51.dip0.t-ipconnect.de) |
| 15:44:30 | <yin> | Guest34: what do you mean by constraint? |
| 15:46:32 | <yin> | if you paste some code maybe we could understand better |
| 15:50:35 | <Guest34> | Thanks, never mind; I'm going to try using closed type families a bit more. |
| 15:53:47 | <kuribas> | Guest34: recursive constraint sounds dodgy... |
| 15:55:43 | → | christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) |
| 15:56:39 | → | Everything joins (~Everythin@37.115.210.35) |
| 15:56:48 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Quit: WeeChat 3.5) |
| 15:57:18 | <Everything> | Hi all. What Haskell projects would you recommend for learning for a noob? Good code examples? |
| 15:59:44 | <[exa]> | Everything: what level of newbieness? (new to programming or just new to haskell?) |
| 16:00:07 | <[exa]> | Everything: anyway making a tiny game in Gloss is usually a nice way to start up |
| 16:00:44 | <Everything> | [exa]: new to Haskell and ML dialects. Have some understanding of pure C, Python, Scheme |
| 16:01:49 | → | fockerize joins (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 16:02:11 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 16:02:31 | <[exa]> | ah nice, then you can literally start with this https://github.com/benl23x5/gloss#example :] |
| 16:02:43 | <Everything> | [exa]: thanks for the hint |
| 16:03:35 | <[exa]> | there may be other good starting examples but I generally find that getting some graphics up and running quickly really helps to get a grasp of how the thing works |
| 16:04:48 | → | sander joins (~sander@user/sander) |
| 16:04:50 | <[exa]> | btw new people usually have trouble with getting a development environment up and running. Using ghcup to install stuff is AFAIK the recommended way now. Feel free to ask if anything package-y doesn't work. |
| 16:05:14 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Remote host closed the connection) |
| 16:06:34 | × | ubert1 quits (~Thunderbi@p200300ecdf0da547da8c9bf37b686f51.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
| 16:11:20 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 16:12:30 | × | adrazalan quits (~adrazalan@42.191.189.65) (Ping timeout: 240 seconds) |
| 16:13:30 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds) |
| 16:13:46 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 244 seconds) |
| 16:14:48 | hexeme | is now known as ldlework |
| 16:15:50 | × | pleo quits (~pleo@user/pleo) (Ping timeout: 240 seconds) |
| 16:18:15 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 16:19:45 | × | quarkyalice quits (~alice@user/quarkyalice) (Read error: Connection reset by peer) |
| 16:21:27 | → | quarkyalice joins (~alice@172.79.210.234) |
| 16:21:27 | × | quarkyalice quits (~alice@172.79.210.234) (Changing host) |
| 16:21:27 | → | quarkyalice joins (~alice@user/quarkyalice) |
| 16:22:19 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
| 16:23:07 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 16:23:46 | × | telser quits (~quassel@user/telser) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 16:28:50 | → | mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net) |
| 16:29:08 | × | kenran quits (~kenran@200116b82b11f800f722575e74152ce8.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
| 16:30:06 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 16:31:03 | → | cosimone` joins (~user@93-44-186-171.ip98.fastwebnet.it) |
| 16:32:39 | × | cosimone quits (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81) (Ping timeout: 276 seconds) |
| 16:38:21 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection) |
| 16:40:59 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 16:42:26 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 16:43:34 | → | harry joins (~harry@c-73-93-249-239.hsd1.ca.comcast.net) |
| 16:43:55 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 16:44:50 | → | econo joins (uid147250@user/econo) |
| 16:46:05 | × | kuribas quits (~user@ptr-17d51emh493yj3hltjo.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
| 16:46:49 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Quit: WeeChat 3.5) |
| 16:49:25 | × | briandaed quits (~briandaed@109.95.143.14.r.toneticgroup.pl) (Ping timeout: 244 seconds) |
| 16:51:53 | → | unit73e joins (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) |
| 16:54:33 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 16:56:30 | × | jargon quits (~jargon@184.101.188.251) (Remote host closed the connection) |
| 16:59:02 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 16:59:52 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
| 17:09:33 | → | Haskelytic joins (~Haskelyti@118.179.211.17) |
| 17:11:01 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Remote host closed the connection) |
| 17:15:26 | × | Goodbye_Vincent quits (~Goodbye_V@freakshells.net) (Quit: Ping timeout (120 seconds)) |
| 17:15:50 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 17:19:09 | × | PiDelport quits (uid25146@id-25146.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 17:20:54 | × | mbuf quits (~Shakthi@122.164.13.128) (Quit: Leaving) |
| 17:20:57 | → | amonowy joins (uid560952@id-560952.uxbridge.irccloud.com) |
| 17:21:10 | × | unit73e quits (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 240 seconds) |
| 17:22:49 | → | jgeerds joins (~jgeerds@55d437cf.access.ecotel.net) |
| 17:22:59 | → | Goodbye_Vincent joins (cyvahl@freakshells.net) |
| 17:24:47 | → | alp joins (~alp@user/alp) |
| 17:26:28 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 17:29:09 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Ping timeout (120 seconds)) |
| 17:31:24 | × | mcglk quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Quit: (zzz)) |
| 17:36:34 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 17:40:22 | → | mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net) |
| 17:44:51 | → | mcglk_ joins (~mcglk@160-2-67-53.cpe.sparklight.net) |
| 17:46:30 | <yin> | using *only* ghcup is recommended by me |
| 17:46:46 | <yin> | as in if you use ghcup, dont use anything else |
| 17:47:17 | × | mcglk quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Ping timeout: 244 seconds) |
| 17:47:31 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 17:52:31 | <maerwald> | excellent choice |
| 17:55:11 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 17:55:13 | <monochrom> | Why do I feel that it's the equivalent of when I go to a restaurant and order from the menu, the server always says "excellent choice" too? :) |
| 17:55:30 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 17:56:32 | × | Guest34 quits (~Guest34@2605:a601:a615:f600:c043:338:8fca:5b7c) (Quit: Client closed) |
| 17:58:35 | <darkling> | It's to make you feel better about it even if you don't like it so much? :) |
| 17:59:30 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 18:00:03 | × | jgeerds quits (~jgeerds@55d437cf.access.ecotel.net) (Ping timeout: 276 seconds) |
| 18:01:04 | <monochrom> | Or tautologically as long as you buy from me, of course I think you've made an excellent choice :) |
| 18:01:46 | <maerwald> | monochrom: those are excellent points |
| 18:04:51 | × | malte quits (~malte@mal.tc) (Ping timeout: 244 seconds) |
| 18:06:53 | → | jumper149 joins (~jumper149@base.felixspringer.xyz) |
| 18:08:00 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 18:08:01 | <jumper149> | Hi, is it possible to check a closed type family with the exhaustiveness checker in GHC? |
| 18:10:48 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 276 seconds) |
| 18:15:21 | × | ix quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Ping timeout: 276 seconds) |
| 18:19:46 | → | Haskelytic joins (~Haskelyti@118.179.211.17) |
| 18:20:30 | × | machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 240 seconds) |
| 18:21:02 | <Haskelytic> | https://paste.tomsmeding.com/rGxMYmzi |
| 18:21:09 | <Haskelytic> | :t (sequence .) . fmap |
| 18:21:11 | <lambdabot> | (Traversable t, Monad m) => (a1 -> m a2) -> t a1 -> m (t a2) |
| 18:21:39 | <Haskelytic> | fellas, does that inference look on track? did i accidentally land on the right answer? |
| 18:22:50 | × | Kevin578 quits (~Kevin578@pool-173-76-179-30.bstnma.fios.verizon.net) (Ping timeout: 240 seconds) |
| 18:22:56 | × | smitop2 quits (uid328768@id-328768.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
| 18:31:37 | <Haskelytic> | Hmm... the type is correct but I'm having troubling mentally parsing the double-dot duo |
| 18:32:38 | <monochrom> | Yeah, so I would turn it into "comp1 (comp2 sequence) fmap" before working. |
| 18:32:51 | <Haskelytic> | so `(sequence .) . fmap` is a composite that: 1) lifts a function f; 2) composes that lifted f with sequence |
| 18:33:19 | <c_wraith> | Any time you see that, point-free has gone too far. |
| 18:33:24 | <Haskelytic> | XD |
| 18:33:32 | <Haskelytic> | haha sorry it was from the haskell book |
| 18:34:01 | <Haskelytic> | borked my brain so I started thinking maybe I need to understand the types better |
| 18:34:30 | <Haskelytic> | monochrom: ah, yes that would be a lot more readable |
| 18:35:33 | <c_wraith> | Usually when you see something like that, it's way more readable if you add one of the points back. |
| 18:35:33 | → | nate4 joins (~nate@98.45.169.16) |
| 18:36:02 | <Haskelytic> | the original was `\f xs -> sequence (fmap f xs)` |
| 18:36:10 | <c_wraith> | :t \f -> sequence . fmap f |
| 18:36:12 | <lambdabot> | (Traversable t, Monad m) => (a1 -> m a2) -> t a1 -> m (t a2) |
| 18:36:20 | <Haskelytic> | c_wraith: I'll keep that in mind. thanks! |
| 18:36:34 | <Haskelytic> | oooh cool! |
| 18:37:33 | <c_wraith> | though, you know.. in this specific case... |
| 18:37:40 | <c_wraith> | :t mapM |
| 18:37:42 | <lambdabot> | (Traversable t, Monad m) => (a -> m b) -> t a -> m (t b) |
| 18:38:01 | <c_wraith> | or if you don't need the Monad constraint |
| 18:38:04 | <c_wraith> | :t traverse |
| 18:38:05 | <lambdabot> | (Traversable t, Applicative f) => (a -> f b) -> t a -> f (t b) |
| 18:38:50 | × | fockerize quits (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds) |
| 18:39:14 | <Haskelytic> | yeah i was in the part of the book talking about traverse and how it's implemented using `sequenceA` and `fmap` |
| 18:39:41 | <Haskelytic> | I guess I'll just get used to BSODing when I see a double-dot again haha |
| 18:39:52 | <Haskelytic> | my brain just can't seem to parse it |
| 18:40:30 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 18:40:45 | <geekosaur[m]> | most people seem to have that problem. I see it abbreviated as (.:) a lot |
| 18:41:17 | <geekosaur[m]> | it's a way to apply two parameters instead of one when using `(.)` |
| 18:42:35 | → | xlei joins (~akans@138.199.15.149) |
| 18:42:46 | × | xlei quits (~akans@138.199.15.149) (Client Quit) |
| 18:44:08 | <Haskelytic> | is it common in real-world code? |
| 18:44:26 | <Lears> | I prefer `(<$$>) = fmap . fmap`. It's more useful and imo easier to parse. |
| 18:44:28 | <Haskelytic> | I feel like the more Haskell I see the more crazy it gets :) |
| 18:44:45 | <Haskelytic> | It feels like doing gymnastics with funky operators |
| 18:44:48 | cyphase | is now known as cyphase__ |
| 18:44:58 | → | notzmv joins (~zmv@user/notzmv) |
| 18:45:03 | cyphase__ | is now known as cyphase |
| 18:45:26 | <Haskelytic> | Lears: that's a double lift? |
| 18:45:33 | cyphase | is now known as cyphase_eviltwin |
| 18:45:33 | cyphase_eviltwin | is now known as 030AAGH44 |
| 18:46:32 | <Haskelytic> | :t fmap . fmap |
| 18:46:33 | <lambdabot> | (Functor f1, Functor f2) => (a -> b) -> f1 (f2 a) -> f1 (f2 b) |
| 18:46:51 | <geekosaur[m]> | fmap is (.) in the function Functor |
| 18:46:56 | <geekosaur[m]> | but it's more readable |
| 18:47:33 | <geekosaur[m]> | (in general the function (Functor, Applicative, Monad) is hard both to read and to think about; people's brains don't seem to work that way) |
| 18:48:10 | <Haskelytic> | geekosaur[m]: you can say that again! i was blown away when I learned you could see functions as Functors |
| 18:48:19 | <Haskelytic> | I got too used to the container analogy |
| 18:48:37 | → | unit73e joins (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) |
| 18:48:47 | <Haskelytic> | but then I realized a function could be framed as a container indexed by input |
| 18:48:54 | <Haskelytic> | still blows my mind :) |
| 18:49:20 | <Lears> | The function Monad can be pointlessly confusing. The Applicative is sometimes nice, used sparingly. Imo there's no problem with the Functor at all, you just need to get used to it. |
| 18:49:51 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 18:50:01 | <monochrom> | Wow so much opinion. |
| 18:50:17 | <Lears> | And strangely, all the confusion around these instances seems to disappear as soon as you put it in Reader. |
| 18:50:39 | <Haskelytic> | Haskell made me realize that the human brain needs an upgrade :) |
| 18:50:44 | <Haskelytic> | Too many metaphors to keep track of honestly |
| 18:50:56 | <Haskelytic> | context, structure, box, container, etc. |
| 18:50:59 | → | gurkenglas joins (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) |
| 18:51:14 | <monochrom> | This is why I don't teach metaphors, I teach the actual rules. |
| 18:51:34 | <Haskelytic> | monochrom: I wish someone told me that when I started :/ |
| 18:51:59 | <Haskelytic> | Lears: the power of names :) |
| 18:52:09 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 18:52:17 | <monochrom> | I learned that myself when I was in a course that taught alpha-beta pruning and minimax etc. |
| 18:53:12 | <monochrom> | The lectures and the textbook (and everyone who teaches it) provide both an "intuitive" "human-friendly" explanation and an actual mathematical proof. (It's about "admissability etc.) |
| 18:53:35 | <monochrom> | I understood the proof. I didn't understand the "human-friendly" explanation, it looked like circular logic. |
| 18:53:46 | <monochrom> | Since then I knew. |
| 18:54:01 | <Haskelytic> | XD I've had that experience before |
| 18:54:10 | <darkling> | Heh. I once spent an entire 2 hours in a physics class at school arguing with the teacher about the behaviour of op-amps. |
| 18:54:33 | <darkling> | Eventually, he conceded that the approach he was teaching wasn't the whole story, and that he needed a couple of pages of calculus. |
| 18:54:37 | <Haskelytic> | I think I tend to get too hung up on authors' metaphors and analogies and get confused when I understand the proof but their picturesque descriptions just fly over my head |
| 18:54:38 | <darkling> | "Fine, I'll take that." :) |
| 18:55:00 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 276 seconds) |
| 18:55:43 | <Haskelytic> | darkling: haha |
| 18:56:27 | <darkling> | To his credit, the next lesson, he did deliver several pages of calculus which made sense. He just didn't give them to the whole class. |
| 18:56:57 | <Haskelytic> | way to rob your fellow classmates of a learning experience :P |
| 18:58:10 | <darkling> | There were only two of us who actually cared that much about the formal mathematics. |
| 19:01:41 | → | fweht joins (uid404746@id-404746.lymington.irccloud.com) |
| 19:01:56 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 19:05:40 | → | pavonia joins (~user@user/siracusa) |
| 19:06:13 | → | Topsi joins (~Topsi@host-88-217-154-179.customer.m-online.net) |
| 19:06:58 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 19:12:28 | <monochrom> | Oooohhhh, is that about virtual ground and virtual open and the paradox that both are true at the same time :) |
| 19:14:02 | × | mcglk_ quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Ping timeout: 255 seconds) |
| 19:14:16 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds) |
| 19:15:43 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 19:16:10 | <darkling> | No, it was about the thing where you feed back the output to one of the inputs and the gain magically becomes controllable. |
| 19:16:26 | → | mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net) |
| 19:17:55 | → | nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) |
| 19:18:11 | <Noinia> | question for the people knowledgable about lenses: how do I build/adapt an 'IndexedTraversal' ? Concretely, what I'm trying to do is: given an 'myInTraversal :: IndexedTraversal Int s t a b' I want to construct an 'myOutTraversal' of the same type in which all the indices have been increased by one; i.e. something like itoListOf myInTraversal [10,20,30] normally proudces something like |
| 19:18:17 | <Noinia> | [(0,10),(1,20),(2,30)], I now want itoListOf myOutputTraversal [10,20,30] produce [(1,10),(2,20),(3,30)] |
| 19:20:05 | <Noinia> | from looking at the source of some of the things of type 'IndexedTraversal' it seems I should be able to somehow manually expand the arguments (using that type IndexedTraversal i s t a b) is really just some two parameter function, but somehow that seems more low level than I need |
| 19:21:41 | × | Topsi quits (~Topsi@host-88-217-154-179.customer.m-online.net) (Read error: Connection reset by peer) |
| 19:22:21 | × | nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Ping timeout: 244 seconds) |
| 19:23:17 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 19:24:29 | → | pleo joins (~pleo@user/pleo) |
| 19:32:31 | <Noinia> | hmm I somehow figured out a way to make what I worked by explicitly using the 'conjoined' function reconstructing an inexedTraversal, but somehow that seems more clunky than necessary. |
| 19:37:47 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 19:39:07 | <Noinia> | ah, apparently there is the 'reindexed' function that one can use :) |
| 19:39:57 | <Noinia> | i.e. myOutputTraversal = reindexed (+1) myInputTraversal |
| 19:40:50 | × | mcglk quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Ping timeout: 240 seconds) |
| 19:42:35 | → | mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net) |
| 19:44:28 | → | Topsi joins (~Topsi@host-88-217-154-179.customer.m-online.net) |
| 19:46:16 | → | ix joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
| 19:46:30 | × | christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 240 seconds) |
| 19:46:50 | → | Kevin578 joins (~Kevin578@pool-173-76-179-30.bstnma.fios.verizon.net) |
| 19:49:50 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 19:51:24 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds) |
| 19:52:30 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 19:52:50 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 19:53:58 | → | coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 19:55:25 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 244 seconds) |
| 19:55:26 | → | pragma- joins (~chaos@user/pragmatic-chaos) |
| 19:57:14 | → | dudek joins (~dudek@185.150.236.103) |
| 20:00:05 | → | coot_ joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 20:00:10 | × | coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Ping timeout: 240 seconds) |
| 20:00:45 | × | tessier_ quits (~treed@98.171.210.130) (Quit: leaving) |
| 20:01:36 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 276 seconds) |
| 20:04:57 | → | Katarushisu joins (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) |
| 20:07:30 | → | fockerize joins (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 20:09:23 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 20:09:27 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds) |
| 20:09:33 | × | Everything quits (~Everythin@37.115.210.35) (Quit: leaving) |
| 20:12:05 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 20:15:49 | → | nuc13u5 joins (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) |
| 20:20:11 | × | nuc13u5 quits (~nuc13u5@2601:203:400:af50:89cc:9642:c954:860) (Ping timeout: 255 seconds) |
| 20:21:46 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 244 seconds) |
| 20:23:44 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 20:30:33 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 20:32:34 | × | 030AAGH44 quits (~cyphase@user/cyphase) (Ping timeout: 272 seconds) |
| 20:34:22 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) (Remote host closed the connection) |
| 20:37:12 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 20:37:23 | → | cyphase joins (~cyphase@user/cyphase) |
| 20:38:15 | → | dcoutts joins (~duncan@host-92-23-41-52.as13285.net) |
| 20:40:50 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 20:45:27 | → | nate4 joins (~nate@98.45.169.16) |
| 20:51:47 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 20:52:11 | × | cosimone` quits (~user@93-44-186-171.ip98.fastwebnet.it) (Remote host closed the connection) |
| 20:52:55 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 20:53:14 | → | cosimone joins (~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81) |
| 21:05:43 | × | unit73e quits (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Read error: Connection reset by peer) |
| 21:07:39 | × | coot_ quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot_) |
| 21:08:15 | × | chomwitt quits (~chomwitt@2a02:587:dc0d:4a00:bd6:dafd:ce58:5eb6) (Ping timeout: 276 seconds) |
| 21:08:26 | → | yax__ joins (~yax__@user/yax/x-9576643) |
| 21:10:28 | → | slack1256 joins (~slack1256@186.11.63.174) |
| 21:14:11 | <slack1256> | Yesterday I was asking about how to obtain the `program.prof` files that the RTS generates with the `-P` option. That is not generated when you kill a program with SIGTERM, much else when the program is inside of a docker container. I solved it by mounting a bind mount on the docker container and making it write inside the folder with the `-po` option. Then I had to terminate the program gracefully, which was done using the `async` library and the race |
| 21:14:11 | <slack1256> | combinator with a timeout of 15 min. I had to reproduce the hot loop in that time frame so the profiling would report what was failing. It ended up being a STM transaction where I miswrote `readTMVar` instead of `takeTMVar`, the last one being blocking. I post this just to conclude yesterday saga and thank #haskell for their wisdom diagnosting this production bug :-) . |
| 21:14:28 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 244 seconds) |
| 21:14:36 | × | jumper149 quits (~jumper149@base.felixspringer.xyz) (Quit: WeeChat 3.5) |
| 21:15:05 | <Rembane> | slack1256: That's a beautiful bug! Thank you for reporting. :) |
| 21:15:51 | × | pgas quits (~pg@190.247.245.154) (Remote host closed the connection) |
| 21:16:03 | × | pleo quits (~pleo@user/pleo) (Ping timeout: 276 seconds) |
| 21:17:06 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 21:17:29 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 21:24:04 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 21:26:14 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 21:29:13 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 21:32:31 | → | pleo joins (~pleo@user/pleo) |
| 21:32:37 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 21:35:10 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds) |
| 21:35:38 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 21:37:31 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 21:41:38 | × | fockerize quits (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds) |
| 21:44:24 | → | mima joins (~mmh@aftr-62-216-210-245.dynamic.mnet-online.de) |
| 21:45:10 | → | slac11860 joins (~slack1256@191.126.227.78) |
| 21:47:10 | × | slack1256 quits (~slack1256@186.11.63.174) (Ping timeout: 240 seconds) |
| 21:47:40 | × | califax quits (~califax@user/califx) (Quit: ZNC 1.8.2 - https://znc.in) |
| 21:48:08 | → | califax joins (~califax@user/califx) |
| 21:48:50 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 255 seconds) |
| 21:51:30 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 21:56:21 | × | beka quits (~beka@104.193.170.240) (Ping timeout: 276 seconds) |
| 21:56:34 | → | yauhsien joins (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) |
| 22:00:48 | × | thatcher quits (lp0@heathens.club) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 22:01:26 | → | thatcher joins (lp0@heathens.club) |
| 22:01:30 | × | yauhsien quits (~yauhsien@61-231-36-12.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 22:05:23 | × | michalz quits (~michalz@185.246.204.72) (Remote host closed the connection) |
| 22:09:36 | × | Topsi quits (~Topsi@host-88-217-154-179.customer.m-online.net) (Read error: Connection reset by peer) |
| 22:09:40 | × | slac11860 quits (~slack1256@191.126.227.78) (Remote host closed the connection) |
| 22:15:30 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 276 seconds) |
| 22:15:32 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 22:15:48 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 22:17:17 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 22:21:45 | ← | pragma- parts (~chaos@user/pragmatic-chaos) (Bye!) |
| 22:23:13 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Remote host closed the connection) |
| 22:23:32 | → | machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net) |
| 22:23:38 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 22:28:13 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 22:32:59 | → | codaraxis__ joins (~codaraxis@user/codaraxis) |
| 22:35:22 | × | dudek quits (~dudek@185.150.236.103) (Quit: Leaving) |
| 22:35:25 | → | merijn joins (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) |
| 22:36:30 | × | codaraxis quits (~codaraxis@user/codaraxis) (Ping timeout: 240 seconds) |
| 22:40:14 | × | merijn quits (~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 244 seconds) |
| 22:41:04 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 22:41:16 | × | dsrt^ quits (~dsrt@128-092-191-146.biz.spectrum.com) (Ping timeout: 244 seconds) |
| 22:41:20 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 22:46:53 | × | haritz quits (~hrtz@user/haritz) (Remote host closed the connection) |
| 22:48:41 | × | Tuplanolla quits (~Tuplanoll@91-159-69-97.elisa-laajakaista.fi) (Quit: Leaving.) |
| 22:49:49 | → | haritz joins (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) |
| 22:49:50 | × | haritz quits (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host) |
| 22:49:50 | → | haritz joins (~hrtz@user/haritz) |
| 22:49:51 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5) |
| 22:54:33 | → | mrmr joins (~mrmr@user/mrmr) |
| 22:57:56 | × | phma quits (phma@2001:5b0:215a:f018:4fce:809b:f264:f166) (Read error: Connection reset by peer) |
| 22:58:37 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:04:23 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:e83b:f237:c3ef:87c1) |
| 23:05:02 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 23:05:22 | → | adrazalan joins (~adrazalan@42.191.189.65) |
| 23:06:38 | → | dostoevsky2 joins (~5c42c5384@user/dostoevsky) |
| 23:07:36 | → | dsrt^ joins (~dsrt@128-092-191-146.biz.spectrum.com) |
| 23:07:37 | × | dostoevsky quits (~5c42c5384@user/dostoevsky) (Read error: Connection reset by peer) |
| 23:07:38 | dostoevsky2 | is now known as dostoevsky |
| 23:07:56 | → | phma joins (phma@2001:5b0:215d:f9b8:8b32:f15e:1903:26cf) |
| 23:08:10 | × | dos__^^ quits (~user@user/dos/x-1723657) (Read error: Connection reset by peer) |
| 23:09:50 | × | adrazalan quits (~adrazalan@42.191.189.65) (Ping timeout: 240 seconds) |
| 23:12:18 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 23:12:45 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 23:12:58 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 23:13:17 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:14:52 | → | Kaipei joins (~Kaiepi@156.34.47.253) |
| 23:16:02 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 23:17:07 | × | mcglk quits (~mcglk@160-2-67-53.cpe.sparklight.net) (Ping timeout: 256 seconds) |
| 23:17:50 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 240 seconds) |
| 23:19:27 | → | beka joins (~beka@104-244-24-117.PUBLIC.monkeybrains.net) |
| 23:23:00 | → | mcglk joins (~mcglk@160-2-67-53.cpe.sparklight.net) |
| 23:23:17 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 23:26:01 | → | causal joins (~user@50.35.83.177) |
| 23:31:08 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:31:11 | × | pleo quits (~pleo@user/pleo) (Quit: quit) |
| 23:35:14 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 23:35:27 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 276 seconds) |
| 23:36:29 | Lord_of_Life_ | is now known as Lord_of_Life |
| 23:36:56 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 23:42:03 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds) |
| 23:43:53 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 23:52:21 | → | tessier joins (~treed@98.171.210.130) |
| 23:52:42 | × | gdd1 quits (~gdd@2001:470:1f13:187:2e9b:467c:7a38:be67) (Ping timeout: 272 seconds) |
| 23:54:19 | → | gdd1 joins (~gdd@129.199.146.230) |
| 23:55:34 | × | tessier quits (~treed@98.171.210.130) (Client Quit) |
All times are in UTC on 2022-07-08.