Logs on 2022-07-15 (liberachat/#haskell)
| 00:07:10 | × | gurkenglas quits (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) (Ping timeout: 240 seconds) |
| 00:10:51 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 00:15:03 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Read error: Connection reset by peer) |
| 00:15:03 | × | winny quits (~weechat@user/winny) (Remote host closed the connection) |
| 00:15:03 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Read error: Connection reset by peer) |
| 00:15:21 | × | Tuplanolla quits (~Tuplanoll@91-159-69-97.elisa-laajakaista.fi) (Quit: Leaving.) |
| 00:15:32 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 00:15:34 | → | winny joins (~weechat@user/winny) |
| 00:19:32 | → | NaturalNumber joins (~monadam@137.229.82.64) |
| 00:19:32 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 00:21:19 | × | NaturalNumber123 quits (~monadam@137.229.82.64) (Ping timeout: 272 seconds) |
| 00:23:02 | × | chomwitt quits (~chomwitt@2a02:587:dc0d:4a00:5f16:ac72:f625:5e79) (Ping timeout: 272 seconds) |
| 00:23:30 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds) |
| 00:26:05 | → | mikoto-chan joins (~mikoto-ch@d55hl97hl1tfww5gtby-4.rev.dnainternet.fi) |
| 00:26:21 | → | nate4 joins (~nate@98.45.169.16) |
| 00:26:35 | → | mvk joins (~mvk@2607:fea8:5ce3:8500::909a) |
| 00:29:04 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 00:30:40 | × | pmarg quits (~pmarg@2a01:799:159f:9b00:adb4:fb66:cf74:dbd4) (Remote host closed the connection) |
| 00:30:59 | <Axman6> | > map sort $ permutations [0/0, 1, 0/0, -1] |
| 00:31:01 | <lambdabot> | [[-1.0,NaN,1.0,NaN],[-1.0,NaN,NaN,1.0],[-1.0,NaN,1.0,NaN],[-1.0,NaN,NaN,1.0]... |
| 00:31:22 | <Axman6> | > all (== sort [0/0, 1, 0/0, -1]) $ map sort $ permutations [0/0, 1, 0/0, -1] |
| 00:31:24 | <lambdabot> | False |
| 00:31:27 | <Axman6> | D: |
| 00:33:35 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 00:33:43 | <hpc> | > floor (0/0) |
| 00:33:45 | <lambdabot> | -269653970229347386159395778618353710042696546841345985910145121736599013708... |
| 00:33:50 | <Axman6> | oh right. that equality won't work =) Thanks NaN |
| 00:34:04 | <hpc> | floats are terrible |
| 00:34:41 | <geekosaur> | my favorite NaN story is still http://calculist.blogspot.com/2006/02/nancy-typing.html |
| 00:35:13 | geekosaur | wonders if that should work as https these days… |
| 00:35:42 | × | quarkyalice_ quits (~alice@user/quarkyalice/x-8092822) (Remote host closed the connection) |
| 00:35:47 | <geekosaur> | yes, it turns out |
| 00:35:53 | <geekosaur> | just an ancient bookmark |
| 00:41:01 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5) |
| 00:42:56 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:a9e5:8234:e3a4:dc0e) (Remote host closed the connection) |
| 00:43:40 | <hpc> | that quirk of perl always gets people |
| 00:43:48 | <hpc> | and for extra fun, it's the opposite of in bash |
| 00:43:59 | <hpc> | == in bash is stringy, and numbery in perl |
| 00:44:57 | × | alp quits (~alp@user/alp) (Ping timeout: 244 seconds) |
| 00:50:09 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 00:51:16 | <Axman6> | I'm annoyed with myself for not seeing where that article was going sooner; I assumed Nancy was just a cute name for something involving NaNs. Nice story |
| 00:51:50 | × | dsrt^ quits (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) (Ping timeout: 240 seconds) |
| 00:52:22 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 00:53:11 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 00:54:56 | × | mikoto-chan quits (~mikoto-ch@d55hl97hl1tfww5gtby-4.rev.dnainternet.fi) (Read error: Connection reset by peer) |
| 00:59:20 | → | lemonsnicks joins (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) |
| 01:00:06 | × | lemonsni- quits (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (Ping timeout: 276 seconds) |
| 01:01:50 | <jackdk> | Does this newtype exist anywhere? `newtype P a b = P (a -> a -> b)`; `instance Profunctor p` |
| 01:05:01 | × | xff0x quits (~xff0x@2405:6580:b080:900:85b3:13a9:d157:738a) (Ping timeout: 272 seconds) |
| 01:07:44 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 01:09:12 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 276 seconds) |
| 01:10:42 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:16:50 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:18:57 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 272 seconds) |
| 01:19:41 | → | dsrt^ joins (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) |
| 01:19:45 | → | NaturalNumber123 joins (~monadam@137.229.82.64) |
| 01:22:51 | × | NaturalNumber quits (~monadam@137.229.82.64) (Ping timeout: 276 seconds) |
| 01:22:59 | → | NaturalNumber joins (~monadam@137.229.82.64) |
| 01:23:17 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 01:24:30 | × | NaturalNumber123 quits (~monadam@137.229.82.64) (Ping timeout: 240 seconds) |
| 01:25:05 | → | NaturalNumber123 joins (~monadam@137.229.82.64) |
| 01:27:32 | × | NaturalNumber quits (~monadam@137.229.82.64) (Ping timeout: 255 seconds) |
| 01:34:21 | → | nate4 joins (~nate@98.45.169.16) |
| 01:34:50 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 240 seconds) |
| 01:37:46 | × | waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 272 seconds) |
| 01:39:15 | <jackdk> | Also, is there an optic that represents a function f and its section, or f and its retraction, rather than a true isomorphism? |
| 01:40:18 | × | machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 240 seconds) |
| 01:40:29 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 272 seconds) |
| 01:42:40 | × | NaturalNumber123 quits (~monadam@137.229.82.64) (Remote host closed the connection) |
| 01:44:49 | → | xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
| 01:49:09 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 01:50:10 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 01:50:34 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 244 seconds) |
| 01:52:16 | <jackdk> | Also also, is anyone aware of a way to get an indexed fold or traversal out of `[(a, b)]` that treats `a` as its index? |
| 01:58:03 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 01:58:53 | × | zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection) |
| 01:59:56 | → | zaquest joins (~notzaques@5.130.79.72) |
| 02:04:04 | <jackdk> | I suppose I should stop X-Y probleming this channel. Here's what I'm trying to help a colleague with: given `f :: a -> a -> b` and `i :: Iso s t a b`, is there a compact way to create `g :: s -> s -> t`? Best I've found is `withIso i $ \sa bt -> curry $ bt . uncurry f . join bimap sa` or `withIso i $ \sa bt s1 s2 -> bt $ f (sa s1) (sa s2)`. |
| 02:04:32 | × | EvanR quits (~EvanR@user/evanr) (Remote host closed the connection) |
| 02:04:52 | → | EvanR joins (~EvanR@user/evanr) |
| 02:07:07 | → | frost joins (~frost@user/frost) |
| 02:08:00 | <dibblego> | withIso i $ \sa bt s1 s2 -> bt (on f sa s1 s2) |
| 02:09:43 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 02:10:32 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 02:13:49 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 02:14:10 | × | _xor quits (~xor@74.215.182.83) (Read error: Connection reset by peer) |
| 02:14:30 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds) |
| 02:16:38 | × | gentauro quits (~gentauro@user/gentauro) (Ping timeout: 240 seconds) |
| 02:16:56 | → | lys joins (sid194105@user/lys) |
| 02:17:30 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 02:18:01 | → | nate4 joins (~nate@98.45.169.16) |
| 02:21:57 | × | lambdabot quits (~lambdabot@haskell/bot/lambdabot) (Remote host closed the connection) |
| 02:22:04 | → | lambdabot joins (~lambdabot@silicon.int-e.eu) |
| 02:22:04 | × | lambdabot quits (~lambdabot@silicon.int-e.eu) (Changing host) |
| 02:22:04 | → | lambdabot joins (~lambdabot@haskell/bot/lambdabot) |
| 02:22:50 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 02:23:38 | → | gentauro joins (~gentauro@user/gentauro) |
| 02:24:37 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 02:24:45 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 02:25:18 | × | td_ quits (~td@muedsl-82-207-238-204.citykom.de) (Ping timeout: 240 seconds) |
| 02:27:23 | → | td_ joins (~td@muedsl-82-207-238-202.citykom.de) |
| 02:32:14 | × | acidjnk_new3 quits (~acidjnk@p200300d6e7058608dd2acf5cdcaee246.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
| 02:34:08 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 02:36:53 | <jackdk> | thanks dibblego , still feels like there should be a simpler way to do this somewhere |
| 02:37:16 | ← | lys parts (sid194105@user/lys) () |
| 02:39:37 | → | mikoto-chan joins (~mikoto-ch@d55hl97hl1tfww5gtby-4.rev.dnainternet.fi) |
| 02:39:47 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:43:22 | <somniad> | silly small question, I know you can do `cabal run` but how do you actually specify the location of the built executable? I've tried searching cabal's docs but I must be using the wrong words or otherwise screwing something up |
| 02:44:02 | <dibblego> | you shouldn't have to |
| 02:45:05 | <somniad> | is it somewhere obvious and I'm not seeing it? |
| 02:45:12 | × | mzan quits (~quassel@mail.asterisell.com) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 02:45:13 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 02:46:29 | → | mzan joins (~quassel@mail.asterisell.com) |
| 02:48:32 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Ping timeout: 255 seconds) |
| 02:48:49 | <dibblego> | does it run if you use cabal run? |
| 02:49:40 | <somniad> | okay so I *found the executable* but it's so deep in really weird folders that I thought it must have been looping with a symlink and I wasn't noticing |
| 02:50:14 | <somniad> | and yes, it does |
| 02:53:54 | → | inversed joins (~inversed@05412f44.skybroadband.com) |
| 02:56:34 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 268 seconds) |
| 02:58:10 | <dibblego> | why do you need to know the location of the exe? |
| 03:04:24 | × | bajskorfven00 quits (~bajskorfv@90-231-13-185-no3430.tbcn.telia.com) (Quit: toodle-oo!) |
| 03:06:01 | × | dostoevsky quits (~5c42c5384@user/dostoevsky) (Quit: Ping timeout (120 seconds)) |
| 03:09:11 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 03:10:20 | → | russruss joins (~russruss@my.russellmcc.com) |
| 03:10:57 | → | nate4 joins (~nate@98.45.169.16) |
| 03:12:09 | → | bitmapper joins (uid464869@id-464869.lymington.irccloud.com) |
| 03:12:49 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: Exeunt juan@acm.org) |
| 03:15:57 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 03:15:59 | × | dsrt^ quits (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) (Ping timeout: 255 seconds) |
| 03:23:00 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection) |
| 03:23:53 | <somniad> | dibblego: sorry for late response, I was curious how big it was and also wanted to try passing arguments to it - though I imagine I can do that second one with cabal |
| 03:24:51 | → | dsrt^ joins (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) |
| 03:29:14 | × | mikoto-chan quits (~mikoto-ch@d55hl97hl1tfww5gtby-4.rev.dnainternet.fi) (Ping timeout: 268 seconds) |
| 03:29:38 | → | dos__^^ joins (~user@user/dos/x-1723657) |
| 03:29:50 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 03:30:21 | <Axman6> | does cabal run which myExe work? I can't remember how run works |
| 03:31:05 | <sclv> | use cabal list-bin |
| 03:31:41 | <sclv> | to get the full path |
| 03:31:44 | <Axman6> | ah nice |
| 03:32:04 | × | dos__^^ quits (~user@user/dos/x-1723657) (Remote host closed the connection) |
| 03:33:09 | → | dos__^^ joins (~user@user/dos/x-1723657) |
| 03:38:54 | → | bajskorfven00 joins (~bajskorfv@90-231-13-185-no3430.tbcn.telia.com) |
| 03:41:05 | <somniad> | ah,neat |
| 03:43:10 | × | dsrt^ quits (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) (Ping timeout: 240 seconds) |
| 03:55:14 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 03:58:04 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:01:18 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds) |
| 04:02:26 | → | nate4 joins (~nate@98.45.169.16) |
| 04:06:50 | × | mvk quits (~mvk@2607:fea8:5ce3:8500::909a) (Ping timeout: 255 seconds) |
| 04:06:58 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 244 seconds) |
| 04:17:36 | <jackdk> | ah noice |
| 04:28:08 | × | hpc quits (~juzz@ip98-169-32-242.dc.dc.cox.net) (Ping timeout: 272 seconds) |
| 04:35:15 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 04:37:15 | → | alp joins (~alp@user/alp) |
| 04:39:16 | → | hpc joins (~juzz@ip98-169-32-242.dc.dc.cox.net) |
| 04:51:20 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 04:51:30 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 04:54:00 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 05:00:11 | × | monochrom quits (trebla@216.138.220.146) (Quit: NO CARRIER) |
| 05:03:07 | × | phma quits (phma@2001:5b0:211f:fc78:8858:65c6:c56c:d940) (Read error: Connection reset by peer) |
| 05:05:40 | → | phma joins (phma@2001:5b0:211f:fc78:8858:65c6:c56c:d940) |
| 05:07:50 | → | _xor joins (~xor@74.215.182.83) |
| 05:12:06 | → | mbuf joins (~Shakthi@122.165.55.71) |
| 05:13:04 | → | monochrom joins (trebla@216.138.220.146) |
| 05:13:14 | → | yauhsien joins (~Yau-Hsien@61-231-21-122.dynamic-ip.hinet.net) |
| 05:20:04 | × | son0p quits (~ff@181.136.122.143) (Ping timeout: 272 seconds) |
| 05:21:28 | × | nek0 quits (~nek0@2a01:4f8:222:2b41::12) (Quit: The Lounge - https://thelounge.chat) |
| 05:23:50 | → | nek0 joins (~nek0@2a01:4f8:222:2b41::12) |
| 05:24:00 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 05:27:13 | × | somniad quits (~gigabitte@098-127-010-012.res.spectrum.com) (Quit: Leaving) |
| 05:28:13 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 05:33:42 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 264 seconds) |
| 05:34:00 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 05:43:18 | → | coot joins (~coot@213.134.190.95) |
| 05:43:46 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 05:46:29 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 05:51:15 | → | _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl) |
| 06:03:01 | × | toluene quits (~toluene@user/toulene) (Quit: Ping timeout (120 seconds)) |
| 06:04:32 | → | toluene joins (~toluene@user/toulene) |
| 06:10:43 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 06:10:44 | → | Nolrai joins (~Nolrai@c-73-240-99-51.hsd1.or.comcast.net) |
| 06:16:24 | <Nolrai> | So stack and Haskell Language Server seem not to work together, should I learn to use the "cabal" tool? |
| 06:16:54 | <Axman6> | I think irrespective of the first part of that sentense you should learn to use cabal |
| 06:19:09 | × | mima quits (~mmh@aftr-62-216-210-53.dynamic.mnet-online.de) (Ping timeout: 272 seconds) |
| 06:20:22 | → | nate4 joins (~nate@98.45.169.16) |
| 06:20:22 | × | nek0 quits (~nek0@2a01:4f8:222:2b41::12) (Quit: The Lounge - https://thelounge.chat) |
| 06:23:21 | <Nolrai> | Hmm. |
| 06:23:27 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 06:23:29 | <Nolrai> | Well okay. |
| 06:24:56 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 244 seconds) |
| 06:28:11 | <Athas> | Nolrai: I agree; cabal is better than stack nowadays. |
| 06:28:35 | <Athas> | It has a slightly higher startup cost, because it doesn't install GHC for you, but I think it otherwise works better with modern tooling. |
| 06:28:57 | <Axman6> | which is a moot point with ghcup these days |
| 06:28:59 | <Athas> | By the way, does anyone know if it's possible for cabal to produce timings for how long it takes to compile the various modules in my program? |
| 06:29:18 | <Axman6> | I'm sure there are GHC flags you can pass |
| 06:33:58 | × | tcard quits (~tcard@p945242-ipngn9701hodogaya.kanagawa.ocn.ne.jp) (Quit: Leaving) |
| 06:34:13 | → | ec joins (~ec@gateway/tor-sasl/ec) |
| 06:34:13 | × | dextaa quits (~DV@user/dextaa) (Read error: Connection reset by peer) |
| 06:35:00 | → | nek0 joins (~nek0@2a01:4f8:222:2b41::12) |
| 06:36:14 | → | dextaa joins (~DV@user/dextaa) |
| 06:36:24 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 06:37:44 | → | christiansen joins (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) |
| 06:38:50 | × | _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection) |
| 06:39:17 | → | tcard joins (~tcard@p945242-ipngn9701hodogaya.kanagawa.ocn.ne.jp) |
| 06:45:11 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 06:51:02 | → | yauhsien_ joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 06:52:49 | × | Nolrai quits (~Nolrai@c-73-240-99-51.hsd1.or.comcast.net) (Remote host closed the connection) |
| 06:55:22 | → | Tuplanolla joins (~Tuplanoll@91-159-69-97.elisa-laajakaista.fi) |
| 07:04:05 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 07:04:45 | × | yauhsien_ quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Ping timeout: 272 seconds) |
| 07:09:39 | → | fserucas joins (~fserucas@1.75.114.89.rev.vodafone.pt) |
| 07:09:52 | × | fserucas quits (~fserucas@1.75.114.89.rev.vodafone.pt) (Client Quit) |
| 07:10:07 | → | fserucas joins (~fserucas@1.75.114.89.rev.vodafone.pt) |
| 07:10:20 | → | PiDelport joins (uid25146@id-25146.lymington.irccloud.com) |
| 07:15:05 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 07:21:22 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 07:23:50 | → | gensyst joins (gensyst@user/gensyst) |
| 07:24:29 | <gensyst> | Hi, if I have just a binary (executable) GHC compiled with -O2, I can be certain it can't be reverse engineered to the Haskell code right? |
| 07:24:54 | <Athas> | You can never be certain, but I don't think decompiling Haskell is easy at all. |
| 07:25:08 | <gensyst> | Athas, comments and types will definitely be gone? |
| 07:25:30 | <Axman6> | Planning to cheat on an assignment? XD |
| 07:25:31 | <Athas> | Yes, but remember to use 'strip' to remove symbols if you're worried. I don't know how much GHC leaves in my default. |
| 07:25:45 | <Athas> | Comments _definitely_ gone; that's the case for any language. |
| 07:26:35 | <Hecate> | https://dogbolt.org/ |
| 07:26:38 | <Hecate> | let's find out! |
| 07:26:48 | <Axman6> | running strings on the app afterwards will reveal a lot about what's left. chucking it in something like Ghidra would tell you what the code actually looks like. GHC's output is _extremely_ confusing to decompilation tools - it would be perfect for writing obfuscated malware IMO |
| 07:27:07 | <Axman6> | godbolt.org* |
| 07:27:18 | <Axman6> | oh, that's actually a thing, amazing |
| 07:27:31 | <Axman6> | I've spent the last three days deep in godbolt.org |
| 07:27:51 | <gensyst> | Athas, can you find any strip option here? https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/intro.html |
| 07:27:53 | <Athas> | The binary code produced by GHC is absolutely littered with indirect calls. I think it would be a nightmare to decompile. |
| 07:28:02 | <Axman6> | Good luck getting the HAskell binary under 2MB to test it |
| 07:28:07 | <Hecate> | expect that a 14 lines program compiles to 3.2MB here, so fuck me |
| 07:28:10 | <Athas> | gensyst: 'strip' is a standard Unix tool, not a part of GHC. You likely already have it installed. |
| 07:28:16 | <gensyst> | ah! |
| 07:28:21 | <Hecate> | although if I strip it, it's 756k |
| 07:28:24 | <Hecate> | WHAT THE FUCK |
| 07:28:31 | <Hecate> | WHAT DO WE STORE IN THE STRIPPED SECTIONS |
| 07:28:33 | <[exa]> | Hecate: static linking |
| 07:28:37 | → | son0p joins (~ff@181.136.122.143) |
| 07:28:42 | <[exa]> | Hecate: ah and the debug info and symbols |
| 07:28:44 | <Axman6> | Aren't you a GHC dev? :p |
| 07:28:52 | <[exa]> | lol |
| 07:28:55 | <Athas> | Hecate: if you pass Haskell helloworld to a decompiler, won't 99% of the output be the Haskell RTS? |
| 07:29:06 | <Hecate> | Axman6: I am a developer for the GHC project, but I'm not a compiler engineer |
| 07:29:10 | <Athas> | gensyst: it will probably be very obvious that the program was originally written in Haskell. |
| 07:29:15 | <albet70> | is anyone using scotty? how to upload a large file with chunked data to scotty? |
| 07:29:27 | <Hecate> | Athas: well, now that I have a reasonably-sized binary I can see |
| 07:29:59 | <Hecate> | https://dogbolt.org/?id=2c3b3183-72b0-4bb3-966b-c3678e0d79ce |
| 07:30:04 | <[exa]> | albet70: you need a piece of javascript that manages it on the browser side. There are pretty nice ones for react and all other frameworks |
| 07:31:42 | <Athas> | Hecate: what's up with those "tailcalls" in BinaryNinja? |
| 07:32:10 | <gensyst> | Athas, stripping reduced size from 3MB to 1.5MB |
| 07:32:16 | <gensyst> | so now, how to automatically strip? |
| 07:32:19 | <gensyst> | possible in cabal? |
| 07:32:23 | <Hecate> | Athas: yeah I was wondering as well |
| 07:32:44 | <gensyst> | (is that not done by default for profiling reasons?) |
| 07:33:23 | <Hecate> | no, profiling is its own set of options |
| 07:33:48 | <Hecate> | that being said if we had a "release" mode in cabal, we would strip and upx the shit out of the binary ;-D |
| 07:34:31 | <Axman6> | Hecate: this is amazing, thanks for the link. I have been getting a long way with godbolt.org and llvm-mca |
| 07:35:45 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 07:36:09 | → | cfricke joins (~cfricke@user/cfricke) |
| 07:36:17 | <Axman6> | Back in the day I managed to ship a haskell app in an 8MB docker container doing things like that and statically linking |
| 07:36:26 | <Hecate> | Axman6: you're welcome :) |
| 07:36:35 | <Hecate> | yes, alpine linux as a compilation host is 👍 |
| 07:36:47 | <Axman6> | Athas: Why wouldn't you expect to see lots of tailcalls? GHC is all about tail calls, everything is a tail call |
| 07:36:49 | <gensyst> | So even if something could be reverse engineered (unlikely to begin with), it's still useless/unreadable because types are gone right? |
| 07:37:32 | <Axman6> | if you know what you're looking at you might be able to make some inferences, and IIRC the symbols tell you a hell of a lot, but I'm not sure how much of that is stripped when you strip |
| 07:37:36 | <Hecate> | it depends? If you are reverse-engineering a program, you're interested in the behaviour, the implementation comes from you :P |
| 07:37:52 | <Hecate> | you can also use `rr` if the binary segfaults |
| 07:37:53 | <Axman6> | like if you've spent any time looking at Core, you'll be used to how it mangles names |
| 07:39:44 | <Axman6> | huh, all the recursive tailcalls are weird though |
| 07:40:12 | <Axman6> | free(mem) { return free(mem); } is very odd |
| 07:40:40 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds) |
| 07:41:30 | → | chele joins (~chele@user/chele) |
| 07:42:13 | → | dsrt^ joins (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) |
| 07:42:26 | <Axman6> | (uh, in one of the examples, not the link above) |
| 07:42:37 | → | jgeerds joins (~jgeerds@55d437cf.access.ecotel.net) |
| 07:49:11 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 07:52:39 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 07:54:30 | → | mima joins (~mmh@dhcp-138-246-3-181.dynamic.eduroam.mwn.de) |
| 07:56:30 | × | dsrt^ quits (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) (Ping timeout: 264 seconds) |
| 07:56:52 | → | machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net) |
| 07:57:25 | × | yauhsien quits (~Yau-Hsien@61-231-21-122.dynamic-ip.hinet.net) (Quit: Leaving) |
| 07:58:27 | → | merijn joins (~merijn@c-001-001-023.client.esciencecenter.eduvpn.nl) |
| 08:04:14 | <JensPetersen[m]> | If I want to improve the handling of Show Char for Unicode: where should I propose that? |
| 08:08:22 | × | ec quits (~ec@gateway/tor-sasl/ec) (Quit: ec) |
| 08:09:58 | <albet70> | "🟢 [exa] :albet70: you need a piece of javascript that manages it on the browser side. There are pretty nice ones for react and all other frameworks", on the server side, how it handle it? I'm reading the scotty docs, there's no "chunck-data" function under the request section, but there's "bodyReader", is that what I need? |
| 08:11:41 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds) |
| 08:12:47 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 08:13:05 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 08:13:39 | × | alp quits (~alp@user/alp) (Ping timeout: 276 seconds) |
| 08:13:45 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 08:15:10 | → | Nolrai joins (~Nolrai@c-73-240-99-51.hsd1.or.comcast.net) |
| 08:15:46 | → | gurkenglas joins (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) |
| 08:16:07 | <Nolrai> | So any thoughts on if gnuplot or Chart is easier to get running (on windows)? |
| 08:16:37 | → | vpan joins (~0@212.117.1.172) |
| 08:19:49 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 08:22:59 | → | ccntrq joins (~Thunderbi@2a01:c23:8888:4200:5ba1:209e:3ae1:962a) |
| 08:26:02 | → | TMA joins (tma@twin.jikos.cz) |
| 08:27:52 | × | TMA quits (tma@twin.jikos.cz) (Client Quit) |
| 08:28:59 | <merijn> | JensPetersen[m]: Define "improve" |
| 08:30:13 | <JensPetersen[m]> | Thanks I already got pointed to https://github.com/haskell/core-libraries-committee/issues/26 |
| 08:31:09 | → | TMA joins (tma@twin.jikos.cz) |
| 08:32:00 | × | shriekingnoise quits (~shrieking@201.212.175.181) (Quit: Quit) |
| 08:34:30 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 08:34:48 | <merijn> | JensPetersen[m]: That issue indeed address a lot of problems I have with the word "improving", because arguably a lots of suggested improvements are (in my view) actually regressions :p |
| 08:35:58 | <JensPetersen[m]> | merijn: ya it would be a breaking change - maybe there is a another way |
| 08:36:08 | → | alp joins (~alp@user/alp) |
| 08:37:32 | <merijn> | JensPetersen[m]: Generally the solution is "don't use show on text" ;) |
| 08:38:15 | <JensPetersen[m]> | merijn: don't use show on error messages? :) |
| 08:38:34 | <merijn> | JensPetersen[m]: What error messages are you referring too? |
| 08:38:46 | <JensPetersen[m]> | Show is everywhere |
| 08:39:13 | <merijn> | Ah, as in when ouputting data for inside an error message, you mean? |
| 08:39:22 | × | Nolrai quits (~Nolrai@c-73-240-99-51.hsd1.or.comcast.net) (Remote host closed the connection) |
| 08:39:31 | <JensPetersen[m]> | Anyway I see your point - I prefer to these things at a more core level |
| 08:39:45 | <JensPetersen[m]> | to fix these * |
| 08:39:56 | <merijn> | JensPetersen[m]: tbh, for outputting data in error messages I would personally use pretty-simple anyway: https://hackage.haskell.org/package/pretty-simple |
| 08:40:08 | <merijn> | JensPetersen[m]: Which also does fancy indenting layout of complex data types |
| 08:40:09 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 08:40:13 | × | alp quits (~alp@user/alp) (Remote host closed the connection) |
| 08:40:15 | <maerwald[m]> | merijn: you're aware that can crash your program on windows? |
| 08:40:19 | <maerwald[m]> | Not using show |
| 08:40:29 | <maerwald[m]> | Because of encoding issues |
| 08:41:06 | <JensPetersen[m]> | I guess I am only arguing that the solution should be part of ghc, not from outside |
| 08:41:45 | <JensPetersen[m]> | Any external lib is just a workaround and nothing more IMO |
| 08:42:33 | <merijn> | On the one hand, yes. On the other hand, making everything a part of GHC makes it a massive monolith that's very brittle, because then you can't upgrade stuff without upgrading GHC |
| 08:42:52 | <merijn> | And upgrading GHC is not always trivial |
| 08:43:40 | <JensPetersen[m]> | well hopefully in GHC2032 ;o) |
| 08:44:14 | → | alp joins (~alp@user/alp) |
| 08:44:38 | × | tomku quits (~tomku@user/tomku) (Ping timeout: 272 seconds) |
| 08:44:56 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 08:45:30 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Ping timeout: 240 seconds) |
| 08:47:12 | <JensPetersen[m]> | Anyway hard problems I agree - guess people will continue to prode anyway at improving things text-2 is a big step forward at least |
| 08:48:24 | <maerwald[m]> | Show using escaping is a smart trick when you want to e.g. print the result, because it ensures everything is in the ascii range. Search for 'commitBuffer' errors on windows. |
| 08:48:56 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Read error: Connection reset by peer) |
| 08:48:56 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 08:48:56 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
| 08:49:04 | <JensPetersen[m]> | You may be right that is it "too late" to change Show, I dunno... |
| 08:49:07 | <maerwald[m]> | It's possible that the new windows IO manager fixes that, but it's still not the default I think |
| 08:49:20 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 08:49:44 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 08:50:12 | <JensPetersen[m]> | We have too much legacy baggage overall I feel |
| 08:50:36 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 08:51:30 | <JensPetersen[m]> | At the same time people are understandably pushing back at too much change - it is really hard to manage |
| 08:51:40 | <maerwald[m]> | No one is interested in fixing legacy baggage unless it's completely for free and someone else does all the work for everyone |
| 08:51:47 | <JensPetersen[m]> | Right |
| 08:52:19 | <JensPetersen[m]> | So it doesn't get fixed |
| 08:52:53 | <JensPetersen[m]> | I am still primarily using ghc-8.10... :-) |
| 08:53:00 | <merijn> | I mean Show isn't really even wrong or legacy. It's just a trade-off between safety (ensuring everything is ascii) and convenience. And Show made one specific (reasonable) trade off there |
| 08:53:37 | <merijn> | And now there's an influx of people who value convenience over safety and wanna change it. But is it worth breaking a whole bunch of existing code for that? |
| 08:54:05 | <JensPetersen[m]> | Lot of interesting discussion in the ticket for sure |
| 08:54:09 | <maerwald[m]> | Yes, everyone loves IsString, but it's an utterly broken class interface |
| 08:54:27 | <merijn> | I'd be more open to a new/extra function that does "prettier" printing |
| 08:54:45 | <merijn> | like "showUtf8 :: Show a => a -> String" over changing show |
| 08:54:59 | <JensPetersen[m]> | That was also suggested as an alternative |
| 08:55:12 | <merijn> | maerwald[m]: tbh, I argued all the OverloadedX classes should support partial conversions at runtime |
| 08:55:41 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 08:55:58 | <merijn> | maerwald[m]: That's why I made validated-literals in the first place. I was trying to get OverloadedX more reasonable and was told that was unnecessary and people should only write total instances >.> |
| 08:56:17 | <merijn> | If we had compile time errors for conversions in GHC this whole problem would be a non-issue |
| 08:57:15 | <maerwald[m]> | Even the Text instance is not total, in the sense that it drops information |
| 08:57:55 | <merijn> | maerwald[m]: What does Text drop? |
| 08:58:31 | <maerwald[m]> | Surrogates |
| 08:58:56 | <maerwald[m]> | Or rather: uses replacement char for it |
| 08:59:14 | <maerwald[m]> | So roundtripping with fromString wouldn't work |
| 08:59:47 | <maerwald[m]> | And you can't restrict IsString to a subset of Char |
| 09:00:11 | × | lambda451[m] quits (~lambda451@2001:470:69fc:105::2:1097) (Quit: You have been kicked for being idle) |
| 09:00:17 | <merijn> | maerwald[m]: You can if you support partial conversions with compile time errors ;) |
| 09:00:33 | → | lambda451[m] joins (~lambda451@2001:470:69fc:105::2:1097) |
| 09:00:34 | ← | lambda451[m] parts (~lambda451@2001:470:69fc:105::2:1097) () |
| 09:00:53 | → | tomku joins (~tomku@user/tomku) |
| 09:01:05 | <maerwald[m]> | ByteString just truncates to a byte |
| 09:01:27 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) (Remote host closed the connection) |
| 09:02:23 | <maerwald[m]> | So your options are: use `error` and "butcher the input" |
| 09:02:57 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 09:02:58 | × | fserucas quits (~fserucas@1.75.114.89.rev.vodafone.pt) (Ping timeout: 240 seconds) |
| 09:03:08 | → | fserucas joins (~fserucas@166.65.114.89.rev.vodafone.pt) |
| 09:04:44 | <merijn> | maerwald[m]: You're skipping over the context of: "I was campaigning to add support for compile time partial conversions into GHC" |
| 09:04:48 | <merijn> | but that idea got shot down |
| 09:05:10 | × | tomku quits (~tomku@user/tomku) (Ping timeout: 240 seconds) |
| 09:05:27 | <merijn> | maerwald[m]: That was my entire point: We want to be able to generate compile time errors for partial conversions for the OverloadedX classes |
| 09:05:56 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Read error: Connection reset by peer) |
| 09:06:54 | <maerwald[m]> | Yes, I think OverloadedStrings should not use IsString instance |
| 09:07:41 | <maerwald[m]> | And IsString instance should be restricted to Unicode scalar values or some other subset |
| 09:07:51 | <maerwald[m]> | Then we'd need another Char type |
| 09:09:40 | × | gensyst quits (gensyst@user/gensyst) (Quit: Leaving) |
| 09:10:24 | <maerwald[m]> | OverloadedStrings can easily behave like a TH-free quasiquoter |
| 09:10:36 | <maerwald[m]> | Because it's a GHC extension |
| 09:13:35 | <merijn> | I mean, at that point you can just deprecate IsString, since it only really exists for OverloadedStrings :p |
| 09:14:03 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 09:18:00 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Ping timeout: 276 seconds) |
| 09:19:34 | <maerwald[m]> | merijn: i've used the class on dynamic values in the past. Because then I don't have to import lots of stuff and type T.pack |
| 09:19:39 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 09:19:53 | → | chomwitt joins (~chomwitt@2a02:587:dc0d:4a00:5774:9752:fb9b:46d2) |
| 09:21:08 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 09:21:09 | × | Vajb quits (~Vajb@n1zigc3rgo9mpde2w-1.v6.elisa-mobile.fi) (Read error: Connection reset by peer) |
| 09:21:29 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) |
| 09:27:29 | × | jmorris quits (uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 09:27:58 | → | Pickchea joins (~private@user/pickchea) |
| 09:31:00 | × | alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer) |
| 09:31:12 | → | alexhandy joins (~trace@user/trace) |
| 09:32:02 | → | tomku joins (~tomku@user/tomku) |
| 09:35:16 | → | nate4 joins (~nate@98.45.169.16) |
| 09:40:30 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 09:40:57 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 09:42:42 | × | TMA quits (tma@twin.jikos.cz) (Ping timeout: 276 seconds) |
| 09:45:25 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 09:45:38 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 09:49:54 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Ping timeout: 264 seconds) |
| 09:51:18 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 240 seconds) |
| 09:53:51 | × | alp quits (~alp@user/alp) (Remote host closed the connection) |
| 09:54:11 | → | alp joins (~alp@user/alp) |
| 09:54:18 | × | gurkenglas quits (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) (Ping timeout: 240 seconds) |
| 09:55:10 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ad-40.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 09:55:17 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 09:55:32 | × | alp quits (~alp@user/alp) (Remote host closed the connection) |
| 09:55:51 | → | alp joins (~alp@user/alp) |
| 09:56:26 | × | gawen quits (~gawen@user/gawen) (Quit: cya) |
| 09:56:50 | → | jespada joins (~jespada@45.162.228.190) |
| 09:57:15 | × | alp quits (~alp@user/alp) (Remote host closed the connection) |
| 09:57:34 | → | alp joins (~alp@user/alp) |
| 09:57:46 | → | gawen joins (~gawen@user/gawen) |
| 09:58:30 | → | TMA joins (tma@twin.jikos.cz) |
| 09:59:56 | → | alp_ joins (~alp@user/alp) |
| 10:01:20 | × | alp_ quits (~alp@user/alp) (Remote host closed the connection) |
| 10:01:40 | → | alp_ joins (~alp@user/alp) |
| 10:01:50 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 10:03:21 | × | alp quits (~alp@user/alp) (Ping timeout: 272 seconds) |
| 10:04:00 | → | alp__ joins (~alp@user/alp) |
| 10:05:24 | × | alp__ quits (~alp@user/alp) (Remote host closed the connection) |
| 10:05:44 | → | alp__ joins (~alp@user/alp) |
| 10:06:04 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) (Ping timeout: 244 seconds) |
| 10:07:09 | × | alp__ quits (~alp@user/alp) (Remote host closed the connection) |
| 10:07:29 | → | alp__ joins (~alp@user/alp) |
| 10:07:36 | × | alp_ quits (~alp@user/alp) (Ping timeout: 244 seconds) |
| 10:09:29 | × | alp__ quits (~alp@user/alp) (Remote host closed the connection) |
| 10:09:48 | → | alp__ joins (~alp@user/alp) |
| 10:11:13 | × | alp__ quits (~alp@user/alp) (Remote host closed the connection) |
| 10:11:34 | → | alp__ joins (~alp@user/alp) |
| 10:12:59 | × | alp__ quits (~alp@user/alp) (Remote host closed the connection) |
| 10:13:17 | → | alp__ joins (~alp@user/alp) |
| 10:14:31 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 10:15:04 | → | alp_ joins (~alp@user/alp) |
| 10:16:14 | → | waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
| 10:17:58 | → | alp joins (~alp@user/alp) |
| 10:19:11 | × | alp__ quits (~alp@user/alp) (Ping timeout: 272 seconds) |
| 10:19:30 | × | xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 244 seconds) |
| 10:19:58 | × | alp_ quits (~alp@user/alp) (Ping timeout: 240 seconds) |
| 10:20:24 | → | alp_ joins (~alp@user/alp) |
| 10:20:29 | → | dsrt^ joins (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) |
| 10:22:20 | × | alp_ quits (~alp@user/alp) (Remote host closed the connection) |
| 10:22:56 | → | alp_ joins (~alp@user/alp) |
| 10:23:00 | × | alp quits (~alp@user/alp) (Ping timeout: 276 seconds) |
| 10:30:00 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 10:32:10 | × | alp_ quits (~alp@user/alp) (Ping timeout: 240 seconds) |
| 10:36:17 | → | CiaoSen joins (~Jura@p200300c9570ffb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 10:45:20 | → | Pickchea joins (~private@user/pickchea) |
| 10:51:42 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Ping timeout: 264 seconds) |
| 10:52:17 | × | kaskal quits (~kaskal@089144220061.atnat0029.highway.webapn.at) (Ping timeout: 255 seconds) |
| 10:58:54 | → | kaskal joins (~kaskal@2001:4bb8:2c0:3963:6468:dd17:20dd:b33b) |
| 10:59:00 | × | remedan quits (~remedan@octo.cafe) (Quit: Bye!) |
| 10:59:44 | → | alp joins (~alp@user/alp) |
| 11:00:10 | × | dsrt^ quits (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) (Ping timeout: 240 seconds) |
| 11:07:15 | → | xff0x joins (~xff0x@2405:6580:b080:900:df60:d63b:15e3:9245) |
| 11:08:04 | → | remedan joins (~remedan@octo.cafe) |
| 11:10:23 | × | remedan quits (~remedan@octo.cafe) (Client Quit) |
| 11:12:09 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 11:13:14 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 11:13:23 | → | Vajb joins (~Vajb@n1zigc3rgo9mpde2w-1.v6.elisa-mobile.fi) |
| 11:18:32 | → | remedan joins (~remedan@octo.cafe) |
| 11:18:54 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 11:19:35 | × | Batzy quits (~quassel@user/batzy) (Quit: No Ping reply in 180 seconds.) |
| 11:21:00 | → | Batzy joins (~quassel@user/batzy) |
| 11:23:36 | × | elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 272 seconds) |
| 11:23:58 | → | jmorris joins (uid537181@id-537181.uxbridge.irccloud.com) |
| 11:31:05 | × | alexhandy quits (~trace@user/trace) (Read error: Connection reset by peer) |
| 11:31:11 | → | alexhandy2 joins (~trace@user/trace) |
| 11:34:20 | × | kaskal quits (~kaskal@2001:4bb8:2c0:3963:6468:dd17:20dd:b33b) (Quit: ZNC - https://znc.in) |
| 11:42:29 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 11:47:27 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 11:47:36 | → | kaskal joins (~kaskal@2001:4bb8:2c0:3963:6468:dd17:20dd:b33b) |
| 11:49:21 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 268 seconds) |
| 11:50:43 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 11:56:47 | → | emad joins (~emad@156.214.181.93) |
| 11:56:49 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 11:57:21 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 272 seconds) |
| 12:01:47 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 12:01:47 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
| 12:02:18 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 12:03:06 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 12:03:45 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 12:08:20 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) (Ping timeout: 255 seconds) |
| 12:12:34 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 12:15:41 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 12:16:31 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 12:17:26 | → | elkcl joins (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) |
| 12:18:28 | × | kaskal quits (~kaskal@2001:4bb8:2c0:3963:6468:dd17:20dd:b33b) (Quit: ZNC - https://znc.in) |
| 12:18:58 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 268 seconds) |
| 12:19:27 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 12:22:11 | → | kaskal joins (~kaskal@089144220061.atnat0029.highway.webapn.at) |
| 12:24:58 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 12:31:22 | × | ccntrq quits (~Thunderbi@2a01:c23:8888:4200:5ba1:209e:3ae1:962a) (Remote host closed the connection) |
| 12:35:20 | → | Pickchea joins (~private@user/pickchea) |
| 12:38:59 | × | Pickchea quits (~private@user/pickchea) (Client Quit) |
| 12:40:00 | → | cosimone joins (~user@93-44-186-171.ip98.fastwebnet.it) |
| 12:43:37 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 12:43:39 | × | raym quits (~raym@user/raym) (Ping timeout: 244 seconds) |
| 12:43:42 | → | Pickchea joins (~private@user/pickchea) |
| 12:44:12 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 12:44:44 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 12:45:39 | → | raym joins (~raym@user/raym) |
| 12:46:18 | × | CiaoSen quits (~Jura@p200300c9570ffb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 12:51:04 | × | causal quits (~user@50.35.83.177) (Quit: WeeChat 3.5) |
| 12:51:31 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 12:55:24 | → | Everything joins (~Everythin@37.115.210.35) |
| 12:56:56 | → | nate4 joins (~nate@98.45.169.16) |
| 12:57:37 | → | coot joins (~coot@213.134.190.95) |
| 12:59:38 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 12:59:47 | → | MajorBiscuit joins (~MajorBisc@2a02-a461-129d-1-6d4c-38a4-18b7-4b48.fixed6.kpn.net) |
| 13:02:58 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 13:07:56 | × | Colere quits (~colere@about/linux/staff/sauvin) (Ping timeout: 244 seconds) |
| 13:08:23 | → | Colere joins (~colere@about/linux/staff/sauvin) |
| 13:10:36 | → | Furor joins (~colere@about/linux/staff/sauvin) |
| 13:11:57 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 13:13:57 | × | Colere quits (~colere@about/linux/staff/sauvin) (Ping timeout: 276 seconds) |
| 13:19:00 | × | frost quits (~frost@user/frost) (Ping timeout: 252 seconds) |
| 13:20:00 | × | malte quits (~malte@mal.tc) (Remote host closed the connection) |
| 13:20:08 | × | Everything quits (~Everythin@37.115.210.35) (Quit: leaving) |
| 13:20:55 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 13:21:05 | → | malte joins (~malte@mal.tc) |
| 13:23:54 | → | Guest|41 joins (~Guest|41@37-147-251-246.broadband.corbina.ru) |
| 13:24:02 | <Guest|41> | hello |
| 13:24:27 | × | Guest|41 quits (~Guest|41@37-147-251-246.broadband.corbina.ru) (Client Quit) |
| 13:24:48 | <geekosaur> | quick visit… |
| 13:25:30 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 13:31:05 | Furor | is now known as Colere |
| 13:39:40 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 13:41:42 | × | emad quits (~emad@156.214.181.93) (Quit: Leaving) |
| 13:42:38 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Ping timeout: 240 seconds) |
| 13:43:28 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 13:47:29 | × | jmorris quits (uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 13:51:00 | → | ccntrq joins (~Thunderbi@2a01:c23:8888:4200:26c4:9e25:c929:5578) |
| 13:51:50 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Ping timeout: 244 seconds) |
| 13:53:31 | <JensPetersen[m]> | merijn: Could you say more on why you say ascii is safer? |
| 13:55:07 | <merijn> | JensPetersen[m]: Because show (being pure) *cannot* know which encoding the output expects |
| 13:55:54 | <merijn> | JensPetersen[m]: Most (but far from all!) linux terminals use UTF-8, sure. But what if you're outputting to a windows terminal? MacOS terminal? A file on a system where you don't know the system encoding? |
| 13:57:04 | <merijn> | JensPetersen[m]: So Show maps every non ascii (maybe it's non-latin-1? not sure?) to a safe subset that you expect *any* terminal/system to handle and escape the rest |
| 13:58:52 | × | MajorBiscuit quits (~MajorBisc@2a02-a461-129d-1-6d4c-38a4-18b7-4b48.fixed6.kpn.net) (Quit: WeeChat 3.5) |
| 13:59:19 | <geekosaur> | every non-ascii, per the Report |
| 13:59:33 | <geekosaur> | which is another complication |
| 13:59:48 | <JensPetersen[m]> | geekosaur: right |
| 14:00:06 | <JensPetersen[m]> | merijn: okay right I see thanks |
| 14:00:31 | <JensPetersen[m]> | Sadly that does make quite some sense hmm |
| 14:01:46 | <JensPetersen[m]> | Everything above \127 I believe yep |
| 14:02:04 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 14:02:10 | <geekosaur> | in part because you don't know whether what's above \127 needs to be encoded latin-1 or utf-8 |
| 14:02:14 | <JensPetersen[m]> | @merjin |
| 14:02:14 | <lambdabot> | Unknown command, try @list |
| 14:02:21 | <merijn> | putStrLn, for example, doesn't have this problem (which is why strings going through putStrLn look fine, but print looks escaped) |
| 14:02:27 | <JensPetersen[m]> | oops |
| 14:02:36 | <merijn> | because putStrLn is in IO and checks the encoding specified by the environment and uses that |
| 14:03:32 | <JensPetersen[m]> | merijn: I suppose I could ask Devil's advocate what if you are? You may lose 🤷♂️ |
| 14:03:41 | <merijn> | Compare: putStrLn "λ" |
| 14:03:48 | <merijn> | And: print "λ" |
| 14:03:53 | <JensPetersen[m]> | I see |
| 14:04:25 | <JensPetersen[m]> | Hmm |
| 14:04:47 | <merijn> | I mean, Show for String/Char is usually not what you want anyway, since it adds quotes |
| 14:05:16 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 14:05:37 | <merijn> | > text "λ" |
| 14:05:40 | <lambdabot> | λ |
| 14:05:46 | <merijn> | > text $ show "λ" |
| 14:05:47 | <lambdabot> | "\955" |
| 14:05:48 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 14:06:01 | <merijn> | (text just bypasses the implicit call to "show" inside lambdabot) |
| 14:07:14 | <geekosaur> | you could also show print vs. show in yahb2 |
| 14:07:36 | <geekosaur> | % print "λ" |
| 14:07:36 | <yahb2> | "\955" |
| 14:07:42 | <geekosaur> | % putStrLn "λ" |
| 14:07:42 | <yahb2> | λ |
| 14:10:08 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 14:10:17 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) (Ping timeout: 255 seconds) |
| 14:12:32 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds) |
| 14:13:21 | → | econo joins (uid147250@user/econo) |
| 14:13:50 | × | raym quits (~raym@user/raym) (Ping timeout: 260 seconds) |
| 14:14:30 | × | waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 264 seconds) |
| 14:14:47 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Ping timeout: 272 seconds) |
| 14:15:25 | → | raym joins (~raym@user/raym) |
| 14:21:57 | × | bitmapper quits (uid464869@id-464869.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 14:24:17 | → | pmarg joins (~pmarg@2a01:799:159f:9b00:a284:ab52:81f7:9010) |
| 14:25:17 | → | lottaquestions joins (~nick@2604:3d08:7a79:1d00:8361:4a5e:36f7:ad4f) |
| 14:28:27 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 14:28:43 | <tomsmeding> | :t text |
| 14:28:44 | <lambdabot> | String -> Doc |
| 14:29:24 | <geekosaur> | it's from a prettyprinting combinator package, and the fact that it renders directly like that is arguably a bug — but a useful one |
| 14:30:19 | <tomsmeding> | I guess not a bug, because it does the same thing as usual: Show of Doc is defined to render the document, which of course doesn't escape |
| 14:30:49 | <geekosaur> | yes, but that's an abuse of Show |
| 14:31:20 | × | cfricke quits (~cfricke@user/cfricke) (Ping timeout: 260 seconds) |
| 14:31:37 | <geekosaur> | although the Report I think doesn't explicitly specify that, the expected contract is that Show instances (a) produce Haskell expressions (b) produce something acceptable to Read instances, when they exist |
| 14:32:31 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 14:32:37 | <geekosaur> | but that argument is essentially the same as the "Show for String should produce utf-8" argument |
| 14:37:00 | <tomsmeding> | "Show for String should produce utf-8" is a nonsensical statement |
| 14:37:18 | <tomsmeding> | `show` produces a String, which is [Char], which is encoding independent |
| 14:37:41 | <tomsmeding> | This doesn't discount the previous discussion about what Show on String should do, by the way |
| 14:38:56 | × | alp quits (~alp@user/alp) (Ping timeout: 268 seconds) |
| 14:39:18 | <tomsmeding> | geekosaur: I agree on the expected behaviour of Show by the way |
| 14:41:58 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 14:47:57 | × | jespada quits (~jespada@45.162.228.190) (Quit: Textual IRC Client: www.textualapp.com) |
| 14:49:55 | → | ulvarrefr joins (~user@185.24.53.152) |
| 14:56:06 | → | Haskelytic joins (~Haskelyti@118.179.211.17) |
| 14:58:27 | → | shriekingnoise joins (~shrieking@201.212.175.181) |
| 15:00:06 | → | ski joins (~ski@wpa266.eduroam.gu.se) |
| 15:01:01 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 15:04:42 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 15:05:51 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 15:08:57 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 15:10:21 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 15:12:29 | → | dsrt^ joins (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) |
| 15:16:35 | × | ski quits (~ski@wpa266.eduroam.gu.se) (Ping timeout: 244 seconds) |
| 15:19:23 | <yin> | relying on that behaviour is a big mistake |
| 15:21:03 | <Athas> | Relying on any Show behaviour is dubious. |
| 15:24:43 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 15:26:36 | × | wenjie quits (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Quit: WeeChat 3.5) |
| 15:27:27 | <geekosaur> | yet people do it |
| 15:27:53 | <Athas> | The next controversial library proposal should be to remove Show. |
| 15:30:45 | <yin> | > show (1/0 :: Double) |
| 15:30:47 | <lambdabot> | "Infinity" |
| 15:31:18 | <Athas> | > read "Infinity" :: Double |
| 15:31:19 | <lambdabot> | Infinity |
| 15:31:25 | <Athas> | Looks fine to me. |
| 15:32:07 | <geekosaur> | > show (0/0 :: Double) |
| 15:32:09 | <lambdabot> | "NaN" |
| 15:32:22 | <geekosaur> | > read "NaN" :: Double |
| 15:32:24 | <lambdabot> | NaN |
| 15:32:39 | <Athas> | > read "NAN" :: Double |
| 15:32:41 | <lambdabot> | *Exception: Prelude.read: no parse |
| 15:34:11 | <yin> | point being, NaN and Infinity are not expressions |
| 15:34:22 | <yin> | @type Infinity |
| 15:34:23 | <lambdabot> | error: Data constructor not in scope: Infinity |
| 15:34:52 | <Athas> | Is that supposed to hold for Show instances? |
| 15:35:29 | <geekosaur> | the point of what I said earlier is it's an informal contract; the Report is annoyingly silent about it |
| 15:36:48 | <yin> | i would imagine that there are cases where deriving a "legal" show instance is impossible |
| 15:39:25 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 15:43:54 | × | elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 272 seconds) |
| 15:47:53 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 272 seconds) |
| 15:57:23 | → | zebrag joins (~chris@user/zebrag) |
| 16:03:19 | → | _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl) |
| 16:03:35 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 16:07:10 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 16:08:34 | → | ccntrq1 joins (~Thunderbi@dynamic-077-001-119-111.77.1.pool.telefonica.de) |
| 16:08:45 | × | ccntrq quits (~Thunderbi@2a01:c23:8888:4200:26c4:9e25:c929:5578) (Ping timeout: 260 seconds) |
| 16:08:45 | ccntrq1 | is now known as ccntrq |
| 16:09:01 | → | coot joins (~coot@213.134.190.95) |
| 16:09:36 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) (Remote host closed the connection) |
| 16:10:44 | → | Jeanne-Kamikaze joins (~Jeanne-Ka@static-198-54-134-108.cust.tzulo.com) |
| 16:13:32 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 16:16:21 | <qrpnxz> | I don't see why it needs to be constructor. In that example (read . show = id) as expected |
| 16:17:10 | <geekosaur> | > M.fromList [('a',1)] |
| 16:17:13 | <lambdabot> | fromList [('a',1)] |
| 16:22:37 | → | ccntrq1 joins (~Thunderbi@2a01:c23:8c0e:d00:b9c7:8deb:b374:6205) |
| 16:23:07 | <dsal> | That works with other letters, too: |
| 16:23:08 | <dsal> | > S.fromList [('a',1)] |
| 16:23:10 | <lambdabot> | fromList [('a',1)] |
| 16:23:14 | → | szkl joins (uid110435@id-110435.uxbridge.irccloud.com) |
| 16:24:38 | × | ccntrq quits (~Thunderbi@dynamic-077-001-119-111.77.1.pool.telefonica.de) (Ping timeout: 240 seconds) |
| 16:24:38 | ccntrq1 | is now known as ccntrq |
| 16:25:30 | × | ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (Ping timeout: 240 seconds) |
| 16:26:20 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 16:26:33 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed) |
| 16:27:06 | × | dsrt^ quits (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) (Ping timeout: 264 seconds) |
| 16:28:50 | <yin> | qrpnxz: that's because read also doesn't require expressions |
| 16:29:36 | <geekosaur> | yeh, one thing Read can't do is tell about imports |
| 16:31:28 | <geekosaur> | these are things that are considered desirable, not hard rules. |
| 16:31:45 | <geekosaur> | being able to paste the output of show into ghci as an expression is useful |
| 16:32:03 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 16:32:09 | <yin> | > read "undefined" |
| 16:32:10 | <lambdabot> | *Exception: Prelude.read: no parse |
| 16:32:16 | <geekosaur> | but trying to rules-lawyer it will get you nowhere because there are (sadly) no rules |
| 16:32:26 | <dsal> | It didn't seem like a *huge* deal for me until I started using `UTCTime` in data structures. So frustrating. |
| 16:32:30 | <geekosaur> | ^ |
| 16:32:40 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 260 seconds) |
| 16:32:48 | <geekosaur> | (also that last worked, since it bottomed) |
| 16:32:58 | <yin> | ha! |
| 16:33:07 | <geekosaur> | go check the Report, there's nothing specifying *which* bottom you get |
| 16:33:38 | <Rembane> | > read "undefined" :: Int |
| 16:33:39 | <lambdabot> | *Exception: Prelude.read: no parse |
| 16:33:41 | <Rembane> | :( |
| 16:34:03 | <yin> | so i raise you laziness |
| 16:34:12 | <yin> | > read "Just undefined" |
| 16:34:14 | <lambdabot> | *Exception: Prelude.read: no parse |
| 16:35:30 | × | sektor[m] quits (~sektor@2001:470:69fc:105::2:3f60) (Ping timeout: 240 seconds) |
| 16:35:50 | × | elvishjerricco quits (~elvishjer@2001:470:69fc:105::6172) (Ping timeout: 240 seconds) |
| 16:36:07 | <yin> | oh no wait, that would work |
| 16:36:52 | <yin> | Read a => a |
| 16:37:02 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 16:37:07 | <geekosaur> | read isn't required to produce lazy expressions, either. in particular its behavior with respect to self-referential values is undefined |
| 16:37:56 | <yin> | geekosaur: can you give an example? |
| 16:38:37 | <geekosaur> | not off the top of my head. but neither Show nor Read handle expressions in which you've "tied the knot" |
| 16:38:51 | → | Guest74 joins (~Guest74@83.6.25.188.ipv4.supernova.orange.pl) |
| 16:38:59 | <geekosaur> | (https://wiki.haskell.org/Tying_the_Knot) |
| 16:39:15 | <geekosaur> | abusing laziness to achieve self-referentiality |
| 16:39:20 | <merijn> | eh, how about "show (repeat 1)" :p |
| 16:39:27 | × | Guest74 quits (~Guest74@83.6.25.188.ipv4.supernova.orange.pl) (Client Quit) |
| 16:39:45 | <geekosaur> | but how do you phrase that as something for Read? |
| 16:40:37 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 16:40:50 | → | Guest74 joins (~Guest74@83.6.25.188.ipv4.supernova.orange.pl) |
| 16:43:54 | <yin> | yeah that was my douby |
| 16:44:06 | <yin> | $rt |
| 16:47:53 | → | sektor[m] joins (~sektor@2001:470:69fc:105::2:3f60) |
| 16:48:19 | × | Guest74 quits (~Guest74@83.6.25.188.ipv4.supernova.orange.pl) (Quit: Client closed) |
| 16:49:03 | → | elvishjerricco joins (~elvishjer@2001:470:69fc:105::6172) |
| 16:52:03 | × | incertia quits (~incertia@d47-69-133-171.try.wideopenwest.com) (Quit: ZNC 1.7.5 - https://znc.in) |
| 16:53:09 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 16:53:54 | → | incertia joins (~incertia@d47-69-133-171.try.wideopenwest.com) |
| 16:54:00 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 268 seconds) |
| 16:56:10 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 16:56:38 | → | adanwan_ joins (~adanwan@gateway/tor-sasl/adanwan) |
| 16:57:05 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 268 seconds) |
| 16:58:50 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 16:59:01 | <tomsmeding> | Read can't really be lazy because it needs to report an error on parse failure |
| 16:59:27 | × | machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 272 seconds) |
| 16:59:33 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 16:59:52 | × | ccntrq quits (~Thunderbi@2a01:c23:8c0e:d00:b9c7:8deb:b374:6205) (Remote host closed the connection) |
| 17:00:10 | → | ccntrq joins (~Thunderbi@2a01:c23:8c0e:d00:b9c7:8deb:b374:6205) |
| 17:00:44 | → | nate4 joins (~nate@98.45.169.16) |
| 17:01:04 | <tomsmeding> | > take 3 $ read "[1,1,1,1,1,1,1,1,1,1🧀]" :: [Int] |
| 17:01:06 | <lambdabot> | *Exception: Prelude.read: no parse |
| 17:02:19 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 17:03:50 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 17:05:10 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 17:05:30 | × | zaquest quits (~notzaques@5.130.79.72) (Ping timeout: 240 seconds) |
| 17:06:47 | → | alp joins (~alp@user/alp) |
| 17:07:33 | → | __monty__ joins (~toonn@user/toonn) |
| 17:09:59 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 17:10:59 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 17:12:04 | <tomsmeding> | Show can99,99 handle values with bottoms or loops, in a sense, in that the string it produces is usually lazy |
| 17:12:29 | <tomsmeding> | > take 20 $ show (replicate 10 2 ++ [undefined]) |
| 17:12:31 | <lambdabot> | "[2,2,2,2,2,2,2,2,2,2" |
| 17:14:22 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) (Ping timeout: 244 seconds) |
| 17:14:30 | × | lottaquestions quits (~nick@2604:3d08:7a79:1d00:8361:4a5e:36f7:ad4f) (Quit: Konversation terminated!) |
| 17:15:25 | × | adanwan_ quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 17:18:21 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 276 seconds) |
| 17:20:37 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:20:48 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 17:22:39 | × | ccntrq quits (~Thunderbi@2a01:c23:8c0e:d00:b9c7:8deb:b374:6205) (Remote host closed the connection) |
| 17:22:57 | → | ccntrq joins (~Thunderbi@2a01:c23:8c0e:d00:b9c7:8deb:b374:6205) |
| 17:24:17 | → | Guest66 joins (~Guest66@79.97.193.58) |
| 17:24:39 | × | vpan quits (~0@212.117.1.172) (Quit: Leaving.) |
| 17:25:11 | <pavonia> | tomsmeding: Nor sure if my or your client is wrong here, but whenever you use italics text, the rest of the line is green text on green background for me :o |
| 17:25:36 | <tomsmeding> | ._. does anybody else have that? |
| 17:25:41 | <geekosaur> | worked here |
| 17:26:00 | <geekosaur> | does this work for you, pavonia? |
| 17:26:13 | <pavonia> | geekosaur: Yes |
| 17:26:48 | <tomsmeding> | Hm it seems (looking in ircbrowse) that Revolution IRC (android) does send some wacky stuff |
| 17:27:08 | <tomsmeding> | Perhaps some reset-colour-to-default thing? |
| 17:27:21 | × | Guest66 quits (~Guest66@79.97.193.58) (Read error: Connection reset by peer) |
| 17:27:33 | → | Guest66 joins (~Guest66@79.97.193.58) |
| 17:27:43 | <tomsmeding> | pavonia: there might be some unnecessary codes there but it looks a bit like your client is the one that's off |
| 17:27:44 | <__monty__> | I thought italics wasn't part of the (m)IRC protocol? Just bold and colors and maybe underline? |
| 17:27:58 | → | yax__ joins (~yax__@user/yax/x-9576643) |
| 17:28:25 | <Rembane> | I hope that marquee is! |
| 17:28:43 | <pavonia> | tomsmeding: Hhm, okay |
| 17:28:52 | <tomsmeding> | https://modern.ircdocs.horse/formatting.html#italics |
| 17:29:41 | × | mbuf quits (~Shakthi@122.165.55.71) (Quit: Leaving) |
| 17:29:42 | × | amonowy quits (uid560952@id-560952.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 17:29:43 | <geekosaur> | https://www.mirc.com/help/html/index.html?control_codes.html seems to think it's from mirc |
| 17:30:01 | → | jespada joins (~jespada@200.123.141.222) |
| 17:30:23 | <yin> | isn't that just convention and not part of irc? |
| 17:30:47 | <monochrom> | Which IRC? >:) |
| 17:30:59 | <tomsmeding> | pavonia: seems I'm sending 1D for italics, 0F 03 "99,99" for reset |
| 17:31:03 | <monochrom> | or rather whose |
| 17:31:19 | <tomsmeding> | 03 "99,99" is default colours according to the page I sent |
| 17:31:50 | <Franciman> | I'm curious about the specs the computers you run ghc on have |
| 17:32:16 | × | Guest66 quits (~Guest66@79.97.193.58) (Client Quit) |
| 17:32:21 | <tomsmeding> | Wtf revolution irc? 0x0F is indeed reset, you don't need to reset the colours to default afterwards! |
| 17:32:22 | <pavonia> | tomsmeding: Ah thanks, I will patch my client then |
| 17:32:28 | <yin> | this one? https://datatracker.ietf.org/doc/html/rfc1459 |
| 17:32:42 | × | yax__ quits (~yax__@user/yax/x-9576643) (Quit: Iridium IRC Client) |
| 17:32:46 | <Franciman> | i was trying it on a intel core 2 duo from uhm like ~2008, with 4gb ram, and the pc got a bit stressed on a small sized cabal project like vabal |
| 17:32:48 | <geekosaur> | yin, that would be why we've been calling them mirc codes. (mirc is a client for Windows) they've become a de facto standard for formatting |
| 17:33:02 | <yin> | i see |
| 17:33:06 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 17:33:07 | <Franciman> | but otherwise it works quite alrighto |
| 17:33:20 | <monochrom> | Does even libera's server software strictly conform to RFC1459? |
| 17:33:42 | <geekosaur> | rfc1459 supports extensions, including nonstandard ones |
| 17:33:45 | <monochrom> | Right? Last I heard every IRC network uses server software that adds their own extensions. |
| 17:33:54 | <yin> | monochrom: i hear a lot of talk about IRCv3 on #libera |
| 17:34:00 | <monochrom> | I mean is DCC even in RFC1459? |
| 17:34:03 | <geekosaur> | I get 3 lines of extensions listed when I connect, several of which atr tagged as specific to the solanum server |
| 17:34:19 | <geekosaur> | *are tagged |
| 17:35:16 | <geekosaur> | oh, sorry, the tagged one are capabilities, not extensions |
| 17:35:19 | <yin> | anyways, i just get inverted colors on my terminal client when you do italics |
| 17:36:11 | <yin> | i usually use _underline_ and *bold* and most clients stylize it one way or another |
| 17:36:37 | <monochrom> | "is that just convention or... oh right" |
| 17:37:06 | <monochrom> | It's always only conventions. |
| 17:37:11 | <geekosaur> | in any case, the server knows nothing about any of this, it just relays what it's given. clients interpret the codes |
| 17:37:58 | <geekosaur> | (there is a channel mode to strip them, but it just strips all control codes, it still doesn't know what they do) |
| 17:38:38 | <monochrom> | I imposed that channel mode for a little while >:) |
| 17:38:52 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 17:39:36 | <geekosaur> | better yet, there's no definition anywhere of how color controls work, meaning you're at the mercy of random clients if you use single digit colors, or color codes followed by digits, etc. |
| 17:39:56 | <yin> | hence _underline_ and *bold*, everyone[citation needed] will understand it |
| 17:40:16 | <tomsmeding> | Hm, I've found the issue (?) in my mobile client's source: it thinks it must always set the colour to _something_ after a formatting reset code |
| 17:40:18 | <monochrom> | Actually I didn't understand _ or * for two months. |
| 17:40:40 | <monochrom> | Especially * |
| 17:40:44 | <tomsmeding> | Heh, look at me using _ for italics |
| 17:41:22 | <yin> | irssi underlines your italics |
| 17:41:39 | × | fserucas quits (~fserucas@166.65.114.89.rev.vodafone.pt) (Quit: Leaving) |
| 17:41:59 | <yin> | so does Textual |
| 17:42:25 | → | econo joins (uid147250@user/econo) |
| 17:42:42 | <monochrom> | Is this a pissing war on how many clients use the same "non"-"standard" "convention" as yours? |
| 17:43:02 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 17:43:09 | <yin> | yes :D |
| 17:43:35 | <__monty__> | yin: You might not be getting italics then because not all terminals and fonts support italics. |
| 17:43:47 | <yin> | this is a (show . read = id) problem |
| 17:43:47 | × | merijn quits (~merijn@c-001-001-023.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
| 17:44:17 | <yin> | __monty__: i _know_ that's why i'm not getting italics! |
| 17:44:43 | <__monty__> | I'm not getting any italics either though and my terminal and font do support it. |
| 17:45:09 | <__monty__> | So I think Irssi may not adhere to that particular convention? |
| 17:45:34 | × | nek0 quits (~nek0@2a01:4f8:222:2b41::12) (Quit: The Lounge - https://thelounge.chat) |
| 17:45:37 | <yin> | also there's that |
| 17:45:39 | <monochrom> | Although, I somehow suspected that italics are not as common as bold, so I avoided italics, while I feel free to use bold when I really want bold. |
| 17:45:50 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 17:46:10 | <tomsmeding> | Up to and including Mountain Lion or something, the macos built-in terminal app didn't even support italics at all |
| 17:46:32 | × | kaskal quits (~kaskal@089144220061.atnat0029.highway.webapn.at) (Quit: ZNC - https://znc.in) |
| 17:46:46 | <yin> | __monty__: i bet even your nick is confusing some clients |
| 17:46:58 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 17:47:06 | <monochrom> | haha |
| 17:47:18 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 17:47:20 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds) |
| 17:47:29 | <yin> | tomsmeding: wasn't Terminal basically iTerm at that point? |
| 17:47:30 | × | alp quits (~alp@user/alp) (Ping timeout: 240 seconds) |
| 17:47:31 | <tomsmeding> | If so that would be a bug :p |
| 17:47:34 | <geekosaur> | apparently you have to enable them in irssi |
| 17:47:55 | <tomsmeding> | yin: Terminal and iTerm2 are completely different things by completely different authors |
| 17:48:10 | <tomsmeding> | I don't know anything about iTerm(1) if that ever existed |
| 17:48:22 | <geekosaur> | it did |
| 17:49:30 | <geekosaur> | there was iTerm, then it went silent and someone forked it to make iTerm2, then that went silent and someone forked it to make iTerm, then that renamed itself back to iTerm2 with the blessing of the original iTerm2 forker/author |
| 17:49:50 | <yin> | not confusing at all |
| 17:50:22 | <monochrom> | haha that's epic |
| 17:50:36 | <tomsmeding> | Lol I had no idea |
| 17:50:42 | <monochrom> | The iTerm of Theseus. |
| 17:51:02 | <yin> | well in my mind i had some recollection from ~20yrs ago that Terminal was based on iTerm |
| 17:51:13 | <yin> | or maybe xTerm? but that doesn't seem right |
| 17:51:26 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 17:51:29 | <tomsmeding> | Terminal is an apple thing, so I would highly doubt it being based on something written by a non-apple person |
| 17:51:37 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 17:51:50 | <geekosaur> | neither although it's su[pposed to be xterm compatible. that said it's based on next's terminal |
| 17:51:59 | <yin> | lol most apple things are based on something written by non-apple people :p |
| 17:52:05 | <tomsmeding> | (this is all recollection for me too, I've been using linux for a couple years at this point) |
| 17:52:19 | → | kaskal joins (~kaskal@089144220061.atnat0029.highway.webapn.at) |
| 17:53:01 | <geekosaur> | remember that steve jobs came from next, he just recycled most of next's stuff replacing display postscript with what amounted to display pdf |
| 17:53:04 | <monochrom> | I'm somewhat grateful that I didn't have money for a macbook actually |
| 17:53:58 | <yin> | tbf apple's terminal is a pretty good emulator |
| 17:54:35 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 17:55:02 | <tomsmeding> | Sure, but if apple assimilates some distinctiveness into its own, surely the result is not available for forking into iTerm2 anymore? :P |
| 17:55:11 | <__monty__> | Display PostScript/PDF? |
| 17:55:26 | <yin> | tomsmeding: i would bet on that |
| 17:57:50 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds) |
| 17:57:58 | <__monty__> | geekosaur: The Irssi setting is for rendering this style of /italics/. Not the mIRC format code. |
| 17:58:26 | <__monty__> | Not enabling that because it seems like it might be triggered by paths. |
| 17:58:38 | <yin> | yeah was about to point that out |
| 17:59:18 | <monochrom> | Solution: Use \italics\ |
| 17:59:33 | <yin> | windows' paths |
| 18:01:57 | <yin> | apparently irc sends clear text and it's up to each client to interpret the encoding, as "there is no support of encoding by the protocol" |
| 18:01:58 | <__monty__> | monochrom: You monster, italics don't lean that way. |
| 18:02:08 | <yin> | i think they're trying to solve that in v3 |
| 18:02:37 | <Franciman> | why is it called italics and not cursive? |
| 18:02:55 | <Franciman> | ah maybe you mean something idfferent by cursive |
| 18:03:07 | <Rembane> | I prefer |straight italics| |
| 18:03:25 | × | mixfix41 quits (~sdenynine@user/mixfix41) (Quit: loggin off chao) |
| 18:03:33 | <geekosaur> | it's surprising how bad that usually looks |
| 18:03:41 | geekosaur | remembers that one from the metafont book |
| 18:04:03 | × | PiDelport quits (uid25146@id-25146.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 18:04:07 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 18:04:24 | <monochrom> | tail-cursive italics |
| 18:04:33 | → | alp joins (~alp@user/alp) |
| 18:04:58 | <yin> | Franciman: italics comes from the fact that the man who popularized writing it that way (leaning) was italian |
| 18:05:21 | <yin> | cursive comes from cursus, meaning path. the path the ink makes when writing by hand |
| 18:05:33 | <yin> | two different things |
| 18:06:21 | <yin> | (course would be a more obvious english translation than path :p) |
| 18:06:31 | → | Cale joins (~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) |
| 18:07:01 | <geekosaur> | ought to be called meander instead :þ |
| 18:07:25 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 18:07:53 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 18:07:53 | <yin> | "stroke" according to my handwriting |
| 18:11:02 | × | shailangsa quits (~shailangs@host109-152-9-231.range109-152.btcentralplus.com) (Ping timeout: 255 seconds) |
| 18:12:20 | × | jinsun quits (~jinsun@user/jinsun) (Read error: Connection reset by peer) |
| 18:15:15 | → | merijn joins (~merijn@c-001-001-023.client.esciencecenter.eduvpn.nl) |
| 18:18:57 | → | coot joins (~coot@213.134.190.95) |
| 18:19:16 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 18:19:56 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 18:23:25 | <darkling> | "squiggle", named after the tree-dwelling rodents... |
| 18:24:07 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Ping timeout: 244 seconds) |
| 18:27:36 | → | jinsun joins (~jinsun@user/jinsun) |
| 18:28:55 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 18:30:49 | × | haritz quits (~hrtz@user/haritz) (Ping timeout: 256 seconds) |
| 18:32:16 | × | pmarg quits (~pmarg@2a01:799:159f:9b00:a284:ab52:81f7:9010) (Remote host closed the connection) |
| 18:32:16 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 18:32:26 | → | coot joins (~coot@213.134.190.95) |
| 18:39:10 | × | jgeerds quits (~jgeerds@55d437cf.access.ecotel.net) (Ping timeout: 240 seconds) |
| 18:43:10 | × | merijn quits (~merijn@c-001-001-023.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 18:45:38 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) (Remote host closed the connection) |
| 18:46:20 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 18:47:11 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 18:47:50 | × | bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Remote host closed the connection) |
| 18:53:13 | → | sammelweis_ joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 18:53:27 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Read error: Connection reset by peer) |
| 18:54:33 | → | shailangsa joins (~shailangs@host109-152-9-231.range109-152.btcentralplus.com) |
| 18:55:42 | → | dsrt^ joins (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) |
| 18:58:43 | → | gurkenglas joins (~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) |
| 18:59:11 | → | Guest|77 joins (~Guest|77@86.127.156.36) |
| 19:00:11 | × | Guest|77 quits (~Guest|77@86.127.156.36) (Client Quit) |
| 19:06:44 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 19:07:04 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 19:07:28 | → | yauhsien joins (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) |
| 19:11:50 | × | yauhsien quits (~yauhsien@61-231-21-122.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 19:15:38 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 19:29:37 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 19:30:02 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 19:30:24 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 19:31:01 | × | alexhandy2 quits (~trace@user/trace) (Read error: Connection reset by peer) |
| 19:31:27 | → | alexhandy2 joins (~trace@user/trace) |
| 19:33:56 | → | waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
| 19:36:01 | → | Guest74 joins (~Guest74@83.6.25.188.ipv4.supernova.orange.pl) |
| 19:37:58 | × | Guest74 quits (~Guest74@83.6.25.188.ipv4.supernova.orange.pl) (Client Quit) |
| 19:39:00 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 19:39:59 | → | yauhsien joins (~yauhsien@61-231-46-226.dynamic-ip.hinet.net) |
| 19:40:45 | → | gmg joins (~user@user/gehmehgeh) |
| 19:42:00 | → | img joins (~img@user/img) |
| 19:43:39 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 19:43:50 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 19:44:05 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 19:44:46 | → | acidjnk joins (~acidjnk@p200300d6e70586618de76952f976022e.dip0.t-ipconnect.de) |
| 19:44:50 | × | yauhsien quits (~yauhsien@61-231-46-226.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 19:45:02 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 19:45:02 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 19:45:02 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 19:45:20 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 19:45:22 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 19:45:24 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 19:46:54 | → | azimut_ joins (~azimut@gateway/tor-sasl/azimut) |
| 19:48:40 | → | jespada_ joins (~jespada@45.162.228.190) |
| 19:50:50 | × | jespada quits (~jespada@200.123.141.222) (Ping timeout: 240 seconds) |
| 19:50:59 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds) |
| 19:53:45 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Quit: WeeChat 3.5) |
| 20:00:26 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 20:00:50 | → | jgeerds joins (~jgeerds@55d437cf.access.ecotel.net) |
| 20:02:22 | → | merijn joins (~merijn@c-001-001-023.client.esciencecenter.eduvpn.nl) |
| 20:03:06 | × | mima quits (~mmh@dhcp-138-246-3-181.dynamic.eduroam.mwn.de) (Ping timeout: 264 seconds) |
| 20:03:20 | → | img joins (~img@user/img) |
| 20:04:16 | × | img quits (~img@user/img) (Client Quit) |
| 20:04:54 | × | matijja quits (~matijja@193.77.181.201) (Quit: ZNC 1.8.2 - https://znc.in) |
| 20:06:09 | → | nek0 joins (~nek0@2a01:4f8:222:2b41::12) |
| 20:06:24 | → | matijja joins (~matijja@193.77.181.201) |
| 20:07:10 | → | img joins (~img@user/img) |
| 20:10:58 | × | gabriel_1 quits (~gabriel@188-167-229-200.dynamic.chello.sk) (Quit: WeeChat 3.5) |
| 20:11:38 | → | gabriel_sevecek joins (~gabriel@188-167-229-200.dynamic.chello.sk) |
| 20:13:36 | → | yauhsien joins (~yauhsien@61-231-46-226.dynamic-ip.hinet.net) |
| 20:14:07 | × | Jeanne-Kamikaze quits (~Jeanne-Ka@static-198-54-134-108.cust.tzulo.com) (Quit: Leaving) |
| 20:15:44 | × | matijja quits (~matijja@193.77.181.201) (Quit: ZNC 1.8.2 - https://znc.in) |
| 20:15:54 | → | haritz joins (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) |
| 20:15:54 | × | haritz quits (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host) |
| 20:15:54 | → | haritz joins (~hrtz@user/haritz) |
| 20:16:55 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 20:17:25 | → | matijja joins (~matijja@193.77.181.201) |
| 20:18:19 | × | yauhsien quits (~yauhsien@61-231-46-226.dynamic-ip.hinet.net) (Ping timeout: 272 seconds) |
| 20:20:08 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 20:21:52 | → | machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net) |
| 20:25:15 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 20:27:49 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 20:28:06 | × | sammelweis_ quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Read error: Connection reset by peer) |
| 20:28:08 | → | img joins (~img@user/img) |
| 20:31:30 | × | merijn quits (~merijn@c-001-001-023.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 20:32:25 | × | christiansen quits (~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 260 seconds) |
| 20:34:09 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 272 seconds) |
| 20:37:01 | → | pavonia joins (~user@user/siracusa) |
| 20:38:31 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 20:39:06 | × | ccntrq quits (~Thunderbi@2a01:c23:8c0e:d00:b9c7:8deb:b374:6205) (Remote host closed the connection) |
| 20:48:46 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 20:53:22 | → | dsp joins (~dsp@cpc152107-haye27-2-0-cust227.17-4.cable.virginm.net) |
| 20:58:50 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 20:59:42 | × | _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection) |
| 21:02:12 | → | nate4 joins (~nate@98.45.169.16) |
| 21:03:17 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 21:06:50 | × | nate4 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 21:12:30 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Ping timeout: 240 seconds) |
| 21:17:10 | × | dsp quits (~dsp@cpc152107-haye27-2-0-cust227.17-4.cable.virginm.net) (Ping timeout: 240 seconds) |
| 21:18:04 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 21:18:51 | × | pgass quits (~pg@190.247.245.154) (Ping timeout: 276 seconds) |
| 21:19:30 | × | alp quits (~alp@user/alp) (Ping timeout: 276 seconds) |
| 21:20:23 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds) |
| 21:21:29 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 21:21:46 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 21:25:50 | × | mstksg quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 240 seconds) |
| 21:27:28 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 21:28:08 | → | mstksg joins (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
| 21:29:35 | × | zebrag quits (~chris@user/zebrag) (Ping timeout: 260 seconds) |
| 21:35:38 | → | alp joins (~alp@user/alp) |
| 21:42:25 | × | acidjnk quits (~acidjnk@p200300d6e70586618de76952f976022e.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 21:43:56 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 21:52:59 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 21:55:25 | → | Katarushisu joins (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) |
| 21:57:28 | × | thatcher quits (lp0@heathens.club) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 21:58:06 | → | thatcher joins (lp0@heathens.club) |
| 21:59:03 | → | zebrag joins (~chris@user/zebrag) |
| 22:00:57 | → | Lumia joins (~Lumia@c-24-34-172-110.hsd1.ma.comcast.net) |
| 22:02:36 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) (Remote host closed the connection) |
| 22:06:34 | → | mimmy joins (~mimmy@66-46-12-74.dedicated.allstream.net) |
| 22:07:10 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds) |
| 22:08:16 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 22:09:14 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 22:11:42 | × | abhinav quits (~abhinav@c-67-169-139-16.hsd1.ca.comcast.net) (Read error: Connection reset by peer) |
| 22:15:46 | × | Lumia quits (~Lumia@c-24-34-172-110.hsd1.ma.comcast.net) (Quit: ,-) |
| 22:16:04 | → | Lumia joins (~Lumia@c-24-34-172-110.hsd1.ma.comcast.net) |
| 22:21:51 | × | Lumia quits (~Lumia@c-24-34-172-110.hsd1.ma.comcast.net) (Quit: ,-) |
| 22:22:00 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 22:23:38 | → | euandreh joins (~euandreh@189.6.33.250) |
| 22:32:22 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 22:32:30 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds) |
| 22:33:21 | → | merijn joins (~merijn@c-001-001-023.client.esciencecenter.eduvpn.nl) |
| 22:34:15 | → | mima joins (~mmh@aftr-62-216-210-127.dynamic.mnet-online.de) |
| 22:34:50 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 22:41:27 | × | jinsun quits (~jinsun@user/jinsun) (Read error: Connection reset by peer) |
| 22:53:50 | × | mimmy quits (~mimmy@66-46-12-74.dedicated.allstream.net) (Ping timeout: 244 seconds) |
| 22:55:10 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) (Remote host closed the connection) |
| 22:57:58 | × | mima quits (~mmh@aftr-62-216-210-127.dynamic.mnet-online.de) (Ping timeout: 240 seconds) |
| 22:59:18 | → | pmarg joins (~pmarg@2a01:799:159f:9b00:ccdd:708c:653c:729c) |
| 23:02:18 | × | merijn quits (~merijn@c-001-001-023.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 23:05:20 | → | mimmy joins (~mimmy@bras-base-toroon63x9w-grc-22-174-88-20-30.dsl.bell.ca) |
| 23:10:39 | × | dsrt^ quits (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) (Ping timeout: 276 seconds) |
| 23:12:29 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 23:15:40 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection) |
| 23:15:44 | × | nek0 quits (~nek0@2a01:4f8:222:2b41::12) (Quit: The Lounge - https://thelounge.chat) |
| 23:16:56 | → | nek0 joins (~nek0@2a01:4f8:222:2b41::12) |
| 23:20:58 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds) |
| 23:21:41 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 23:26:34 | → | dartleader1 joins (~dartleade@host-198-90-90-182.public.eastlink.ca) |
| 23:26:53 | × | segfaultfizzbuzz quits (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 244 seconds) |
| 23:30:06 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 23:30:18 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 23:31:10 | × | alexhandy2 quits (~trace@user/trace) (Read error: Connection reset by peer) |
| 23:31:17 | → | alexhandy joins (~trace@user/trace) |
| 23:32:34 | × | mstksg quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 272 seconds) |
| 23:33:43 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 23:33:48 | → | dsrt^ joins (~dsrt@c-73-207-207-252.hsd1.ga.comcast.net) |
| 23:34:24 | → | mstksg joins (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
| 23:37:30 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds) |
| 23:37:50 | × | jgeerds quits (~jgeerds@55d437cf.access.ecotel.net) (Ping timeout: 240 seconds) |
| 23:38:27 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:181f:21e0:9b42:e654) |
| 23:39:47 | → | segfaultfizzbuzz joins (~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) |
| 23:40:01 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 23:41:04 | × | Tuplanolla quits (~Tuplanoll@91-159-69-97.elisa-laajakaista.fi) (Quit: Leaving.) |
| 23:44:24 | → | mvk joins (~mvk@2607:fea8:5ce3:8500::909a) |
| 23:52:54 | × | Alex_test quits (~al_test@178.34.160.206) (Ping timeout: 276 seconds) |
| 23:53:51 | → | miv joins (~lkiraTrue@2804:6660:ff12:ef70:29cd:ef54:d2b1:731e) |
| 23:54:09 | × | AlexZenon quits (~alzenon@178.34.160.206) (Ping timeout: 260 seconds) |
| 23:56:19 | → | Alex_test joins (~al_test@178.34.160.206) |
| 23:58:12 | → | AlexZenon joins (~alzenon@178.34.160.206) |
All times are in UTC on 2022-07-15.