Logs on 2022-06-02 (liberachat/#haskell)
| 00:01:58 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection) |
| 00:08:15 | × | Tuplanolla quits (~Tuplanoll@91-159-68-39.elisa-laajakaista.fi) (Quit: Leaving.) |
| 00:10:45 | → | dsrt^ joins (~dsrt@128-092-173-218.biz.spectrum.com) |
| 00:10:49 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 00:13:18 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds) |
| 00:13:57 | × | cosimone quits (~user@93-44-186-171.ip98.fastwebnet.it) (Ping timeout: 260 seconds) |
| 00:15:54 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 00:16:23 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4) |
| 00:16:30 | × | alp quits (~alp@user/alp) (Ping timeout: 260 seconds) |
| 00:20:57 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 00:22:06 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 00:23:42 | tabemann_ | is now known as tabemann |
| 00:25:52 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 00:37:14 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds) |
| 00:37:35 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Read error: Connection reset by peer) |
| 00:37:59 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 00:38:00 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 00:40:46 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 00:42:33 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 276 seconds) |
| 00:44:39 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 244 seconds) |
| 00:45:16 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 00:45:40 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds) |
| 00:45:48 | × | vicfred quits (~vicfred@user/vicfred) (Quit: Leaving) |
| 00:47:58 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds) |
| 00:48:47 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 00:51:28 | → | frost joins (~frost@user/frost) |
| 00:53:37 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 00:56:24 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds) |
| 00:58:36 | × | xff0x quits (~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 246 seconds) |
| 01:00:14 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds) |
| 01:01:19 | → | mokee joins (~mokee@37.228.215.148) |
| 01:02:28 | → | vysn joins (~vysn@user/vysn) |
| 01:03:16 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 01:05:15 | × | mixfix41 quits (~sdenynine@user/mixfix41) (Ping timeout: 246 seconds) |
| 01:06:27 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 01:08:24 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 246 seconds) |
| 01:11:00 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds) |
| 01:11:13 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:13:25 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 01:13:30 | × | gentauro quits (~gentauro@user/gentauro) (Read error: Connection reset by peer) |
| 01:15:25 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 01:15:55 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 01:17:20 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:18:56 | × | joo-_ quits (~joo-_@fsf/member/joo--) (Ping timeout: 255 seconds) |
| 01:19:24 | → | gentauro joins (~gentauro@user/gentauro) |
| 01:20:45 | → | joo-_ joins (~joo-_@80-62-116-213-mobile.dk.customer.tdc.net) |
| 01:20:45 | × | joo-_ quits (~joo-_@80-62-116-213-mobile.dk.customer.tdc.net) (Changing host) |
| 01:20:45 | → | joo-_ joins (~joo-_@fsf/member/joo--) |
| 01:26:02 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection) |
| 01:27:49 | → | nate2 joins (~nate@98.45.169.16) |
| 01:29:15 | → | nate3 joins (~nate@98.45.169.16) |
| 01:29:31 | × | nate2 quits (~nate@98.45.169.16) (Read error: Connection reset by peer) |
| 01:30:00 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 01:32:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 01:32:33 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 01:38:02 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 01:39:27 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds) |
| 01:39:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 01:40:19 | × | Topsi quits (~Topsi@dyndsl-095-033-026-061.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
| 01:40:29 | × | dsrt^ quits (~dsrt@128-092-173-218.biz.spectrum.com) (Ping timeout: 258 seconds) |
| 01:40:43 | <brettgilio> | https://www.micahcantor.com/blog/js-to-asm-in-hs/ |
| 01:42:08 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 01:42:17 | → | xff0x joins (~xff0x@s5.HtokyoFL1.vectant.ne.jp) |
| 01:45:37 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 244 seconds) |
| 01:47:34 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 01:48:21 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 01:52:15 | × | liz quits (~liz@host86-159-158-175.range86-159.btcentralplus.com) (Quit: Lost terminal) |
| 01:53:56 | → | andrey_ joins (~andrey@p200300dbcf13c9006e615432230a2497.dip0.t-ipconnect.de) |
| 01:56:21 | × | andrey__ quits (~andrey@p508d581f.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 01:57:09 | → | rekahsoft joins (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) |
| 02:00:36 | × | vysn quits (~vysn@user/vysn) (Ping timeout: 244 seconds) |
| 02:11:23 | × | gurkenglas quits (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) (Ping timeout: 256 seconds) |
| 02:14:25 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5) |
| 02:17:02 | → | dsrt^ joins (~dsrt@128-092-173-218.biz.spectrum.com) |
| 02:18:20 | × | waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 255 seconds) |
| 02:21:21 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds) |
| 02:25:32 | × | td_ quits (~td@94.134.91.230) (Ping timeout: 255 seconds) |
| 02:26:10 | × | rekahsoft quits (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) (Ping timeout: 240 seconds) |
| 02:27:20 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 255 seconds) |
| 02:27:24 | → | td_ joins (~td@muedsl-82-207-238-179.citykom.de) |
| 02:27:38 | → | cortisol joins (~cortisol@180-150-37-80.b49625.bne.nbn.aussiebb.net) |
| 02:37:29 | → | nahcetan joins (~nate@98.45.169.16) |
| 02:38:07 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 02:38:21 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 246 seconds) |
| 02:38:56 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 02:39:29 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 02:42:11 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 255 seconds) |
| 02:42:48 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds) |
| 02:43:04 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 02:46:10 | × | Cale quits (~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (Read error: Connection reset by peer) |
| 02:49:20 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:49:20 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 02:49:20 | finn_elija | is now known as FinnElija |
| 02:49:30 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 02:50:17 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 02:51:36 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 02:58:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 02:59:33 | → | Unicorn_Princess joins (~Unicorn_P@93-103-228-248.dynamic.t-2.net) |
| 02:59:47 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds) |
| 03:02:01 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 03:07:05 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 03:08:25 | → | bangkaloa joins (~ddddd@vps-12f86b69.vps.ovh.ca) |
| 03:08:58 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 03:12:03 | → | king_gs joins (~Thunderbi@2806:103e:29:ce73:832b:2b9c:b188:29da) |
| 03:12:22 | → | Cale joins (~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) |
| 03:13:21 | × | bangkaloa quits (~ddddd@vps-12f86b69.vps.ovh.ca) (Ping timeout: 246 seconds) |
| 03:13:38 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds) |
| 03:18:38 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 03:20:07 | → | nate3 joins (~nate@98.45.169.16) |
| 03:22:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 03:23:05 | → | mbuf joins (~Shakthi@182.77.99.178) |
| 03:24:56 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 255 seconds) |
| 03:26:14 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 03:27:16 | → | nate3 joins (~nate@98.45.169.16) |
| 03:28:04 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 03:31:42 | × | ix quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Ping timeout: 260 seconds) |
| 03:32:48 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 258 seconds) |
| 03:33:00 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 03:33:38 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 03:36:12 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 03:38:01 | → | raym joins (~raym@user/raym) |
| 03:40:28 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds) |
| 03:40:55 | → | yw68 joins (~yw@2.58.65.178) |
| 03:41:18 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 03:41:26 | → | ix joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
| 03:41:32 | × | cortisol quits (~cortisol@180-150-37-80.b49625.bne.nbn.aussiebb.net) (Quit: Client closed) |
| 03:47:04 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 03:53:07 | × | king_gs quits (~Thunderbi@2806:103e:29:ce73:832b:2b9c:b188:29da) (Ping timeout: 258 seconds) |
| 03:56:14 | → | nahcetan joins (~nate@98.45.169.16) |
| 03:57:53 | × | vglfr quits (~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer) |
| 03:58:29 | → | vglfr joins (~vglfr@coupling.penchant.volia.net) |
| 03:59:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 04:00:20 | → | nate3 joins (~nate@98.45.169.16) |
| 04:00:40 | × | yw68 quits (~yw@2.58.65.178) (Quit: Client closed) |
| 04:00:50 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 04:01:44 | → | img joins (~img@user/img) |
| 04:04:36 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 244 seconds) |
| 04:05:07 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds) |
| 04:06:02 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 04:07:12 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 04:07:25 | → | king_gs joins (~Thunderbi@187.201.188.90) |
| 04:08:07 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 04:11:37 | → | euandreh joins (~euandreh@2804:14c:33:966c:2059:6e22:1326:6607) |
| 04:13:20 | × | slac72175 quits (~slack1256@186.11.46.34) (Remote host closed the connection) |
| 04:14:26 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 255 seconds) |
| 04:15:58 | × | euandreh quits (~euandreh@2804:14c:33:966c:2059:6e22:1326:6607) (Ping timeout: 244 seconds) |
| 04:19:09 | × | mud quits (~mud@user/kadoban) (Remote host closed the connection) |
| 04:27:38 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 04:31:50 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds) |
| 04:33:45 | × | raym quits (~raym@user/raym) (Ping timeout: 258 seconds) |
| 04:34:23 | → | raym joins (~raym@user/raym) |
| 04:35:10 | → | nate3 joins (~nate@98.45.169.16) |
| 04:39:53 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 258 seconds) |
| 04:40:47 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 04:41:59 | → | nahcetan joins (~nate@98.45.169.16) |
| 04:46:58 | × | king_gs quits (~Thunderbi@187.201.188.90) (Read error: Connection reset by peer) |
| 04:48:42 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 258 seconds) |
| 04:49:10 | → | king_gs joins (~Thunderbi@187.201.188.90) |
| 05:01:41 | → | nahcetan joins (~nate@98.45.169.16) |
| 05:01:53 | × | tomku quits (~tomku@user/tomku) (Read error: Connection reset by peer) |
| 05:04:02 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 258 seconds) |
| 05:04:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 05:04:57 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 05:06:16 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 05:07:02 | → | tomku joins (~tomku@user/tomku) |
| 05:09:21 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 05:12:10 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 05:13:10 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 05:22:03 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 276 seconds) |
| 05:23:29 | → | chomwitt joins (~chomwitt@2a02:587:dc0e:3e00:bc0d:a683:e7e9:901) |
| 05:25:03 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 05:27:20 | × | king_gs quits (~Thunderbi@187.201.188.90) (Read error: Connection reset by peer) |
| 05:28:22 | → | king_gs joins (~Thunderbi@2806:103e:29:ce73:832b:2b9c:b188:29da) |
| 05:31:15 | × | king_gs quits (~Thunderbi@2806:103e:29:ce73:832b:2b9c:b188:29da) (Client Quit) |
| 05:31:26 | → | king_gs1 joins (~Thunderbi@187.201.188.90) |
| 05:33:45 | king_gs1 | is now known as king_gs |
| 05:35:23 | → | odnes joins (~odnes@5-203-218-239.pat.nym.cosmote.net) |
| 05:40:53 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 05:45:21 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 244 seconds) |
| 05:47:51 | → | nahcetan joins (~nate@98.45.169.16) |
| 05:48:45 | → | kfj joins (~kfj@94.198.43.89) |
| 05:49:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 05:49:49 | <kfj> | /EXIT |
| 05:49:53 | × | kfj quits (~kfj@94.198.43.89) (Client Quit) |
| 05:52:38 | × | son0p quits (~ff@181.136.122.143) (Ping timeout: 272 seconds) |
| 05:54:22 | → | kosmikus[m] joins (~andresloe@2001:470:69fc:105::95d) |
| 05:58:55 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 06:00:18 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 06:03:51 | × | vglfr quits (~vglfr@coupling.penchant.volia.net) (Remote host closed the connection) |
| 06:04:49 | → | vglfr joins (~vglfr@coupling.penchant.volia.net) |
| 06:04:59 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds) |
| 06:06:02 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 06:06:54 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 258 seconds) |
| 06:08:21 | × | dsrt^ quits (~dsrt@128-092-173-218.biz.spectrum.com) (Ping timeout: 246 seconds) |
| 06:09:45 | × | xff0x quits (~xff0x@s5.HtokyoFL1.vectant.ne.jp) (Ping timeout: 246 seconds) |
| 06:11:08 | × | king_gs quits (~Thunderbi@187.201.188.90) (Read error: Connection reset by peer) |
| 06:12:03 | → | king_gs joins (~Thunderbi@2806:103e:29:ce73:832b:2b9c:b188:29da) |
| 06:12:33 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 06:13:52 | ← | tochicool parts (~tochicool@user/tochicool) (Konversation terminated!) |
| 06:15:17 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 06:17:37 | → | cfricke joins (~cfricke@user/cfricke) |
| 06:19:41 | × | cfricke quits (~cfricke@user/cfricke) (Client Quit) |
| 06:24:46 | → | chele joins (~chele@user/chele) |
| 06:24:53 | → | michalz joins (~michalz@185.246.204.125) |
| 06:24:57 | → | Guest72 joins (~Guest72@111.226.91.93) |
| 06:25:54 | → | acidjnk joins (~acidjnk@pd9e0b3b9.dip0.t-ipconnect.de) |
| 06:30:03 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 06:30:23 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 06:30:34 | → | cfricke joins (~cfricke@user/cfricke) |
| 06:31:44 | → | nate3 joins (~nate@98.45.169.16) |
| 06:33:08 | → | vysn joins (~vysn@user/vysn) |
| 06:34:23 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 255 seconds) |
| 06:35:51 | → | nahcetan joins (~nate@98.45.169.16) |
| 06:36:10 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 06:38:07 | → | arahael joins (~arahael@121-44-30-20.tpgi.com.au) |
| 06:38:15 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 06:42:46 | → | img joins (~img@user/img) |
| 06:45:19 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 06:46:30 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 06:49:27 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 240 seconds) |
| 06:55:37 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 06:56:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 06:56:43 | → | dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net) |
| 06:58:41 | × | bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 255 seconds) |
| 07:03:28 | → | coot joins (~coot@213.134.190.95) |
| 07:04:05 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 07:04:23 | → | mmhat joins (~mmh@p200300f1c7091e12ee086bfffe095315.dip0.t-ipconnect.de) |
| 07:05:01 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 07:06:34 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 07:06:42 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 07:09:23 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds) |
| 07:09:24 | <dminuoso> | The ordering of systemd dependencies gives a graph (each unit can specify a Before or After). When computing what systemd units to start next, is this a standard graph algorithm? |
| 07:10:53 | → | `2jt joins (~jtomas@182.red-88-17-61.dynamicip.rima-tde.net) |
| 07:12:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 07:12:39 | → | ehammarstrom joins (~ehammarst@62-20-203-39-no182.tbcn.telia.com) |
| 07:12:53 | <jackdk> | dminuoso: If you know it's a DAG, then a pre-order traversal should do the trick - visit (i.e., start) all child nodes before visiting (attempting to start the node itself). More complex variations include topologically sorting the dep graph and starting things in parallel if possible. If you did a breadth-first search pushing nodes onto a stack, then you could pop from that stack of services-to-start provided all dependencies are in the RUNNING state |
| 07:17:03 | × | ehammarstrom quits (~ehammarst@62-20-203-39-no182.tbcn.telia.com) (Ping timeout: 258 seconds) |
| 07:18:12 | <dminuoso> | Im not sure a simple pre-order traversal would suffice, given that you could have the following orderings (> denoting After): A > B. A > C > B. |
| 07:18:51 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 07:19:00 | → | nahcetan joins (~nate@98.45.169.16) |
| 07:19:16 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 07:20:59 | → | gurkenglas joins (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) |
| 07:21:00 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 07:22:19 | <dminuoso> | And that busts the plan of simply checking whether all dependencies are in the running state |
| 07:23:45 | <dminuoso> | Ah, I think I just realized what this is. |
| 07:23:50 | <dminuoso> | This is just transitive reduction! |
| 07:24:03 | <dminuoso> | After that is done, A>B goes away |
| 07:25:02 | <jackdk> | good point, I think then a topological sort and then work backwards from the leaves |
| 07:25:25 | × | shriekingnoise quits (~shrieking@201.231.16.156) (Quit: Quit) |
| 07:28:00 | <dminuoso> | Yes, that combination seems like it would work. Ill do some experimentation. Thanks for your thoughts |
| 07:31:13 | → | Macbethwin joins (~chargen@d964062a.static.ziggozakelijk.nl) |
| 07:38:33 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 07:39:41 | → | king_gs1 joins (~Thunderbi@187.201.188.90) |
| 07:41:35 | × | king_gs quits (~Thunderbi@2806:103e:29:ce73:832b:2b9c:b188:29da) (Ping timeout: 260 seconds) |
| 07:41:35 | king_gs1 | is now known as king_gs |
| 07:45:23 | <tomsmeding> | yeah, it sounds like you just want to convert an After=B on A to a Before=A on B, and then use standard topological sort |
| 07:47:05 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 07:47:10 | × | coot quits (~coot@213.134.190.95) (Ping timeout: 240 seconds) |
| 07:48:10 | <[exa]> | dminuoso: beware systemd specifics in "standard graph algorithms" tho (and plain out bugs) |
| 07:48:28 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 07:48:46 | → | zeenk joins (~zeenk@2a02:2f04:a104:ef00:10:581:f80f:b980) |
| 07:52:07 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 07:53:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 07:54:20 | [exa] | opens systemd source just for the peek |
| 07:54:29 | <tomsmeding> | [exa]: good luck |
| 07:54:31 | [exa] | finds add_two_dependencies() |
| 07:54:48 | <tomsmeding> | no add_three_dependencies? |
| 07:54:58 | <Axman6> | OverloadedChars isn't a thing is it? |
| 07:55:10 | <Axman6> | I would love for 'a' to mean Parser Char |
| 07:56:07 | Macbethwin | is now known as chargen |
| 07:56:58 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 07:57:54 | <[exa]> | ah lol |
| 07:58:03 | <[exa]> | tomsmeding: no, two is the number of dependencies |
| 07:58:27 | → | bajskorfven0 joins (~bajskorfv@82.118.29.150) |
| 07:58:27 | <tomsmeding> | and the number of dependencies is two |
| 07:58:40 | [exa] | finds transaction_verify_order that in fact breaks cycles |
| 07:58:46 | [exa] | closes systemd source |
| 07:58:51 | <tomsmeding> | welcome back |
| 07:58:56 | <[exa]> | gaaaah that was brutal |
| 07:58:58 | → | cosimone joins (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
| 08:00:15 | <[exa]> | anyway apparently they start and stop stuff in huge transactions where there's an implicit order based on how the "stuff to change" appears, so any simple graph-traversing intuition might break easily |
| 08:00:15 | × | bajskorfven quits (~bajskorfv@90-231-13-185-no3430.tbcn.telia.com) (Ping timeout: 260 seconds) |
| 08:01:13 | <tomsmeding> | [exa]: so it's not just a topological sort that defaults to some order that's decided beforehand? |
| 08:01:26 | <tomsmeding> | and with some cycle breaking, apparently |
| 08:01:42 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:01:58 | <[exa]> | yeah and lot of very implicit dependencies, mainly mounts |
| 08:03:09 | → | bajskorfven00 joins (~bajskorfv@90-231-13-185-no3430.tbcn.telia.com) |
| 08:03:48 | <[exa]> | Axman6: unfortunately not but iirc there was some templatehaskell pkg that added fromChar to literals |
| 08:03:56 | × | cfricke quits (~cfricke@user/cfricke) (Ping timeout: 255 seconds) |
| 08:05:04 | → | nahcetan joins (~nate@98.45.169.16) |
| 08:05:06 | → | xff0x joins (~xff0x@s5.HtokyoFL1.vectant.ne.jp) |
| 08:05:17 | × | bajskorfven0 quits (~bajskorfv@82.118.29.150) (Ping timeout: 255 seconds) |
| 08:06:18 | → | dsrt^ joins (~dsrt@128-092-173-218.biz.spectrum.com) |
| 08:06:30 | × | king_gs quits (~Thunderbi@187.201.188.90) (Ping timeout: 240 seconds) |
| 08:07:17 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 08:09:07 | Hash | is now known as stoned |
| 08:10:27 | <dminuoso> | tomsmeding: It was the transitive reduction I was missing. |
| 08:10:41 | <dminuoso> | After/Before is just details that are not important. :) |
| 08:10:55 | <tomsmeding> | heh |
| 08:11:50 | <dminuoso> | [exa]: But uh, breaking cycles is rather interesting. |
| 08:12:00 | <dminuoso> | Id have expected systemd to fail when encountering cycles |
| 08:12:12 | <dminuoso> | Are you sure you didnt mix up Wants/WantedBy with Before/After? |
| 08:12:50 | <dminuoso> | Because for the former, it seems perfectly sane to just break a cycle. Not so much for ordering |
| 08:13:50 | → | alp joins (~alp@user/alp) |
| 08:16:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 08:17:11 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:17:33 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 08:18:31 | → | Infinite joins (~Infinite@49.39.124.188) |
| 08:18:31 | <dminuoso> | Judging from a dive into the source, it's not as extreme. The cycling isnt done on the actual After/Before dependency graph, but rather on some internal structure where - for one reason or another - cycles might appear. But it only breaks connections that "dont matter" |
| 08:19:13 | <tomsmeding> | sounds fishy |
| 08:19:21 | <tomsmeding> | but is probably sensible in context |
| 08:20:04 | <dminuoso> | I havent understood the entirety of it, but it seems whenever systemd adds a singular job to (whatever this is), its considered as "not important to its anchor", and that's the only connection its free to cut later on. |
| 08:20:33 | <dminuoso> | But yeah this is all weird |
| 08:20:39 | <dminuoso> | Its hard to read graph code written in C |
| 08:20:52 | <dminuoso> | So many imperative assumptions |
| 08:22:15 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:23:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 08:23:04 | <jackdk> | Axman6: GHC plugins are a path to many abilities some would consider... unnatural |
| 08:24:29 | <[exa]> | dminuoso: I wish that distinction would be obvious from the docs |
| 08:25:13 | <dminuoso> | [exa]: GHC is quite special in that a lot of the local code logic is well documented. |
| 08:27:20 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:29:04 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 08:29:14 | × | Guest72 quits (~Guest72@111.226.91.93) (Ping timeout: 252 seconds) |
| 08:31:24 | → | nate3 joins (~nate@98.45.169.16) |
| 08:32:59 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:34:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 08:36:24 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 258 seconds) |
| 08:37:34 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 08:37:55 | × | sheb quits (~sheb@31.223.228.71) (Quit: Leaving) |
| 08:37:58 | → | cfricke joins (~cfricke@user/cfricke) |
| 08:38:02 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:45:08 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 08:45:49 | × | Infinite quits (~Infinite@49.39.124.188) (Quit: Client closed) |
| 08:46:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 08:48:27 | × | tomboy64 quits (~tomboy64@user/tomboy64) (Ping timeout: 260 seconds) |
| 08:49:38 | → | Infinite joins (~Infinite@49.39.124.188) |
| 08:52:39 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:600e:e6c3:702:93eb) (Remote host closed the connection) |
| 08:53:08 | → | coot joins (~coot@213.134.190.95) |
| 08:53:39 | × | mbuf quits (~Shakthi@182.77.99.178) (Quit: Leaving) |
| 08:53:54 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:58:42 | → | ubert joins (~Thunderbi@p200300ecdf14f9c23828c143c9a6a09f.dip0.t-ipconnect.de) |
| 09:00:15 | × | sibnull[m] quits (~sibnullma@2001:470:69fc:105::1:1291) (Quit: You have been kicked for being idle) |
| 09:01:54 | → | tomboy64 joins (~tomboy64@user/tomboy64) |
| 09:01:59 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 255 seconds) |
| 09:02:52 | → | mattil joins (~mattil@helsinki.portalify.com) |
| 09:03:33 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 09:08:27 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 09:08:50 | × | Infinite quits (~Infinite@49.39.124.188) (Ping timeout: 252 seconds) |
| 09:11:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 09:13:27 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 276 seconds) |
| 09:15:08 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 09:16:26 | × | zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection) |
| 09:17:46 | → | zaquest joins (~notzaques@5.130.79.72) |
| 09:18:14 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 09:18:15 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 09:27:43 | → | Infinite joins (~Infinite@49.39.118.146) |
| 09:35:32 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 09:37:24 | × | Infinite quits (~Infinite@49.39.118.146) (Quit: Client closed) |
| 09:38:43 | Sauvin | is now known as Furor |
| 09:43:51 | × | HotblackDesiato quits (~HotblackD@gateway/tor-sasl/hotblackdesiato) (Remote host closed the connection) |
| 09:44:09 | → | HotblackDesiato joins (~HotblackD@gateway/tor-sasl/hotblackdesiato) |
| 09:49:06 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 09:51:26 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 09:53:02 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 09:57:45 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 256 seconds) |
| 09:58:14 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) (Ping timeout: 255 seconds) |
| 10:01:22 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 10:02:48 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 10:02:54 | × | zfnmxt quits (~zfnmxtzfn@2001:470:69fc:105::2b32) (Quit: Reconnecting) |
| 10:03:09 | → | zfnmxt joins (~zfnmxt@2001:470:69fc:105::2b32) |
| 10:06:13 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 10:07:45 | × | dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Ping timeout: 246 seconds) |
| 10:08:39 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 10:11:19 | → | dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net) |
| 10:12:49 | → | spacenautx joins (~spacenaut@user/spacenautx) |
| 10:13:31 | × | spacenautx quits (~spacenaut@user/spacenautx) (Client Quit) |
| 10:14:06 | → | nahcetan joins (~nate@98.45.169.16) |
| 10:17:10 | → | Infinite joins (~Infinite@49.39.118.146) |
| 10:19:39 | × | odnes quits (~odnes@5-203-218-239.pat.nym.cosmote.net) (Ping timeout: 246 seconds) |
| 10:20:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 10:20:29 | → | odnes joins (~odnes@5-203-218-239.pat.nym.cosmote.net) |
| 10:21:33 | × | gurkenglas quits (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) (Ping timeout: 256 seconds) |
| 10:22:50 | × | joo-_ quits (~joo-_@fsf/member/joo--) (Ping timeout: 240 seconds) |
| 10:30:31 | → | dcoutts joins (~duncan@host86-144-78-203.range86-144.btcentralplus.com) |
| 10:30:56 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 10:31:47 | × | dcoutts quits (~duncan@host86-144-78-203.range86-144.btcentralplus.com) (Client Quit) |
| 10:31:56 | → | dcoutts joins (~duncan@host86-144-78-203.range86-144.btcentralplus.com) |
| 10:33:16 | × | dcoutts quits (~duncan@host86-144-78-203.range86-144.btcentralplus.com) (Client Quit) |
| 10:33:32 | → | dcoutts joins (~duncan@host86-144-78-203.range86-144.btcentralplus.com) |
| 10:38:06 | → | __monty__ joins (~toonn@user/toonn) |
| 10:43:42 | × | xff0x quits (~xff0x@s5.HtokyoFL1.vectant.ne.jp) (Ping timeout: 250 seconds) |
| 10:46:48 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 10:47:17 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 255 seconds) |
| 10:48:16 | → | cosimone` joins (~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3) |
| 10:48:39 | × | dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Ping timeout: 258 seconds) |
| 10:49:40 | × | cosimone quits (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Ping timeout: 272 seconds) |
| 10:51:58 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 10:53:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 10:53:48 | × | cosimone` quits (~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3) (Ping timeout: 244 seconds) |
| 10:54:19 | × | cfricke quits (~cfricke@user/cfricke) (Ping timeout: 244 seconds) |
| 11:01:34 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 11:05:43 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 11:05:55 | → | cosimone joins (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
| 11:09:31 | → | Guest92 joins (~Guest92@2a03:d9c0:1000::1082) |
| 11:09:57 | × | Alex_test quits (~al_test@178.34.150.59) (Quit: ;-) |
| 11:10:05 | × | AlexZenon quits (~alzenon@178.34.150.59) (Quit: ;-) |
| 11:10:09 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 11:11:50 | × | AlexNoo quits (~AlexNoo@178.34.150.59) (Quit: Leaving) |
| 11:12:17 | × | mattil quits (~mattil@helsinki.portalify.com) (Remote host closed the connection) |
| 11:13:04 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 11:13:35 | × | jonathanx_ quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection) |
| 11:13:55 | → | jonathanx_ joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 11:14:34 | ← | Guest92 parts (~Guest92@2a03:d9c0:1000::1082) () |
| 11:15:17 | → | nahcetan joins (~nate@98.45.169.16) |
| 11:17:18 | → | dschrempf joins (~dominik@070-207.dynamic.dsl.fonira.net) |
| 11:23:35 | → | trisolaran joins (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 11:24:00 | <trisolaran> | How to write multiple line strings with ansi escaope sequence and print them in color? |
| 11:24:18 | <trisolaran> | in python it's just tripple quote strings |
| 11:25:18 | → | waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
| 11:26:27 | <hpc> | https://stackoverflow.com/a/22919011 |
| 11:26:56 | × | mmhat quits (~mmh@p200300f1c7091e12ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.5) |
| 11:28:44 | → | xff0x joins (~xff0x@b133147.ppp.asahi-net.or.jp) |
| 11:29:36 | → | nate3 joins (~nate@98.45.169.16) |
| 11:29:57 | <trisolaran> | hpc: i've actually tried string-qq, it works except that it doesn't print the ansi escape sequence |
| 11:33:07 | <hpc> | you scrolled down too far |
| 11:33:11 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 255 seconds) |
| 11:33:11 | × | acidjnk quits (~acidjnk@pd9e0b3b9.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 11:33:17 | <hpc> | you can do it with just backslashes |
| 11:33:19 | <geekosaur> | are you using print or putStrLn? |
| 11:33:39 | <geekosaur> | also there are modules to build ANSI escapes without dealing with the escapes directly |
| 11:33:50 | <trisolaran> | yes print and putStrLn |
| 11:33:58 | <geekosaur> | "and"? |
| 11:34:12 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 246 seconds) |
| 11:34:25 | <trisolaran> | with string-qq, it shows literally the escape code |
| 11:34:27 | <geekosaur> | print goes through show, it'll always convert control characters to escapes |
| 11:34:31 | <trisolaran> | instead of showing colors |
| 11:35:25 | <trisolaran> | i'm copying some python code , and i hope would be able to use python tripple quote strings directly |
| 11:35:46 | <geekosaur> | string-qq says it doesn't handle that, yes |
| 11:35:48 | × | dsrt^ quits (~dsrt@128-092-173-218.biz.spectrum.com) (Ping timeout: 276 seconds) |
| 11:36:23 | <trisolaran> | i think it's worth while to add that feature myself ;-D |
| 11:36:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 11:37:58 | → | AlexNoo joins (~AlexNoo@178.34.150.59) |
| 11:38:00 | → | AlexZenon joins (~alzenon@178.34.150.59) |
| 11:38:14 | → | Alex_test joins (~al_test@178.34.150.59) |
| 11:40:43 | × | zeenk quits (~zeenk@2a02:2f04:a104:ef00:10:581:f80f:b980) (Quit: Konversation terminated!) |
| 11:41:11 | <geekosaur> | there are other quasiquoters, some of which may have it. but I'd be inclined to use the ANSI color packages (cf.https://hackage.haskell.org/package/ansi-terminal) |
| 11:41:25 | <geekosaur> | rather than futz directly with escape sequences |
| 11:42:52 | <trisolaran> | geekosaur: i would use ansi-terminal too. but as i said, sometimes we need to copy some code from the internet containing bare ansi escape sequence |
| 11:43:48 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 11:44:00 | → | dsrt^ joins (~dsrt@128-092-173-218.biz.spectrum.com) |
| 11:44:12 | → | yw52 joins (~yw@2.58.65.178) |
| 11:44:18 | <trisolaran> | geekosaur: ansi-terminal doesn't provide a tool for the translation |
| 11:47:19 | × | yw52 quits (~yw@2.58.65.178) (Client Quit) |
| 11:48:55 | → | gurkenglas joins (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) |
| 11:51:40 | × | waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 244 seconds) |
| 11:52:03 | <tomsmeding> | trisolaran: use backslashes. https://paste.tomsmeding.com/JiwSPRTW |
| 11:52:20 | <tomsmeding> | and use putStrLn, not print |
| 11:52:41 | → | lyle joins (~lyle@104.246.145.85) |
| 11:52:47 | <tomsmeding> | using a package for ansi escape sequences can be nice, but is an orthogonal issue |
| 11:53:55 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 11:56:21 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 11:58:28 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 12:00:27 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) (Ping timeout: 244 seconds) |
| 12:00:48 | → | nahcetan joins (~nate@98.45.169.16) |
| 12:03:33 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 12:05:06 | × | dsrt^ quits (~dsrt@128-092-173-218.biz.spectrum.com) (Ping timeout: 244 seconds) |
| 12:07:03 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 12:07:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 12:07:53 | <trisolaran> | tomsmeding: can you make this work? https://paste.tomsmeding.com/eJRMdvaj |
| 12:08:41 | <trisolaran> | tomsmeding: i tried with this: https://paste.tomsmeding.com/XBK3hEam |
| 12:08:47 | <trisolaran> | tomsmeding: but doesn't work |
| 12:09:04 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 12:10:49 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 12:11:26 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 12:11:50 | → | Pingu joins (~Pingu@acorneroftheweb.com) |
| 12:11:52 | <geekosaur> | string gaps ignore newlines; you need to end lines with `\n\` to embed newlines in the actual strings |
| 12:13:22 | → | dsrt^ joins (~dsrt@128-092-173-218.biz.spectrum.com) |
| 12:13:34 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 12:14:34 | ← | Pingu parts (~Pingu@acorneroftheweb.com) () |
| 12:15:15 | <trisolaran> | geekosaur: ok but still the ansi code don't get their effect |
| 12:17:41 | → | spacenautx joins (~spacenaut@user/spacenautx) |
| 12:18:04 | <jackdk> | `putStrLn "\x1b[1;33mYOW!\x1b[0m"` works for me, but I'm going to bed |
| 12:18:24 | <geekosaur> | oh. you used octal but I don't think haskell does that in the same way C does. use \27 or \x1b |
| 12:20:46 | <geekosaur> | or \o33 (note lower case o) for octal |
| 12:21:32 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 12:21:57 | → | mbuf joins (~Shakthi@122.173.78.94) |
| 12:22:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 12:23:51 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 12:24:57 | <trisolaran> | geekosaur: i see! |
| 12:25:33 | <geekosaur> | with that I have it working locally |
| 12:26:39 | <trisolaran> | geekosaur: it works for me too. Thanks! |
| 12:26:50 | <geekosaur> | this is one reason I recommend the package; the different handling of escape sequences always catches me out :) |
| 12:27:21 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 12:28:00 | → | z0k joins (~z0k@206.84.141.24) |
| 12:28:10 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 12:32:25 | chargen | is now known as macbethwin |
| 12:33:34 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 12:33:56 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 255 seconds) |
| 12:34:55 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 12:35:00 | × | infinity0 quits (~infinity0@185.112.146.113) (Remote host closed the connection) |
| 12:37:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 12:39:09 | → | infinity0 joins (~infinity0@185.112.146.113) |
| 12:40:00 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 12:40:04 | × | littlebo1eep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 12:47:59 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 244 seconds) |
| 12:49:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 12:50:02 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 12:52:32 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 12:59:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 12:59:57 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 13:07:06 | × | Alex_test quits (~al_test@178.34.150.59) (Quit: ;-) |
| 13:07:25 | × | AlexZenon quits (~alzenon@178.34.150.59) (Quit: ;-) |
| 13:12:50 | × | AlexNoo quits (~AlexNoo@178.34.150.59) (Remote host closed the connection) |
| 13:19:08 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds) |
| 13:19:08 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Ping timeout: 272 seconds) |
| 13:20:30 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 13:23:08 | × | spacenautx quits (~spacenaut@user/spacenautx) (Ping timeout: 258 seconds) |
| 13:23:47 | × | dsrt^ quits (~dsrt@128-092-173-218.biz.spectrum.com) (Ping timeout: 260 seconds) |
| 13:25:01 | → | spacenautx joins (~spacenaut@user/spacenautx) |
| 13:25:45 | → | dsrt^ joins (~dsrt@128-092-173-218.biz.spectrum.com) |
| 13:26:26 | → | AlexZenon joins (~alzenon@178.34.150.59) |
| 13:26:56 | → | AlexNoo joins (~AlexNoo@178.34.150.59) |
| 13:29:18 | → | Alex_test joins (~al_test@178.34.150.59) |
| 13:30:58 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 13:32:07 | × | hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 240 seconds) |
| 13:32:44 | × | dschrempf quits (~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.5) |
| 13:34:57 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Ping timeout: 246 seconds) |
| 13:41:21 | → | jonathanx joins (~jonathan@h-178-174-176-109.a357.priv.bahnhof.se) |
| 13:42:46 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 13:44:08 | × | jonathanx_ quits (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 255 seconds) |
| 13:45:04 | → | nate3 joins (~nate@98.45.169.16) |
| 13:46:01 | <trisolaran> | is there a haskell equivalent of python's exec function which eval a string containing some statement? |
| 13:47:02 | <dminuoso> | No. |
| 13:47:14 | <dminuoso> | Well GHC and GHCi exposes some such primitives |
| 13:48:01 | <dminuoso> | But they're not for most use cases you can conceive |
| 13:49:34 | <c_wraith> | most significantly, the tools ghc provides for that require an entire ghc installation on the system running them. Which makes sense - how else is it going to have access to libraries? But it feels vastly different when otherwise you're producing executables that only require system libraries. |
| 13:49:36 | <geekosaur> | that's trivial to implement for an interpreter since it's already interpreting your program and can just add the string on top. for a compiled program it's much harder because it wouldn't have access to the compiled program's state |
| 13:49:50 | × | zfnmxt quits (~zfnmxt@2001:470:69fc:105::2b32) (Quit: Reconnecting) |
| 13:50:05 | → | zfnmxt joins (~zfnmxt@2001:470:69fc:105::2b32) |
| 13:50:14 | <geekosaur> | which is why it's not going to serve most of the use cases you would want |
| 13:50:21 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 13:51:04 | <arahael> | It's rare you'll want them, though. I don't see why eval should be a case a language should optimise for. |
| 13:51:05 | <geekosaur> | you can for example use the mueval package to get a relatively easy interface to do this, but it will run in its own context separate from your program's context |
| 13:51:28 | → | ystael joins (~ystael@user/ystael) |
| 13:51:46 | <dminuoso> | trisolaran: Perhaps more important: What problem are you trying to solve? |
| 13:51:48 | <c_wraith> | I've written a system to do hot reloading of code in development in a running process, but it's invasive to make it really work well. |
| 13:52:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 13:52:09 | <c_wraith> | and it only makes sense for development systems. no way would you want a production system to do that. |
| 13:52:12 | <dminuoso> | Facebook has done it too for sigma! |
| 13:52:39 | <dminuoso> | And that is in production. |
| 13:52:53 | <trisolaran> | arahael: it is rare. my use case is a c program is spitting out some statements such as A = 1; B=2; etc... and i want to pipe it into Haskell and directly set some variables to those values |
| 13:53:07 | <trisolaran> | I can of course parse the input but that's some extra work |
| 13:53:10 | <dminuoso> | trisolaran: Okay, so maintain a `Map String Int`, write a parser and use that. |
| 13:53:18 | <dminuoso> | Yes, but its a sane thing to do. |
| 13:53:35 | <arahael> | trisolaran: I'd probably suggest using an interpreter. |
| 13:53:44 | × | Infinite quits (~Infinite@49.39.118.146) (Ping timeout: 252 seconds) |
| 13:53:54 | <dminuoso> | Is the output under your control? If yes, chose a simple exchange format like JSON for which parsers already exist. |
| 13:54:11 | <arahael> | Or embed an interpreter, such as lua, javascript, python, or whatever. |
| 13:54:13 | <dminuoso> | If not, you will have serious security considerations when using something like `1eval` |
| 13:54:36 | <dminuoso> | And imbedding an entire interpreter just because you're too lazy to write a 10-20 line attoparsec parser... |
| 13:54:39 | <c_wraith> | I'd object that that isn't a use case. That's an implementation detail. |
| 13:54:41 | dminuoso | is not so sure about that |
| 13:54:47 | <trisolaran> | it's not a production system, just testing some quick thoughts |
| 13:54:59 | → | odnes_ joins (~odnes@5-203-218-239.pat.nym.cosmote.net) |
| 13:55:19 | × | odnes quits (~odnes@5-203-218-239.pat.nym.cosmote.net) (Read error: Connection reset by peer) |
| 13:55:30 | <trisolaran> | arahael: how to embed an interpreter ? |
| 13:55:30 | <geekosaur> | it's also complicated by the fact that you can't update variables in Haskell |
| 13:55:40 | × | zfnmxt quits (~zfnmxt@2001:470:69fc:105::2b32) (Quit: issued !quit command) |
| 13:55:49 | <geekosaur> | and embedding an interpreter won't help |
| 13:56:28 | <arahael> | trisolaran: I think you need to be clearer about your requirements before going the interpreter route. dminuoso's suggestion to write a parser is actually _easier_. |
| 13:56:45 | → | zfnmxt joins (~zfnmxt@2001:470:69fc:105::2b32) |
| 13:57:08 | <geekosaur> | agreed |
| 13:57:13 | <trisolaran> | arahael: i understand. i\m just being curious. i've never seen the usage of embedding an interpreter |
| 13:57:30 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 13:57:38 | <dminuoso> | trisolaran: Most use cases I know of revolve around providing runtime extensibility of behavior. |
| 13:57:40 | <geekosaur> | take a look at the mueval package on hackage, like I suggested earlier |
| 13:57:53 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 13:58:15 | <dminuoso> | trisolaran: For example World of Warcraft exposes a LUA API IIRC so users can customize their UI with custom lua programs. |
| 13:59:03 | <dminuoso> | So there either the client or the server embeds a LUA interpreter, feeds it with game data, evaluates user supplied user code, and even potentially uses output from said lua code. |
| 13:59:07 | <trisolaran> | geekosaur: ok that looks promising |
| 13:59:37 | <geekosaur> | (it's the same thing lambdabot uses to run "> " stuff) |
| 14:00:21 | <monochrom> | 99% of production systems came from, without change or fixing up loose ends, sketchy prototypes testing quick thoughts. |
| 14:01:00 | <trisolaran> | I'm thinking maybe template haskell could help |
| 14:01:12 | <trisolaran> | translating the string into some declarations |
| 14:01:54 | <monochrom> | template haskell is at compile time, not run time. |
| 14:02:35 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) (Ping timeout: 255 seconds) |
| 14:04:23 | × | dsrt^ quits (~dsrt@128-092-173-218.biz.spectrum.com) (Ping timeout: 255 seconds) |
| 14:04:40 | <dminuoso> | RuntimeTemplateHaskell should be a thing. |
| 14:05:17 | <dminuoso> | But seriously, the GHC API should provide sufficient utilities for that |
| 14:05:28 | <dminuoso> | 16:00:21 monochrom | 99% of production systems came from, without change or fixing up loose ends, sketchy prototypes testing quick thoughts |
| 14:05:31 | <dminuoso> | ^- this. |
| 14:07:03 | <dminuoso> | There is no such thing as "prototypes" in software development. A prototype is really what we name software before its in production. |
| 14:07:34 | <monochrom> | Linux version of Zoom is still in "beta" after like 2 years of pandemic. :) |
| 14:07:49 | → | Infinite joins (~Infinite@49.39.118.146) |
| 14:07:49 | <arahael> | monochrom: That's insane since it's all just electron anyway. |
| 14:08:37 | <monochrom> | Heh I'm more fundamental than that. "It from bits." It's all just information! |
| 14:09:31 | <dminuoso> | I for one am happy about electron, if thats the price for ensuring that *modern* software gets onto Linux as well as macOS so be it. |
| 14:10:04 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 14:10:08 | × | Infinite quits (~Infinite@49.39.118.146) (Client Quit) |
| 14:10:11 | <dminuoso> | And any crazy ram or CPU usage is irrelevant, I can compensate with 32GiB RAM and 12 physical cores. |
| 14:10:35 | <dminuoso> | This is #haskell after all, I need that much ram for GHC alone. |
| 14:10:42 | <monochrom> | haha |
| 14:11:21 | arahael | glares at dminuoso, but is otherwise unable to argue against it. |
| 14:14:47 | × | gurkenglas quits (~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de) (Ping timeout: 244 seconds) |
| 14:20:24 | → | Macbethwin_ joins (~chargen@D964062A.static.ziggozakelijk.nl) |
| 14:20:35 | × | xff0x quits (~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 255 seconds) |
| 14:24:09 | × | macbethwin quits (~chargen@d964062a.static.ziggozakelijk.nl) (Ping timeout: 276 seconds) |
| 14:24:33 | → | xff0x joins (~xff0x@b133147.ppp.asahi-net.or.jp) |
| 14:27:45 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 14:30:11 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 14:31:22 | × | spacenautx quits (~spacenaut@user/spacenautx) (Ping timeout: 258 seconds) |
| 14:33:16 | Macbethwin_ | is now known as socketx |
| 14:33:28 | → | spacenautx joins (~spacenaut@user/spacenautx) |
| 14:36:21 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds) |
| 14:38:59 | <zzz> | i *think* i have 2 versions of cabal installed, but not sure. one of them i installed with ghcup and that's the one i want to keep. can someone please point me to the relevant resource where i can see at what directory i should be looking? |
| 14:39:30 | → | coot joins (~coot@213.134.190.95) |
| 14:40:05 | → | Heffalump joins (~ganesh@urchin.earth.li) |
| 14:40:22 | <zzz> | does ghcup use ~/.cabal at all? |
| 14:40:26 | <Heffalump> | what's the easiest way to get auto-formatting on save in VSCode? I'm not too worried which formatter for now, I'd just like to try something out. |
| 14:41:49 | <maralorn> | Hls has multiple formatters built in. It works out of the box if hls runs. |
| 14:41:57 | <zzz> | Heffalump: try #vscode |
| 14:43:14 | <geekosaur> | zzz, ghcup itself does not use ~/.cabal but a cabal installed via ghcup will use it |
| 14:43:32 | <geekosaur> | if you have a cabal in ~/.cabal/bin you may want to remove it |
| 14:43:44 | <Heffalump> | oh, I see, it's a VSCode setting fundamentally, hls just provides the formatter |
| 14:43:58 | <aforemny> | Heffalump: make sure you have "format on save" checked in settings before trying to get it to work in a particular language. it being unchecked has bitten me before! |
| 14:46:09 | <zzz> | geekosaur: thank you |
| 14:48:37 | → | nate3 joins (~nate@98.45.169.16) |
| 14:49:59 | <Heffalump> | aforemny: I'm aiming to do it via .vscode/settings.json in the project, which I hope will have the desired effect. |
| 14:51:53 | <zzz> | ok so i have a lot of stuff in ~/.ghcup/ghc/{version}/lib/ghc-{version}/ a bunch of modules and stuff. but then i also have ~/.cabal/store/ghc-{version} which has a lot of apparently the same modules/packages/libraries (?). is this normal? |
| 14:52:52 | → | Guest61 joins (~Guest61@2605:a601:a615:f600:c831:8eee:a002:c1ce) |
| 14:53:03 | → | cfricke joins (~cfricke@user/cfricke) |
| 14:53:04 | <geekosaur> | cabal has the actual libs, ghc has the package database entries |
| 14:53:33 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 256 seconds) |
| 14:54:30 | <geekosaur> | but they shouldn't actually be the same because cabal v2+ manages its own package databases and exposes them to ghc only when required. *some* packages will be almost the same because you can sefely have multiple versions of e.g. bytestring, a version of which comes with ghc |
| 14:55:54 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 14:57:06 | → | shriekingnoise joins (~shrieking@201.231.16.156) |
| 14:57:55 | <zzz> | i seem t be fine then |
| 14:59:02 | <zzz> | thanks. after multiple installs i get confused |
| 14:59:21 | × | Guest61 quits (~Guest61@2605:a601:a615:f600:c831:8eee:a002:c1ce) (Quit: Client closed) |
| 15:01:18 | → | nahcetan joins (~nate@98.45.169.16) |
| 15:05:10 | × | z0k quits (~z0k@206.84.141.24) (Ping timeout: 240 seconds) |
| 15:07:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 15:11:36 | × | socketx quits (~chargen@D964062A.static.ziggozakelijk.nl) (Quit: Leaving) |
| 15:11:52 | × | ubert quits (~Thunderbi@p200300ecdf14f9c23828c143c9a6a09f.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 15:12:54 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 276 seconds) |
| 15:14:02 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 15:29:15 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 258 seconds) |
| 15:30:47 | → | Macbethwin joins (~chargen@D964062A.static.ziggozakelijk.nl) |
| 15:31:27 | × | cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds) |
| 15:32:06 | → | onion joins (~zzz@user/zero) |
| 15:32:18 | → | nate3 joins (~nate@98.45.169.16) |
| 15:37:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 15:37:36 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 15:38:42 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 15:42:16 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 15:42:29 | × | polezaivsani quits (~polezaivs@orangeshoelaces.net) (Ping timeout: 255 seconds) |
| 15:43:52 | <onion> | first time trying to make a simple ascii game in Haskell. is ncurses still the best option? |
| 15:45:28 | <[exa]> | onion: try Brick |
| 15:46:38 | × | Macbethwin quits (~chargen@D964062A.static.ziggozakelijk.nl) (Quit: Leaving) |
| 15:47:28 | <[exa]> | onion: (this is a pretty good read: https://samtay.github.io/posts/introduction-to-brick ) |
| 15:48:12 | → | euandreh joins (~euandreh@2804:14c:33:966c:2059:6e22:1326:6607) |
| 15:48:42 | × | mbuf quits (~Shakthi@122.173.78.94) (Quit: Leaving) |
| 15:57:21 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 15:58:38 | × | vysn quits (~vysn@user/vysn) (Ping timeout: 244 seconds) |
| 15:59:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 16:02:46 | → | ubert joins (~Thunderbi@p200300ecdf14f9c26d805298a2cb1499.dip0.t-ipconnect.de) |
| 16:05:04 | <onion> | thanks. i'll check it out |
| 16:05:45 | → | stackdroid18 joins (14094@user/stackdroid) |
| 16:05:45 | → | _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl) |
| 16:08:08 | × | ubert quits (~Thunderbi@p200300ecdf14f9c26d805298a2cb1499.dip0.t-ipconnect.de) (Quit: ubert) |
| 16:08:55 | → | zeenk joins (~zeenk@2a02:2f04:a104:ef00:10:581:f80f:b980) |
| 16:14:50 | → | cheater joins (~Username@user/cheater) |
| 16:15:34 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 16:17:47 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 16:18:35 | <maerwald> | onion: https://hackage.haskell.org/package/ansi-terminal |
| 16:19:05 | <maerwald> | and https://hackage.haskell.org/package/ansi-terminal-game |
| 16:19:47 | × | euandreh quits (~euandreh@2804:14c:33:966c:2059:6e22:1326:6607) (Ping timeout: 240 seconds) |
| 16:22:15 | <onion> | awesome |
| 16:24:45 | → | Infinite joins (~Infinite@49.39.116.72) |
| 16:25:08 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 16:26:42 | → | Guest5458 joins (~Guest54@modemcable048.16-160-184.mc.videotron.ca) |
| 16:31:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 16:32:08 | × | Infinite quits (~Infinite@49.39.116.72) (Ping timeout: 252 seconds) |
| 16:36:05 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 16:37:04 | → | joo-_ joins (~joo-_@172-105-65-159.ip.linodeusercontent.com) |
| 16:37:04 | × | joo-_ quits (~joo-_@172-105-65-159.ip.linodeusercontent.com) (Changing host) |
| 16:37:04 | → | joo-_ joins (~joo-_@fsf/member/joo--) |
| 16:37:50 | → | zebrag joins (~chris@user/zebrag) |
| 16:38:00 | → | zincy joins (~zincy@2a00:23c8:970c:4801:10b4:e123:1cab:7458) |
| 16:42:02 | × | fryguybob quits (~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) (Quit: leaving) |
| 16:43:23 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 16:45:31 | × | Guest5458 quits (~Guest54@modemcable048.16-160-184.mc.videotron.ca) (Quit: Client closed) |
| 16:45:43 | → | Guest58 joins (~Guest58@modemcable048.16-160-184.mc.videotron.ca) |
| 16:46:30 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) (Remote host closed the connection) |
| 16:48:35 | <Guest58> | i have a list [[1234, 4, 2]] |
| 16:48:35 | <Guest58> | how can i get a tuple from that list, taking only the second and the last element. |
| 16:48:36 | <Guest58> | From this [[1234, 4, 2]] to this : [(4, 2)] |
| 16:50:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 16:50:28 | <geekosaur> | I'd probably pattern match. `map (\[_,x,y] -> (x,y)) list` |
| 16:52:57 | <geekosaur> | > map (\[_,x,y] -> (x,y)) [[1234, 4, 2]] |
| 16:52:59 | <lambdabot> | [(4,2)] |
| 16:53:07 | → | Infinite joins (~Infinite@2409:4071:2196:4347:14b1:7c22:5447:96f2) |
| 16:55:52 | × | onion quits (~zzz@user/zero) (Quit: onion) |
| 16:56:18 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 16:57:48 | × | Infinite quits (~Infinite@2409:4071:2196:4347:14b1:7c22:5447:96f2) (Ping timeout: 252 seconds) |
| 16:58:57 | <lyle> | Is "Parallel and Concurrent Programming in Haskell" by Simon Marlow still a recommended book? I assume so, but wanted to ask just in case. |
| 16:59:14 | <geekosaur> | yes |
| 16:59:35 | <lyle> | Ok, about to hit "add to cart" |
| 17:00:39 | <geekosaur> | you do know it's available freely online? |
| 17:00:43 | <geekosaur> | @where parconc |
| 17:00:43 | <lambdabot> | https://www.safaribooksonline.com/library/view/parallel-and-concurrent/9781449335939/ |
| 17:00:51 | <lyle> | Um, no I didn't. |
| 17:00:59 | <lyle> | Thanks! |
| 17:02:38 | <Guest58> | geekosaur thank you so much ! |
| 17:03:27 | <lyle> | It |
| 17:04:22 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 17:08:09 | × | cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.5) |
| 17:17:20 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:18:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 17:18:48 | → | mvk joins (~mvk@2607:fea8:5ce3:8500::ba9a) |
| 17:19:08 | → | Guest17 joins (~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 17:20:08 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 17:22:50 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 17:24:00 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 17:25:26 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 17:28:36 | → | ec joins (~ec@gateway/tor-sasl/ec) |
| 17:28:42 | → | sirodoht joins (uid499766@id-499766.helmsley.irccloud.com) |
| 17:30:09 | → | Tuplanolla joins (~Tuplanoll@91-159-68-39.elisa-laajakaista.fi) |
| 17:31:21 | × | sirodoht quits (uid499766@id-499766.helmsley.irccloud.com) (Client Quit) |
| 17:31:47 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 240 seconds) |
| 17:32:30 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 17:35:36 | × | alp quits (~alp@user/alp) (Remote host closed the connection) |
| 17:35:56 | → | alp joins (~alp@user/alp) |
| 17:41:08 | <Guest58> | geekosaur back to your answer, assuming i have a list [[43525,3,2],[43615,2,2],[41111,1,2]] |
| 17:41:08 | <Guest58> | taking the second element and adding 15*i every time I map on the list (i is the index of each list) |
| 17:41:09 | <Guest58> | I want to get something like [(3,2),(17,2),(31,2)] |
| 17:41:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 17:42:25 | <geekosaur> | that one would be a fold instead of a map, since you need to track the index (Haskell lists are singly linked lists and don't really have a notion of an index) |
| 17:42:47 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 17:43:02 | × | alp quits (~alp@user/alp) (Ping timeout: 258 seconds) |
| 17:43:24 | <[exa]> | Guest58: you might also like `zipWith` for that purpose, and zip with `[0..]` |
| 17:43:26 | <tomsmeding> | personally I would zipWith [0..] here |
| 17:43:30 | <tomsmeding> | heh |
| 17:43:33 | <[exa]> | hf |
| 17:44:04 | <tomsmeding> | like, zipWith (\[a,b,c] i -> {- for you to fill in -}) theList [0..] |
| 17:45:26 | <geekosaur> | mm, yes, that'd work too |
| 17:45:32 | <[exa]> | that said, doing with foldr is honestly a much better exercise. :D |
| 17:47:21 | → | bgamari_ joins (~bgamari@68.238.49.109) |
| 17:48:32 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 17:48:58 | → | causal joins (~user@50.35.83.177) |
| 17:49:03 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:49:37 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 17:49:44 | <Guest58> | Thank you so much |
| 17:49:47 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 240 seconds) |
| 17:50:25 | → | econo joins (uid147250@user/econo) |
| 17:50:41 | × | bgamari quits (~bgamari@68.238.49.134) (Ping timeout: 252 seconds) |
| 17:51:18 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 17:51:55 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 17:54:00 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 17:56:52 | <EvanR> | @quote triplicate |
| 17:56:52 | <lambdabot> | No quotes match. Whoa. |
| 17:57:56 | <geekosaur> | @quote antiphony |
| 17:57:56 | <lambdabot> | No quotes match. My brain just exploded |
| 17:58:10 | <tomsmeding> | what are you doing to poor lambdabot |
| 17:59:19 | <geekosaur> | apparently our favorite quote went meta |
| 17:59:31 | <geekosaur> | @quote answeredyesterday |
| 17:59:31 | <lambdabot> | No quotes match. This mission is too important for me to allow you to jeopardize it. |
| 17:59:36 | <geekosaur> | @quote answered.*yesterday |
| 17:59:37 | <lambdabot> | dmwit says: Welcome to #haskell, where we answered your question yesterday. |
| 17:59:57 | geekosaur | wonders what happened to the .* the first time |
| 18:00:57 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 18:04:30 | → | coot joins (~coot@213.134.190.95) |
| 18:05:32 | × | coot quits (~coot@213.134.190.95) (Remote host closed the connection) |
| 18:05:42 | → | coot joins (~coot@213.134.190.95) |
| 18:06:18 | → | coot_ joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 18:06:51 | × | coot_ quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Remote host closed the connection) |
| 18:06:58 | → | coot_ joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 18:07:04 | × | ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
| 18:07:33 | × | coot_ quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Remote host closed the connection) |
| 18:07:48 | → | coot_ joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 18:08:17 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 18:09:04 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) (Remote host closed the connection) |
| 18:10:45 | × | coot quits (~coot@213.134.190.95) (Ping timeout: 256 seconds) |
| 18:11:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 18:12:23 | × | zincy quits (~zincy@2a00:23c8:970c:4801:10b4:e123:1cab:7458) (Remote host closed the connection) |
| 18:12:33 | × | coot_ quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Ping timeout: 258 seconds) |
| 18:14:33 | → | acidjnk joins (~acidjnk@p200300d0c7068b39d8af4d6b4faedbc4.dip0.t-ipconnect.de) |
| 18:16:54 | × | Igloo quits (~ian@matrix.chaos.earth.li) (Remote host closed the connection) |
| 18:17:17 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 255 seconds) |
| 18:18:27 | → | Igloo joins (~ian@matrix.chaos.earth.li) |
| 18:18:53 | → | zincy joins (~zincy@host86-160-236-152.range86-160.btcentralplus.com) |
| 18:19:57 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 18:20:09 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 18:29:12 | → | slack1256 joins (~slack1256@191.125.227.93) |
| 18:33:35 | → | Pickchea joins (~private@user/pickchea) |
| 18:38:22 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 18:41:05 | × | YoungFrog quits (~youngfrog@2a02:a03f:c21b:f900:445d:2ea0:2c8a:24db) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in) |
| 18:41:24 | → | YoungFrog joins (~youngfrog@2a02:a03f:c21b:f900:6013:240:b757:7b6f) |
| 18:41:49 | → | nate3 joins (~nate@98.45.169.16) |
| 18:42:29 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 256 seconds) |
| 18:45:24 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 18:46:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 18:46:27 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 246 seconds) |
| 18:46:36 | → | nahcetan joins (~nate@98.45.169.16) |
| 18:49:34 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 18:50:35 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 18:52:14 | → | alp joins (~alp@user/alp) |
| 18:53:09 | → | berberman joins (~berberman@user/berberman) |
| 18:54:17 | × | berberman_ quits (~berberman@user/berberman) (Ping timeout: 248 seconds) |
| 19:01:00 | × | zincy quits (~zincy@host86-160-236-152.range86-160.btcentralplus.com) (Remote host closed the connection) |
| 19:01:22 | → | ashln joins (~ashln@98.38.236.123) |
| 19:01:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 19:04:53 | <ashln> | is there any way to log when an IO action is lazily executed? I've tried inserting `<* (some log function)` into my pipeline, and while this preserves order, I don't think the resulting log time is monotonically increasing as the log progresses. |
| 19:05:46 | → | zincy joins (~zincy@2a00:23c8:970c:4801:10b4:e123:1cab:7458) |
| 19:07:21 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 19:08:05 | <byorgey> | ashln: not sure I understand what you're asking, there seems to be a bunch of context missing. Preserves the order of what? Also, a single log time can't be monotonically increasing in and of itself, I'm not sure which other log times you have in mind to compare to |
| 19:09:16 | <geekosaur> | also in general IO actions are not lazy (ignoring for the moment lazy I/O functions like `getContents`); instead they force evaluation of any lazy expressions involved |
| 19:09:27 | → | king_gs joins (~Thunderbi@187.201.188.90) |
| 19:10:42 | <ashln> | oh, I'm just blind - i misread a number. Sorry for the noise :)) |
| 19:10:44 | → | coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 19:10:50 | × | nahcetan quits (~nate@98.45.169.16) (Ping timeout: 255 seconds) |
| 19:10:50 | → | vysn joins (~vysn@user/vysn) |
| 19:11:16 | → | vorpuni joins (~pvorp@2001:861:3881:c690:a8fb:3878:c020:66f7) |
| 19:16:08 | → | rekahsoft joins (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) |
| 19:16:55 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 19:19:42 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds) |
| 19:19:49 | → | moonsheep joins (~user@user/moonsheep) |
| 19:20:49 | → | aliosablack joins (~chomwitt@2a02:587:dc0e:3e00:bc0d:a683:e7e9:901) |
| 19:21:03 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 19:21:04 | <moonsheep> | Are there any plans to bring accelerate back to stackage? It is in some old snapshots, but then I'm stuck using a slightly older GHC with no HLS support |
| 19:21:36 | <geekosaur> | you'd have to ask the maintainers of accelerate |
| 19:21:56 | × | chomwitt quits (~chomwitt@2a02:587:dc0e:3e00:bc0d:a683:e7e9:901) (Ping timeout: 258 seconds) |
| 19:22:14 | <moonsheep> | Hmm, thanks |
| 19:22:56 | <geekosaur> | you can still use it via extra-deps anyway |
| 19:23:00 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) (Remote host closed the connection) |
| 19:23:02 | <moonsheep> | Yeah, that's what I'm doingg |
| 19:23:08 | <Athas> | moonsheep: you can also try using cabal.project with index-state. In my experience it is (almost) as reliable as stackage. |
| 19:23:13 | <geekosaur> | stackage is nice but it can't list *every* package out there |
| 19:23:24 | <tomsmeding> | moonsheep: the maintainers of accelerate are (when using stack instead of cabal) also using extra-deps :p |
| 19:23:48 | → | polezaivsani joins (~polezaivs@orangeshoelaces.net) |
| 19:23:52 | <moonsheep> | Athas: is there a way to do that with hpack? |
| 19:24:09 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 19:24:09 | <Athas> | moonsheep: it is unrelated to hpack. cabal.project is a different file. |
| 19:24:28 | <moonsheep> | Ah my bad, I misread that as <project>.cabal |
| 19:24:57 | × | zincy quits (~zincy@2a00:23c8:970c:4801:10b4:e123:1cab:7458) (Remote host closed the connection) |
| 19:25:09 | <geekosaur> | and in any case even the stackage folks say you shouldn't use hpack any more |
| 19:25:15 | <Athas> | They do? |
| 19:25:18 | <moonsheep> | Why not? |
| 19:25:34 | <moonsheep> | I've been using it since the dawn of time and it has always served me welel |
| 19:25:54 | <sm> | I don't think they said don't use it |
| 19:26:06 | <Athas> | I also stopped using hpack some years ago when cabal finally added a few critical features, but stack always seemed very pro-hpack. |
| 19:26:51 | <telser_> | You shouldn't use hpack _only_ for libraries. That is in fact unsupported in stack for awhile now. |
| 19:26:54 | <geekosaur> | at the very least you should keep the enerated <pkg>.cabal. but there are cabal file features that will never be supported by hpack and if you start using them you can't use hpack any more |
| 19:26:56 | → | waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
| 19:27:15 | <moonsheep> | Yeah I always include the cabal files in my repos |
| 19:27:19 | <sm> | didnt they (he) just re-emphasize it's an optional thing and should not be mandated |
| 19:27:34 | <moonsheep> | Mandated or not, is there any harm to using it? |
| 19:27:53 | × | vysn quits (~vysn@user/vysn) (Ping timeout: 244 seconds) |
| 19:27:53 | <sm> | just commit the cabal file and everyone's happy |
| 19:27:55 | <moonsheep> | Besides lacking some features |
| 19:28:02 | <moonsheep> | sm: alright I'll keep that in mind |
| 19:28:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 19:28:14 | <geekosaur> | only the harm involved with yaml having some bad corner cases, I guess |
| 19:28:22 | <geekosaur> | (ambiguous parses) |
| 19:28:30 | <moonsheep> | I really like yaml tbh |
| 19:28:33 | geekosaur | doesn't trust yaml |
| 19:28:45 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 19:28:52 | <Athas> | I ditched hpack because you often can't avoid having the .cabal file as well, and having to keep two files is sync is just another point of failure. |
| 19:29:22 | → | hpc joins (~juzz@ip98-169-32-242.dc.dc.cox.net) |
| 19:29:28 | <sm> | moonsheep I think the main harm is added complexity if you didn't really need it, because your cabal file is simple. In more complex projects it's more worthwhile |
| 19:29:40 | <moonsheep> | Fair enough I guess |
| 19:30:50 | <telser_> | Having yaml is nice when bringing people on/removes a complaint of having something else to learn. |
| 19:30:54 | <moonsheep> | I just like the simplicity of hpack, you don't have to explicitly state the obvious in a lot of places, and yaml just feels more readable to me |
| 19:31:28 | <sm> | me too, so it's worthwhile for us |
| 19:31:38 | <geekosaur> | I don't find reading cabal files much different from reading Haskell code |
| 19:31:57 | <sm> | and we don't care about yamls corner cases since they don't affect us |
| 19:32:59 | <telser_> | Particularly for applications with module counts in the 4 digits, hpack is much nicer as an interface. |
| 19:33:34 | <telser_> | 4+ digits |
| 19:33:34 | × | chimp_ quits (~Psybur@c-76-123-45-25.hsd1.va.comcast.net) (Ping timeout: 244 seconds) |
| 19:33:42 | <sm> | thousands of modules ? yow |
| 19:34:02 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 19:34:58 | × | hpc quits (~juzz@ip98-169-32-242.dc.dc.cox.net) (Ping timeout: 258 seconds) |
| 19:35:01 | <moonsheep> | Alright, thanks everyone |
| 19:35:08 | × | trisolaran quits (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 255 seconds) |
| 19:36:36 | → | hpc joins (~juzz@ip98-169-32-242.dc.dc.cox.net) |
| 19:37:16 | → | Psybur joins (~Psybur@c-76-123-45-25.hsd1.va.comcast.net) |
| 19:39:20 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 19:43:18 | × | hpc quits (~juzz@ip98-169-32-242.dc.dc.cox.net) (Ping timeout: 276 seconds) |
| 19:44:51 | → | hpc joins (~juzz@ip98-169-32-242.dc.dc.cox.net) |
| 19:46:05 | → | tromp joins (~textual@dhcp-077-249-230-040.chello.nl) |
| 19:47:12 | × | Guest58 quits (~Guest58@modemcable048.16-160-184.mc.videotron.ca) (Ping timeout: 252 seconds) |
| 19:48:40 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 19:52:15 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 246 seconds) |
| 19:53:01 | × | coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
| 19:58:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 20:00:40 | × | lyle quits (~lyle@104.246.145.85) (Quit: Lost terminal) |
| 20:01:21 | → | notzmv joins (~zmv@user/notzmv) |
| 20:02:12 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 20:03:30 | × | `2jt quits (~jtomas@182.red-88-17-61.dynamicip.rima-tde.net) (Ping timeout: 240 seconds) |
| 20:03:35 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 20:03:51 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 20:07:41 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 20:08:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 20:08:47 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 20:09:56 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 20:13:50 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 20:13:50 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 20:14:40 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 260 seconds) |
| 20:15:49 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 20:16:20 | × | odnes_ quits (~odnes@5-203-218-239.pat.nym.cosmote.net) (Quit: Leaving) |
| 20:19:32 | → | Guest58 joins (~Guest58@modemcable048.16-160-184.mc.videotron.ca) |
| 20:24:34 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 20:25:26 | × | Unicorn_Princess quits (~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Remote host closed the connection) |
| 20:29:47 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 20:36:16 | → | nahcetan joins (~nate@98.45.169.16) |
| 20:36:23 | × | king_gs quits (~Thunderbi@187.201.188.90) (Read error: Connection reset by peer) |
| 20:37:44 | → | king_gs joins (~Thunderbi@2806:103e:29:ce73:832b:2b9c:b188:29da) |
| 20:38:40 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) (Remote host closed the connection) |
| 20:42:44 | × | _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection) |
| 20:43:52 | × | mvk quits (~mvk@2607:fea8:5ce3:8500::ba9a) (Ping timeout: 250 seconds) |
| 20:45:03 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 20:46:17 | → | nate3 joins (~nate@98.45.169.16) |
| 20:47:35 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 255 seconds) |
| 20:53:48 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 20:54:11 | <byorgey> | so say I have something like data-files: *.yaml in my .cabal file. When I add a new file that matches the pattern, it is made available to the newly built package as it should be. So far, so good. |
| 20:55:39 | <byorgey> | However, it seems like when I *delete* a file that matches the pattern, the file remains available to the package at runtime, as if the file got cached somewhere and cabal is only copying files that do match the pattern, rather than trying to sync the copies |
| 20:56:03 | <byorgey> | 'cabal clean' doesn't seem to make a difference. Any idea how to properly purge the old data-files? |
| 20:56:32 | <geekosaur> | I think you'd have to find and remove the package director under ~/cabal/store |
| 20:56:46 | <geekosaur> | (I didn't think cabal handled wildcards…) |
| 20:56:48 | <sclv> | if this is via "cabal install" that makes sense |
| 20:56:57 | <sclv> | cabal has wildcards only for data-files and the like |
| 20:57:07 | <sclv> | also its arguably weird behavior that deserves a ticket |
| 20:57:09 | <fendor[m]> | data-files can use wildcards, even `**/*.yaml` for example |
| 20:57:55 | <fendor[m]> | dont raise a ticket, people will use this as a reason why this feature should be removed 😄 |
| 20:57:59 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) (Remote host closed the connection) |
| 20:58:03 | <byorgey> | yes, in fact I am actually using something like scenarios/**/*.yaml |
| 20:58:09 | × | slack1256 quits (~slack1256@191.125.227.93) (Remote host closed the connection) |
| 20:58:26 | <byorgey> | but I don't think the fancy pattern is the cause of the behavior |
| 20:59:04 | <geekosaur> | I'd suspect the same behavior would exist even if it were explicitly listed |
| 20:59:08 | <geekosaur> | from the sound of it |
| 20:59:32 | <byorgey> | I suspect that too, let me try |
| 20:59:57 | <geekosaur> | and the package hash wouldn't change so that wouldn't come into play either |
| 21:00:39 | <fendor[m]> | with the explicit listing, I imagine the package hash changes, since it hashes the contents of the cabal file, right? |
| 21:01:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 21:01:38 | <geekosaur> | I thought only the parts in common with or directly affecting ghc's package db, which wouldn't include data files. hm |
| 21:01:56 | → | fendor joins (~fendor@178.115.49.232.wireless.dyn.drei.com) |
| 21:02:29 | <fendor[m]> | cabal definitely uses the last change time of cabal files, and likely the hash as well, to determine whether the cache is invalidated |
| 21:02:38 | <byorgey> | I can't find the package in .cabal/store/, which I guess makes sense since I haven't done 'cabal install', just building (via stack) |
| 21:02:47 | <byorgey> | where would the cached copies of the data files live? |
| 21:03:04 | → | trisolaran joins (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 21:03:05 | <fendor[m]> | if you build it via stack, why not call stack clean? |
| 21:03:14 | <fendor[m]> | should be in .stack-work |
| 21:03:48 | <byorgey> | I did stack clean, that didn't seem to help |
| 21:03:54 | × | forell quits (~forell@user/forell) (Ping timeout: 276 seconds) |
| 21:04:19 | <byorgey> | ah, I found them in .stack-work |
| 21:04:26 | → | forell joins (~forell@user/forell) |
| 21:04:28 | <fendor[m]> | make sure to hard-nuke .stack-work, e.g. `rm -rf` |
| 21:04:42 | <fendor[m]> | rm -rf .stack-work, to be precise |
| 21:06:46 | <fendor[m]> | now I am curious whether this is a stack or cabal bug! Likely still a cabal bug |
| 21:07:20 | <byorgey> | ok, nuking .stack-work worked |
| 21:07:37 | <byorgey> | let me try building directly with cabal |
| 21:11:02 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 260 seconds) |
| 21:12:27 | × | fendor quits (~fendor@178.115.49.232.wireless.dyn.drei.com) (Remote host closed the connection) |
| 21:12:45 | × | forell quits (~forell@user/forell) (Ping timeout: 246 seconds) |
| 21:13:48 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 21:17:17 | × | Guest58 quits (~Guest58@modemcable048.16-160-184.mc.videotron.ca) (Quit: Ping timeout (120 seconds)) |
| 21:20:57 | <byorgey> | hah, seems to be a stack issue. When I build directly with 'cabal install' it picks up on data files being deleted |
| 21:21:04 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 240 seconds) |
| 21:21:34 | × | gehmehgeh quits (~user@user/gehmehgeh) (Ping timeout: 240 seconds) |
| 21:21:45 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 21:23:57 | <EvanR> | the files were "found missing" heheheehee |
| 21:24:20 | → | mvk joins (~mvk@2607:fea8:5ce3:8500::ba9a) |
| 21:24:27 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 21:27:42 | <byorgey> | heh =) |
| 21:37:34 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds) |
| 21:38:21 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 21:47:42 | × | michalz quits (~michalz@185.246.204.125) (Remote host closed the connection) |
| 21:49:08 | × | zer0bitz quits (~zer0bitz@2001:2003:f444:8f00:fd05:2e75:91eb:6c90) (Ping timeout: 258 seconds) |
| 21:49:24 | × | nate3 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 21:53:17 | × | Ram-Z quits (~Ram-Z@li1814-254.members.linode.com) (Ping timeout: 255 seconds) |
| 21:57:12 | × | aliosablack quits (~chomwitt@2a02:587:dc0e:3e00:bc0d:a683:e7e9:901) (Ping timeout: 272 seconds) |
| 21:57:52 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 21:57:59 | → | chomwitt joins (~chomwitt@2a02:587:dc0e:3e00:bc0d:a683:e7e9:901) |
| 21:58:24 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 22:00:47 | → | Guest58 joins (~Guest58@modemcable048.16-160-184.mc.videotron.ca) |
| 22:01:51 | <Guest58> | [(3,2),(17,2),(50,3),(64,3)] how can i group this list by second element of tuples |
| 22:01:51 | <Guest58> | to get something like : [ [(3,2),(17,2)], [(50,3),(64,3)] ] |
| 22:02:28 | <monochrom> | Take a look at groupBy in Data.List |
| 22:02:44 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) (Ping timeout: 255 seconds) |
| 22:04:24 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 22:05:20 | × | acidjnk quits (~acidjnk@p200300d0c7068b39d8af4d6b4faedbc4.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
| 22:05:37 | × | Guest58 quits (~Guest58@modemcable048.16-160-184.mc.videotron.ca) (Client Quit) |
| 22:05:47 | → | Guest58 joins (~Guest58@modemcable048.16-160-184.mc.videotron.ca) |
| 22:16:29 | → | kenaryn joins (~aurele@89-88-44-27.abo.bbox.fr) |
| 22:17:52 | × | chomwitt quits (~chomwitt@2a02:587:dc0e:3e00:bc0d:a683:e7e9:901) (Ping timeout: 244 seconds) |
| 22:19:56 | × | perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Ping timeout: 244 seconds) |
| 22:20:17 | × | trisolaran quits (~ye@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 255 seconds) |
| 22:26:05 | → | vicfred joins (~vicfred@user/vicfred) |
| 22:27:37 | → | pavonia joins (~user@user/siracusa) |
| 22:29:59 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:8199:e7da:e3d1:110) |
| 22:31:59 | × | dextaa quits (~DV@user/dextaa) (Ping timeout: 255 seconds) |
| 22:33:17 | → | perrierjouet joins (~perrier-j@62.182.99.39) |
| 22:38:43 | → | dextaa joins (~DV@user/dextaa) |
| 22:42:20 | × | spacenautx quits (~spacenaut@user/spacenautx) (Quit: WeeChat 3.0) |
| 22:43:39 | <Guest58> | Back to my question : |
| 22:43:39 | <Guest58> | [(3,2),(17,2),(50,3),(64,3)] how can i group this list by second element of tuples |
| 22:43:40 | <Guest58> | to get something like : [ [(3,2),(17,2)], [(50,3),(64,3)] ] |
| 22:43:54 | <Guest58> | I tried this function : |
| 22:43:54 | <Guest58> | grouperElem :: [(Int,Int)] -> [[(Int,Int)]] |
| 22:43:55 | <Guest58> | grouperElem myList = groupBy (\x y -> snd x == snd y) myList |
| 22:44:37 | <Guest58> | and i read the Data.list.groupBy documentation, can someone show me where the error is ? |
| 22:51:24 | <dsal> | :t groupBy |
| 22:51:26 | <lambdabot> | (a -> a -> Bool) -> [a] -> [[a]] |
| 22:52:21 | <monochrom> | > groupBy (\x y -> snd x == snd y) [(3,2),(17,2),(50,3),(64,3)] |
| 22:52:25 | <lambdabot> | [[(3,2),(17,2)],[(50,3),(64,3)]] |
| 22:52:32 | <monochrom> | worksforme |
| 22:56:29 | → | indiana-bones joins (~indignant@23.27.44.157) |
| 22:56:37 | <Guest58> | > groupBy (\x y -> snd x == snd y) [(3,2),(17,2),(50,3),(64,3)] |
| 22:56:40 | <lambdabot> | [[(3,2),(17,2)],[(50,3),(64,3)]] |
| 22:56:52 | <Guest58> | that'as weird it doesn't work on my ghci terminal |
| 22:57:05 | <Guest58> | by the way thank you so much for the help |
| 22:58:08 | <Guest58> | is the problem comes from the import ? |
| 22:59:34 | <geekosaur> | what error do you get in your ghci? |
| 22:59:46 | <Guest58> | it works now i added the import Data.Listà |
| 22:59:55 | <Guest58> | import Data.List* |
| 23:00:27 | <Guest58> | the error was : |
| 23:00:28 | → | vysn joins (~vysn@user/vysn) |
| 23:00:28 | <Guest58> | <interactive>:3:1: error: |
| 23:00:28 | <Guest58> | Variable not in scope: |
| 23:00:29 | <Guest58> | groupBy :: ((a0, a2) -> (a1, a2) -> Bool) -> [(a3, b0)] -> t |
| 23:00:41 | <Guest58> | but when i added import Data.List |
| 23:00:46 | <Guest58> | it works perfectly |
| 23:01:29 | × | king_gs quits (~Thunderbi@2806:103e:29:ce73:832b:2b9c:b188:29da) (Quit: king_gs) |
| 23:06:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 23:08:10 | <elvishjerricco> | I remember a few years ago someone managed to make a parallelized parser *mostly in Haskell* by writing a bit of C code that used vector instructions to basically parse an individual chunk as though the state machine had started in all possible states. IIRC they were demonstrating a simplified version of a paper that used.... AVX 512 (maybe?) to parse something much more complicated in the same way |
| 23:08:32 | <elvishjerricco> | Anyone happen to have a link to the post about this? I can't seem to find it |
| 23:08:35 | × | zeenk quits (~zeenk@2a02:2f04:a104:ef00:10:581:f80f:b980) (Quit: Konversation terminated!) |
| 23:12:21 | <dolio> | I don't have a link, but that sounds like something edwardk would do. |
| 23:13:42 | <elvishjerricco> | It does but I *don't think* it was him |
| 23:14:34 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 23:21:35 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 23:22:17 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Client Quit) |
| 23:22:27 | × | vysn quits (~vysn@user/vysn) (Ping timeout: 240 seconds) |
| 23:22:34 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 23:36:42 | → | littlebo1eep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 23:38:04 | × | littlebobeep quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
| 23:38:35 | × | alp quits (~alp@user/alp) (Ping timeout: 255 seconds) |
| 23:46:34 | → | holmes joins (~holmes@user/holmes) |
| 23:46:47 | × | mokee quits (~mokee@37.228.215.148) (Remote host closed the connection) |
| 23:47:26 | <jean-paul[m]> | I read "function application has the highest precedence". But what precedence is that? Is it 10? 100? Is it a value not expressable as an Int / Integer / Num which is just greater than any Int / Integer / Num? |
| 23:47:38 | <Bulby[m]> | 0-9. so 9 |
| 23:47:51 | <jean-paul[m]> | Aha |
| 23:48:13 | <geekosaur> | actually, if you extend the precedence system to cover it then function application is 10 and record update syntax is 11 |
| 23:48:17 | <Bulby[m]> | altho function application (spaces right?) may be special in that it's even higher |
| 23:48:20 | → | Guest13 joins (~Guest13@136.56.140.2) |
| 23:48:58 | <jean-paul[m]> | Oho |
| 23:49:48 | <Guest13> | Why is `&` infixl 1 rather than infixr 1? `y & x & f` seems more useful than `y & f & g`... |
| 23:49:49 | <jean-paul[m]> | So this explains why `foo . bar x` is `foo . (bar x)` and not `(foo . bar) x` right? |
| 23:50:07 | <geekosaur> | jean-paul[m], yes |
| 23:50:11 | <Bulby[m]> | i don't understand associativity enough to understand that |
| 23:50:59 | <hpc> | Guest13: as in (f x y) rather than f (g x)? |
| 23:51:11 | <hpc> | Guest13: same reason we like (.) over ($) |
| 23:51:12 | <Guest13> | hpc: exactly. |
| 23:51:18 | <hpc> | function composition is the way |
| 23:51:36 | <Guest13> | But `&` is application, not composition. |
| 23:52:25 | <Guest13> | If you want reverse function composition, you need to use `>>>` or `<&>`. |
| 23:54:40 | <hpc> | hmm, maybe to mimic F#? |
| 23:56:17 | × | Tuplanolla quits (~Tuplanoll@91-159-68-39.elisa-laajakaista.fi) (Quit: Leaving.) |
| 23:56:18 | <Guest13> | Wonder if there's still room for a tightly binding, single character reverse application operator. |
| 23:56:42 | <Bulby[m]> | good luck finding one on a normal keyboard |
| 23:57:09 | <Guest13> | Eh, I do most of my Haskell programming on my phone anyway... |
| 23:57:20 | <Bulby[m]> | 😟 |
| 23:57:55 | → | littlebobeep joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
All times are in UTC on 2022-06-02.