2023/03/15

2023-03-15 00:02:14 +0100talismanick(~talismani@2601:200:c000:f7a0::5321)
2023-03-15 00:06:27 +0100talismanick(~talismani@2601:200:c000:f7a0::5321) (Remote host closed the connection)
2023-03-15 00:07:05 +0100motherfsck(~motherfsc@user/motherfsck)
2023-03-15 00:15:14 +0100acidjnk(~acidjnk@p200300d6e715c49529b622cef8024c18.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-03-15 00:16:43 +0100xff0x(~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 246 seconds)
2023-03-15 00:18:54 +0100xff0x(~xff0x@178.255.149.135)
2023-03-15 00:19:57 +0100 <EvanR> Functor as "post processing"
2023-03-15 00:20:53 +0100jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 268 seconds)
2023-03-15 00:20:54 +0100 <EvanR> the functor laws do operate on the value level
2023-03-15 00:23:32 +0100srz(~srz@181.228.49.93)
2023-03-15 00:24:32 +0100zeenk(~zeenk@2a02:2f04:a307:2300::7fe) (Quit: Konversation terminated!)
2023-03-15 00:24:47 +0100xff0x(~xff0x@178.255.149.135) (Ping timeout: 264 seconds)
2023-03-15 00:26:05 +0100xff0x(~xff0x@2405:6580:b080:900:c2ab:3233:9b06:70ff)
2023-03-15 00:29:13 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-03-15 00:31:38 +0100fnurglewitz(uid263868@id-263868.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2023-03-15 00:32:11 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-15 00:34:23 +0100srz(~srz@181.228.49.93) (Ping timeout: 264 seconds)
2023-03-15 00:35:30 +0100mastarija(~mastarija@188.252.199.82) (Quit: WeeChat 3.7.1)
2023-03-15 00:41:12 +0100emmanuelux_(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2023-03-15 00:45:26 +0100a_coll(~acoll@45.92.120.189) (Remote host closed the connection)
2023-03-15 00:47:04 +0100gurkengl1s(~gurkengla@dynamic-089-204-153-207.89.204.153.pool.telefonica.de) (Ping timeout: 276 seconds)
2023-03-15 00:47:04 +0100gurkenglas(~gurkengla@dynamic-089-204-153-207.89.204.153.pool.telefonica.de) (Ping timeout: 276 seconds)
2023-03-15 00:49:25 +0100vgtw(~vgtw@user/vgtw) (Ping timeout: 250 seconds)
2023-03-15 00:50:29 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-03-15 00:50:30 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-03-15 00:50:30 +0100wroathe(~wroathe@user/wroathe)
2023-03-15 00:50:31 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-03-15 00:57:29 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Quit: Leaving)
2023-03-15 01:00:23 +0100xff0x(~xff0x@2405:6580:b080:900:c2ab:3233:9b06:70ff) (Ping timeout: 246 seconds)
2023-03-15 01:02:23 +0100xff0x(~xff0x@ai098135.d.east.v6connect.net)
2023-03-15 01:15:48 +0100xff0x(~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 255 seconds)
2023-03-15 01:16:35 +0100thyriaen_(~thyriaen@144.208.201.160) (Quit: Leaving)
2023-03-15 01:25:03 +0100Tuplanolla(~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) (Quit: Leaving.)
2023-03-15 01:25:15 +0100haritz(~hrtz@user/haritz) (Ping timeout: 260 seconds)
2023-03-15 01:26:41 +0100jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 250 seconds)
2023-03-15 01:28:07 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-15 01:31:07 +0100Ranhir(~Ranhir@157.97.53.139) (Ping timeout: 248 seconds)
2023-03-15 01:32:30 +0100haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk)
2023-03-15 01:32:30 +0100haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host)
2023-03-15 01:32:30 +0100haritz(~hrtz@user/haritz)
2023-03-15 01:33:32 +0100sagax(~sagax_nb@user/sagax) (Quit: Konversation terminated!)
2023-03-15 01:39:04 +0100gmg(~user@user/gehmehgeh)
2023-03-15 01:40:32 +0100gehmehgeh(~user@user/gehmehgeh) (Ping timeout: 255 seconds)
2023-03-15 01:44:12 +0100merijn(~merijn@86.86.29.250)
2023-03-15 01:45:06 +0100Ranhir(~Ranhir@157.97.53.139)
2023-03-15 01:48:21 +0100merijn(~merijn@86.86.29.250) (Ping timeout: 250 seconds)
2023-03-15 01:54:00 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 268 seconds)
2023-03-15 01:54:25 +0100Ranhir(~Ranhir@157.97.53.139) (Ping timeout: 250 seconds)
2023-03-15 01:55:35 +0100mauke_(~mauke@user/mauke)
2023-03-15 01:57:12 +0100mauke(~mauke@user/mauke) (Ping timeout: 255 seconds)
2023-03-15 01:57:13 +0100mauke_mauke
2023-03-15 02:00:11 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2023-03-15 02:04:10 +0100smallville7123(~Android@2001:8004:4440:fdd4:60b9:e57c:1e89:37dd)
2023-03-15 02:09:12 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:19aa:397c:29a:40e4)
2023-03-15 02:10:18 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2023-03-15 02:13:29 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:19aa:397c:29a:40e4) (Ping timeout: 250 seconds)
2023-03-15 02:13:35 +0100srz(~srz@179.36.127.68)
2023-03-15 02:16:25 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2023-03-15 02:22:29 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-03-15 02:27:49 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2023-03-15 02:33:02 +0100Kuttenbrunzer(~Kuttenbru@2a02:8108:8b80:1d48::f907) (Quit: Where is it)
2023-03-15 02:52:19 +0100Ranhir(~Ranhir@157.97.53.139)
2023-03-15 02:52:34 +0100califax(~califax@user/califx) (Remote host closed the connection)
2023-03-15 02:53:33 +0100califax(~califax@user/califx)
2023-03-15 02:54:51 +0100vglfr(~vglfr@37.73.89.236) (Ping timeout: 248 seconds)
2023-03-15 02:55:46 +0100jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 276 seconds)
2023-03-15 02:57:02 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2023-03-15 02:58:08 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-03-15 02:59:56 +0100caryhartline(~caryhartl@2600:1700:2d0:8d30:d925:db2d:aedc:50d4)
2023-03-15 03:04:52 +0100Zemyla(~ec2-user@ec2-54-80-174-150.compute-1.amazonaws.com) (Ping timeout: 276 seconds)
2023-03-15 03:12:48 +0100 <hololeap> monomer looks awesome
2023-03-15 03:15:22 +0100 <sm> I would like to see some monomer apps!
2023-03-15 03:15:47 +0100srz(~srz@179.36.127.68) (Remote host closed the connection)
2023-03-15 03:18:16 +0100srz(~srz@179.36.127.68)
2023-03-15 03:19:41 +0100vglfr(~vglfr@37.73.89.236)
2023-03-15 03:21:47 +0100 <hololeap> I played around with the demo exes and now I'm reading the haddocks, and it looks like something I tried to make a long time ago but failed because I didn't know enough.
2023-03-15 03:22:25 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-15 03:23:03 +0100 <hololeap> but it looks flexible enough to do just about anything. it's great because this kind of library has been sorely missing from haskell for a long time
2023-03-15 03:23:04 +0100sidy(~sidy@user/sidy) (Read error: Connection reset by peer)
2023-03-15 03:23:16 +0100 <hololeap> (and yeah, I guess monomer has been around for a couple years at least, but I didn't know about it)
2023-03-15 03:24:01 +0100 <sm> there are a lot of gui libs by now, but still not many gui apps. Maybe they're less needed nowadays
2023-03-15 03:24:16 +0100srz(~srz@179.36.127.68) (Read error: Connection reset by peer)
2023-03-15 03:24:20 +0100srz_(~srz@179.36.127.68)
2023-03-15 03:24:24 +0100 <sm> replaced by web browsers
2023-03-15 03:24:29 +0100bitcoinsbt(~bitcoinsb@2001:bb6:90e:ef00:9c95:d6ce:80ac:e9b2)
2023-03-15 03:26:36 +0100 <hololeap> what do people use for browser stuff? is it still threepenny?
2023-03-15 03:28:02 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 250 seconds)
2023-03-15 03:28:34 +0100bitcoinsbt(~bitcoinsb@2001:bb6:90e:ef00:9c95:d6ce:80ac:e9b2) (Quit: Client closed)
2023-03-15 03:28:46 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2023-03-15 03:29:13 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 03:29:34 +0100smallville7123(~Android@2001:8004:4440:fdd4:60b9:e57c:1e89:37dd) (Ping timeout: 246 seconds)
2023-03-15 03:29:45 +0100kimjetwav(~user@2607:fea8:235e:b600:4cf2:6784:6712:f6ef) (Quit: ERC 5.4.1 (IRC client for GNU Emacs 29.0.60))
2023-03-15 03:30:03 +0100 <segfaultfizzbuzz> so, chatgpt4 knows haskell. try asking it to write tic tac toe in haskell ;-)
2023-03-15 03:30:15 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:19aa:397c:29a:40e4)
2023-03-15 03:32:38 +0100bitcoinsbt(~bitcoinsb@2001:bb6:90e:ef00:9c95:d6ce:80ac:e9b2)
2023-03-15 03:33:42 +0100bitcoinsbt(~bitcoinsb@2001:bb6:90e:ef00:9c95:d6ce:80ac:e9b2) (Client Quit)
2023-03-15 03:34:13 +0100 <sm> hololeap: anything and everything methinks
2023-03-15 03:35:12 +0100smallville7123(~Android@2001:8004:4440:fdd4:60b9:e57c:1e89:37dd)
2023-03-15 03:35:13 +0100bitcoinsbt(~bitcoinsb@2001:bb6:90e:ef00:9c95:d6ce:80ac:e9b2)
2023-03-15 03:37:17 +0100bitcoinsbt(~bitcoinsb@2001:bb6:90e:ef00:9c95:d6ce:80ac:e9b2) (Client Quit)
2023-03-15 03:39:27 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 268 seconds)
2023-03-15 03:40:47 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2023-03-15 03:41:06 +0100kimjetwav(~user@2607:fea8:235e:b600:4cf2:6784:6712:f6ef)
2023-03-15 03:45:19 +0100merijn(~merijn@86.86.29.250)
2023-03-15 03:52:25 +0100 <maerwald[m]> segfaultfizzbuzz: did you?
2023-03-15 03:52:57 +0100 <maerwald[m]> For some reason my excitement of this tech is so low I barely played with it at all. I feel like supervising a student, which is just stressfu'
2023-03-15 03:59:09 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53) (Ping timeout: 255 seconds)
2023-03-15 04:02:35 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2023-03-15 04:04:22 +0100jero98772(~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection)
2023-03-15 04:05:38 +0100srz_(~srz@179.36.127.68) (Quit: Leaving)
2023-03-15 04:10:05 +0100gastus_(~gastus@185.6.123.224)
2023-03-15 04:13:46 +0100gastus(~gastus@185.6.123.231) (Ping timeout: 276 seconds)
2023-03-15 04:18:55 +0100merijn(~merijn@86.86.29.250) (Ping timeout: 268 seconds)
2023-03-15 04:19:17 +0100razetime(~Thunderbi@117.193.2.162)
2023-03-15 04:21:45 +0100td_(~td@i53870906.versanet.de) (Ping timeout: 250 seconds)
2023-03-15 04:23:40 +0100td_(~td@i53870901.versanet.de)
2023-03-15 04:24:21 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 255 seconds)
2023-03-15 04:24:23 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-03-15 04:29:14 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2023-03-15 04:36:11 +0100phma(~phma@host-67-44-208-67.hnremote.net) (Read error: Connection reset by peer)
2023-03-15 04:36:39 +0100phma(~phma@2001:5b0:211c:53d8:9ceb:db03:6719:e454)
2023-03-15 04:52:50 +0100razetime(~Thunderbi@117.193.2.162) (Ping timeout: 246 seconds)
2023-03-15 04:53:21 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 04:56:28 +0100mbuf(~Shakthi@49.207.178.186)
2023-03-15 04:57:22 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-03-15 04:57:22 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-03-15 04:57:22 +0100finn_elijaFinnElija
2023-03-15 05:04:11 +0100Lycurgus(~juan@user/Lycurgus)
2023-03-15 05:08:27 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2023-03-15 05:11:18 +0100vgtw(~vgtw@user/vgtw)
2023-03-15 05:12:32 +0100mncheck(~mncheck@193.224.205.254)
2023-03-15 05:15:08 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Quit: use-value)
2023-03-15 05:20:25 +0100Lycurgus(~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz)
2023-03-15 05:23:17 +0100razetime(~Thunderbi@117.193.2.162)
2023-03-15 05:49:15 +0100bliminse(~bliminse@user/bliminse) (Ping timeout: 248 seconds)
2023-03-15 05:49:18 +0100 <segfaultfizzbuzz> maerwald: yes i did. i didn't try to run the haskell code but i did it in another language and it ran
2023-03-15 05:49:58 +0100 <segfaultfizzbuzz> i asked it to write a few simple programs and they all worked... i am guessing that i didn't get lucky
2023-03-15 05:50:30 +0100 <segfaultfizzbuzz> it seems like this might replace 95% of little excel functions and ad hoc sql queries and the like in the next decade
2023-03-15 05:51:07 +0100bliminse(~bliminse@user/bliminse)
2023-03-15 05:52:28 +0100_\_(~o@user/offon) (Quit: ___)
2023-03-15 05:52:42 +0100_\_(~o@user/offon)
2023-03-15 06:01:22 +0100trev(~trev@user/trev)
2023-03-15 06:01:54 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 268 seconds)
2023-03-15 06:03:37 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53) (Ping timeout: 276 seconds)
2023-03-15 06:06:54 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 06:14:01 +0100motherfsck(~motherfsc@user/motherfsck) (Ping timeout: 276 seconds)
2023-03-15 06:15:16 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 06:15:58 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 276 seconds)
2023-03-15 06:18:06 +0100anatta(~AdiIRC@h-155-4-132-216.NA.cust.bahnhof.se) (Remote host closed the connection)
2023-03-15 06:18:11 +0100ddellacosta(~ddellacos@146.70.165.157) (Ping timeout: 260 seconds)
2023-03-15 06:29:38 +0100razetime(~Thunderbi@117.193.2.162) (Quit: See You Space Cowboy)
2023-03-15 06:30:40 +0100Sauvin(~sauvin@user/Sauvin) (Remote host closed the connection)
2023-03-15 06:30:59 +0100Sauvin(~sauvin@user/Sauvin)
2023-03-15 06:41:35 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 06:44:31 +0100razetime(~Thunderbi@117.193.2.162)
2023-03-15 06:46:06 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 255 seconds)
2023-03-15 06:49:07 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 276 seconds)
2023-03-15 06:56:32 +0100statusbot6(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com) (Read error: Connection reset by peer)
2023-03-15 06:56:42 +0100statusbot(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com)
2023-03-15 07:05:00 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2023-03-15 07:12:47 +0100shriekingnoise(~shrieking@186.137.175.87) (Ping timeout: 264 seconds)
2023-03-15 07:17:46 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2023-03-15 07:18:19 +0100anpad(~pandeyan@user/anpad)
2023-03-15 07:24:52 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 276 seconds)
2023-03-15 07:29:12 +0100no-n(sid524992@smol/hors)
2023-03-15 07:29:39 +0100pyook(~pyook@user/puke)
2023-03-15 07:34:11 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2023-03-15 07:36:45 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2023-03-15 07:38:03 +0100opticblast(~Thunderbi@172.58.84.141) (Ping timeout: 250 seconds)
2023-03-15 07:47:17 +0100califax(~califax@user/califx) (Ping timeout: 255 seconds)
2023-03-15 07:54:48 +0100califax(~califax@user/califx)
2023-03-15 07:56:11 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2023-03-15 07:58:24 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2023-03-15 08:06:22 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-03-15 08:08:10 +0100zmt00(~zmt00@user/zmt00) (Read error: Connection reset by peer)
2023-03-15 08:09:05 +0100zmt00(~zmt00@user/zmt00)
2023-03-15 08:13:55 +0100hugo-(znc@verdigris.lysator.liu.se) (Ping timeout: 260 seconds)
2023-03-15 08:17:58 +0100_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-03-15 08:19:05 +0100jamestmartin(~james@jtmar.me) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
2023-03-15 08:19:18 +0100jamestmartin(~james@jtmar.me)
2023-03-15 08:22:15 +0100michalz(~michalz@185.246.207.193)
2023-03-15 08:24:54 +0100hugo-(znc@verdigris.lysator.liu.se)
2023-03-15 08:26:35 +0100slack1256(~slack1256@186.11.43.166) (Ping timeout: 264 seconds)
2023-03-15 08:27:20 +0100caryhartline(~caryhartl@2600:1700:2d0:8d30:d925:db2d:aedc:50d4) (Remote host closed the connection)
2023-03-15 08:30:29 +0100 <dminuoso> Mmm. Is there some sneaky way to inject getpeername into a header from inside warp without modifying warp?
2023-03-15 08:30:47 +0100 <dminuoso> Ive been going over the documentation over and over again, and I just dont see any interface that reasonably lets me do this.
2023-03-15 08:32:04 +0100 <dminuoso> At best an Application has a Reques, which has a field removeHost, but I would need the file descriptor of the connection and I just dont see how you can get that
2023-03-15 08:33:46 +0100thegeekinside(~thegeekin@189.217.80.156) (Read error: Connection reset by peer)
2023-03-15 08:35:26 +0100enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7)
2023-03-15 08:36:44 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:b1e:376:22d2:70c1)
2023-03-15 08:45:50 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 08:47:29 +0100monoidal(~monoidal@2a01cb0801ce4b0038fc9abb7c187a61.ipv6.abo.wanadoo.fr)
2023-03-15 08:48:53 +0100coot(~coot@213.134.171.3)
2023-03-15 08:50:06 +0100ft(~ft@p3e9bc443.dip0.t-ipconnect.de) (Quit: leaving)
2023-03-15 08:54:39 +0100kenran(~user@user/kenran)
2023-03-15 09:09:36 +0100coot(~coot@213.134.171.3) (Quit: coot)
2023-03-15 09:11:26 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-15 09:13:03 +0100wootehfoot(~wootehfoo@user/wootehfoot)
2023-03-15 09:13:10 +0100 <Athas> Is there a library with a monomorphic tuple type? E.g. 'type Pair a = (a,a)'. I mostly need this due to the implications it has for typeclass instances (e.g. Functor).
2023-03-15 09:14:29 +0100 <mauke> https://hackage.haskell.org/package/ghc-9.6.1/docs/GHC-Data-Pair.html#t:Pair :-/
2023-03-15 09:15:02 +0100 <Athas> Yeah, alright, but I'm not going to depend on that package.
2023-03-15 09:15:12 +0100 <Athas> I guess I can write my own. I also need Triple. No big deal.
2023-03-15 09:15:22 +0100Square2(~Square4@user/square)
2023-03-15 09:15:26 +0100acidjnk(~acidjnk@p200300d6e715c495a8bebee94409ae55.dip0.t-ipconnect.de)
2023-03-15 09:16:08 +0100 <mauke> ghc GHC.Data.Pair, ghc-lib-parser GHC.Data.Pair, Agda Agda.Utils.Tuple, one-liner Generics.OneLiner.Internal, quickcheck-state-machine Test.StateMachine.Types
2023-03-15 09:16:30 +0100 <Athas> Well, I'm not the only one to need this, but it does look like nobody is sharing theirs!
2023-03-15 09:17:11 +0100 <Hecate> Athas: hehe
2023-03-15 09:17:23 +0100 <[Leary]> There's also V2 and V3 from linear.
2023-03-15 09:18:27 +0100 <Athas> Yes, V3 has the right structure, but it's a bit of a big dependency for this, and its auxiliary functions all assume numeric elements (which is fair).
2023-03-15 09:19:08 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 246 seconds)
2023-03-15 09:20:32 +0100 <[exa]> Athas: Data.Tuple.Homogenous ? but looks ancient
2023-03-15 09:20:47 +0100 <[Leary]> Product Identity Identity >:)
2023-03-15 09:34:05 +0100 <tomsmeding> Athas: re "nobody is sharing theirs": it would be a tiny tiny package just for a few types like this. And if you have a larger package then it typically has different goals, and exporting types like these would be beside the point. Perhaps that's the reason? (Also, data Pair a = Pair a a deriving (Eq, Ord, Show, Read, Functor, Foldable, Traversable, Generic) :p)
2023-03-15 09:34:33 +0100 <tomsmeding> i.e. "is that really worth a library"
2023-03-15 09:34:42 +0100 <Athas> I will also not be sharing mine.
2023-03-15 09:34:46 +0100 <tomsmeding> :D
2023-03-15 09:34:57 +0100 <tomsmeding> Futhark.Utils.Pair
2023-03-15 09:37:14 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:19aa:397c:29a:40e4) (Remote host closed the connection)
2023-03-15 09:37:50 +0100zeenk(~zeenk@2a02:2f04:a307:2300::7fe)
2023-03-15 09:43:22 +0100raym(~ray@user/raym)
2023-03-15 09:43:33 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-03-15 09:45:03 +0100dsrt^(~dsrt@c-24-30-76-89.hsd1.ga.comcast.net) (Remote host closed the connection)
2023-03-15 09:47:07 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 09:52:25 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 276 seconds)
2023-03-15 09:56:33 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 09:56:54 +0100nschoe(~q@141.101.51.197)
2023-03-15 09:59:23 +0100cheater(~Username@user/cheater) (Ping timeout: 246 seconds)
2023-03-15 09:59:24 +0100cheater_(~Username@user/cheater)
2023-03-15 09:59:24 +0100cheater_cheater
2023-03-15 10:00:23 +0100jonathanx(~jonathan@h-176-10-144-60.NA.cust.bahnhof.se)
2023-03-15 10:00:28 +0100yl53[m](~yl53matri@2001:470:69fc:105::85b) (Quit: You have been kicked for being idle)
2023-03-15 10:01:28 +0100 <jonathanx> I remember a data type that is a number with a type level number limiting the max size. So you could write "Foo 2" to get a number type supporting the range 0 -> 2
2023-03-15 10:01:40 +0100 <jonathanx> Can't remember the name, anyone know it?
2023-03-15 10:01:58 +0100yl53[m](~yl53matri@2001:470:69fc:105::85b)
2023-03-15 10:02:34 +0100 <mauke> quite, but not entirely dissimilar: https://hackage.haskell.org/package/base-4.18.0.0/docs/Data-Fixed.html#t:Fixed
2023-03-15 10:03:11 +0100 <jackdk> jonathanx: fin? https://hackage.haskell.org/package/fin
2023-03-15 10:05:37 +0100 <mauke> https://hackage.haskell.org/package/finite-typelits-0.1.6.0/docs/Data-Finite.html
2023-03-15 10:06:05 +0100yl53[m](~yl53matri@2001:470:69fc:105::85b) ()
2023-03-15 10:06:39 +0100 <jonathanx> finite-typelits is it! the fin packagesays "finite-typelits . Is a great package, but uses GHC.TypeLits". What's the problem with GHC.TypeLits?
2023-03-15 10:10:20 +0100thyriaen(~thyriaen@2a01:aea0:dd4:5328:6245:cbff:fe9f:48b1)
2023-03-15 10:10:38 +0100 <tomsmeding> jonathanx: they're not an inductive data type, so you can't do induction over them in a decent way
2023-03-15 10:10:58 +0100 <tomsmeding> e.g. you can't have a type class that takes a GHC.TypeLits.Nat parameter and has an instance for 0 and for n+1
2023-03-15 10:11:03 +0100 <tomsmeding> or at least not easily
2023-03-15 10:11:19 +0100 <tomsmeding> with datakinds-lifted 'data Nat = Z | S Nat', doing stuff like that is trivial
2023-03-15 10:11:36 +0100 <jonathanx> right
2023-03-15 10:12:26 +0100 <tomsmeding> you need ghc-typelits-natnormalise for almost everything, and ghc-typelits-knownnat for the others, and then still there are cases where ghc is just not smart enough to simplify the equations, such as in iirc some pattern matching situations where the plugins kick in too late
2023-03-15 10:13:05 +0100califax(~califax@user/califx) (Ping timeout: 255 seconds)
2023-03-15 10:13:59 +0100califax(~califax@user/califx)
2023-03-15 10:14:29 +0100_xor(~xor@74.215.46.17) (Quit: bbiab)
2023-03-15 10:15:56 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 10:17:05 +0100 <tomsmeding> jonathanx: the fact that this doesn't compile https://play.haskell.org/saved/L8rbUj5K
2023-03-15 10:17:47 +0100bhall(~brunohall@195.147.207.136)
2023-03-15 10:18:37 +0100 <tomsmeding> and with AllowAmbiguousTypes on, you can't call bar https://play.haskell.org/saved/EyTYdzio
2023-03-15 10:19:16 +0100hugo-(znc@verdigris.lysator.liu.se) (Ping timeout: 265 seconds)
2023-03-15 10:21:29 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 246 seconds)
2023-03-15 10:22:02 +0100gurkenglas(~gurkengla@dynamic-089-204-153-207.89.204.153.pool.telefonica.de)
2023-03-15 10:22:51 +0100jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net)
2023-03-15 10:23:00 +0100MajorBiscuit(~MajorBisc@145.94.168.115)
2023-03-15 10:23:30 +0100 <jonathanx> Thanks! I've only been exploring dependent haskell a bit, so I only get the general idea. But I have enough to go on whenever I dive into it in the future. Thanks for the helpful responses! :)
2023-03-15 10:27:03 +0100gurkengl1s(~gurkengla@dynamic-089-204-153-207.89.204.153.pool.telefonica.de)
2023-03-15 10:32:19 +0100hugo-(znc@verdigris.lysator.liu.se)
2023-03-15 10:32:25 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2023-03-15 10:33:38 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 10:37:43 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-03-15 10:38:07 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 260 seconds)
2023-03-15 10:38:11 +0100acidjnk(~acidjnk@p200300d6e715c495a8bebee94409ae55.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2023-03-15 10:38:13 +0100razetime(~Thunderbi@117.193.2.162) (Quit: See You Space Cowboy)
2023-03-15 10:41:00 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2023-03-15 10:41:33 +0100acidjnk(~acidjnk@p200300d6e715c495a83bcfc2f7105d67.dip0.t-ipconnect.de)
2023-03-15 10:42:03 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 248 seconds)
2023-03-15 10:45:02 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in)
2023-03-15 10:48:57 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-03-15 10:49:44 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 10:52:13 +0100cheater_(~Username@user/cheater)
2023-03-15 10:52:55 +0100cheater(~Username@user/cheater) (Ping timeout: 256 seconds)
2023-03-15 10:52:57 +0100cheater_cheater
2023-03-15 10:57:41 +0100mmhat(~mmh@p200300f1c715f77cee086bfffe095315.dip0.t-ipconnect.de)
2023-03-15 11:01:23 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53) (Ping timeout: 246 seconds)
2023-03-15 11:10:42 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 255 seconds)
2023-03-15 11:12:15 +0100pyook(~pyook@user/puke) ()
2023-03-15 11:13:34 +0100wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2023-03-15 11:13:59 +0100crazazy(~user@2001:67c:2564:a307:fb49:9a8d:6f6b:30aa)
2023-03-15 11:21:51 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 11:24:34 +0100gurkenglas(~gurkengla@dynamic-089-204-153-207.89.204.153.pool.telefonica.de) (Killed (osmium.libera.chat (Nickname regained by services)))
2023-03-15 11:24:34 +0100gurkengl1sGurkenglas
2023-03-15 11:24:51 +0100gurkengl1s(~gurkengla@dynamic-089-204-153-207.89.204.153.pool.telefonica.de)
2023-03-15 11:26:21 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 256 seconds)
2023-03-15 11:29:55 +0100hugo-(znc@verdigris.lysator.liu.se) (Ping timeout: 260 seconds)
2023-03-15 11:37:58 +0100L29Ah(~L29Ah@wikipedia/L29Ah)
2023-03-15 11:38:29 +0100hugo-(znc@verdigris.lysator.liu.se)
2023-03-15 11:47:38 +0100ubert1(~Thunderbi@2a02:8109:abc0:6434:3e03:bd4c:f4ca:dd82)
2023-03-15 11:49:08 +0100gtdg(~gtdg@user/gtdg)
2023-03-15 11:51:08 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2023-03-15 11:53:05 +0100L29Ah(~L29Ah@wikipedia/L29Ah)
2023-03-15 11:53:27 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2023-03-15 11:53:58 +0100vglfr(~vglfr@37.73.89.236) (Ping timeout: 276 seconds)
2023-03-15 11:57:45 +0100L29Ah(~L29Ah@wikipedia/L29Ah)
2023-03-15 11:59:08 +0100cheater(~Username@user/cheater) (Ping timeout: 246 seconds)
2023-03-15 12:00:16 +0100pavonia(~user@user/siracusa) (Quit: Bye!)
2023-03-15 12:00:55 +0100CiaoSen(~Jura@p200300c957080a002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2023-03-15 12:03:21 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2023-03-15 12:04:26 +0100chele(~chele@user/chele)
2023-03-15 12:10:38 +0100xff0x(~xff0x@2405:6580:b080:900:eef:2408:c8ce:c6ee)
2023-03-15 12:18:08 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2023-03-15 12:19:38 +0100gtdg(~gtdg@user/gtdg) (Ping timeout: 260 seconds)
2023-03-15 12:20:43 +0100acidjnk(~acidjnk@p200300d6e715c495a83bcfc2f7105d67.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2023-03-15 12:22:03 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 12:25:50 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 255 seconds)
2023-03-15 12:25:51 +0100jpds1(~jpds@gateway/tor-sasl/jpds)
2023-03-15 12:26:28 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 246 seconds)
2023-03-15 12:27:04 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 12:27:17 +0100mesaoptimizer2(34cef275bb@user/PapuaHardyNet)
2023-03-15 12:28:05 +0100 <mesaoptimizer2> https://haskell-language-server.readthedocs.io/en/latest/configuration.html config for eglot uses TWO `:config` declarations. This means the second one isn't run, and this causes a bug that is hard to notice. Wasted 15-30 minutes of my life
2023-03-15 12:29:34 +0100 <mesaoptimizer2> you have no idea how much I hate the pain it takes to set up Haskell tooling. It is about as painful as setting up Arch Linux.
2023-03-15 12:29:57 +0100cheater(~Username@user/cheater)
2023-03-15 12:30:58 +0100vpan(~0@212.117.1.172)
2023-03-15 12:31:22 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 246 seconds)
2023-03-15 12:35:45 +0100acidjnk(~acidjnk@p200300d6e715c4953c9ace5586e07e06.dip0.t-ipconnect.de)
2023-03-15 12:38:04 +0100vglfr(~vglfr@37.73.89.236)
2023-03-15 12:38:51 +0100crazazy(~user@2001:67c:2564:a307:fb49:9a8d:6f6b:30aa) (Ping timeout: 248 seconds)
2023-03-15 12:39:41 +0100xff0x(~xff0x@2405:6580:b080:900:eef:2408:c8ce:c6ee) (Ping timeout: 246 seconds)
2023-03-15 12:39:52 +0100mikoto-chan(~mikoto-ch@2001:999:500:3b03:ce9a:e57c:6d23:628)
2023-03-15 12:40:05 +0100xff0x(~xff0x@ai098135.d.east.v6connect.net)
2023-03-15 12:41:15 +0100 <Jade[m]1> Arch is pretty easy to set up tbh
2023-03-15 12:46:44 +0100Gurkenglas(~gurkengla@dynamic-089-204-153-207.89.204.153.pool.telefonica.de) (Ping timeout: 246 seconds)
2023-03-15 12:47:27 +0100gurkengl1s(~gurkengla@dynamic-089-204-153-207.89.204.153.pool.telefonica.de) (Ping timeout: 250 seconds)
2023-03-15 12:48:43 +0100gurkenglas(~gurkengla@dynamic-046-114-182-147.46.114.pool.telefonica.de)
2023-03-15 12:48:56 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-03-15 12:48:56 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-03-15 12:48:56 +0100finn_elijaFinnElija
2023-03-15 12:49:28 +0100gurkengl1s(~gurkengla@dynamic-046-114-182-147.46.114.pool.telefonica.de)
2023-03-15 12:51:05 +0100vglfr(~vglfr@37.73.89.236) (Remote host closed the connection)
2023-03-15 12:52:01 +0100vglfr(~vglfr@37.73.89.236)
2023-03-15 12:54:38 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Quit: Lost terminal)
2023-03-15 12:54:57 +0100 <mesaoptimizer2> try using LUKS hard disk encryption, and using grub. Oh, and using a non-standard keyboard layout to input the password in grub. In contrast, Manjaro and QubesOS are a delight to install (not use -- Manjaro is ridiculous. And QubesOS doesn't make sense for most people). But this is off-topic.
2023-03-15 12:54:59 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-03-15 12:57:34 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 13:00:11 +0100mikoto-chan(~mikoto-ch@2001:999:500:3b03:ce9a:e57c:6d23:628) (Ping timeout: 264 seconds)
2023-03-15 13:01:07 +0100cheater(~Username@user/cheater) (Ping timeout: 246 seconds)
2023-03-15 13:01:50 +0100cheater(~Username@user/cheater)
2023-03-15 13:02:02 +0100mikoto-chan(~mikoto-ch@2001:999:589:7485:41b6:b2fd:c31b:4ca)
2023-03-15 13:02:09 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 265 seconds)
2023-03-15 13:10:22 +0100mikoto-chan(~mikoto-ch@2001:999:589:7485:41b6:b2fd:c31b:4ca) (Ping timeout: 265 seconds)
2023-03-15 13:16:15 +0100mncheck(~mncheck@193.224.205.254) (Ping timeout: 255 seconds)
2023-03-15 13:21:52 +0100gastus(~gastus@5.83.191.9)
2023-03-15 13:25:14 +0100gastus_(~gastus@185.6.123.224) (Ping timeout: 246 seconds)
2023-03-15 13:27:02 +0100flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) (Remote host closed the connection)
2023-03-15 13:27:20 +0100flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962)
2023-03-15 13:30:03 +0100vglfr(~vglfr@37.73.89.236) (Remote host closed the connection)
2023-03-15 13:30:05 +0100mikoto-chan(~mikoto-ch@2001:999:589:7485:41b6:b2fd:c31b:4ca)
2023-03-15 13:30:30 +0100vglfr(~vglfr@37.73.89.236)
2023-03-15 13:35:03 +0100L29Ah(~L29Ah@wikipedia/L29Ah)
2023-03-15 13:46:28 +0100cheater_(~Username@user/cheater)
2023-03-15 13:48:59 +0100cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2023-03-15 13:49:02 +0100cheater_cheater
2023-03-15 13:49:14 +0100driib(~driib@vmi931078.contaboserver.net)
2023-03-15 13:54:12 +0100 <fendor[m]> <mesaoptimizer2> "https://haskell-language-server..." <- thank you for finding issues in the documentation, would you mind opening an issue or providing a PR that fixes it?
2023-03-15 13:56:09 +0100bionade24(~bionade24@2a03:4000:33:45b::1)
2023-03-15 13:56:39 +0100cheater_(~Username@user/cheater)
2023-03-15 13:57:05 +0100 <bionade24> Hello, I need help understanding import correctly. When I do "import Numeric" why is Natural not in scope?
2023-03-15 13:58:26 +0100 <geekosaur> because Numeric is not Numeric.Natural
2023-03-15 13:58:50 +0100cheater(~Username@user/cheater) (Ping timeout: 246 seconds)
2023-03-15 13:59:21 +0100cheater__(~Username@user/cheater)
2023-03-15 13:59:21 +0100cheater__cheater
2023-03-15 13:59:45 +0100 <geekosaur> did you come from Python, by any chance?
2023-03-15 14:00:44 +0100 <bionade24> geekosaur: Python is one of the langs I'm proficient in ;)
2023-03-15 14:00:53 +0100cheater_(~Username@user/cheater) (Ping timeout: 246 seconds)
2023-03-15 14:01:47 +0100 <geekosaur> so, as I understand it, in Python if you import something you are actually exposing the contents of an object, and something like `Numeric.Natural` would mean "the sub-object `Natural` of the object `Numeric`"
2023-03-15 14:01:51 +0100 <bionade24> When I open ghci and "import Numeric" and then want to run ":info Numeric" it isn't in scope either.
2023-03-15 14:03:19 +0100 <geekosaur> in Haskell, a module is just a file. there are no objects or other things involved, and a module `Numeric` would only bring a type or constructor `Numeric` in scope if it happened to export one
2023-03-15 14:03:44 +0100 <geekosaur> but in fact `Numeric` is just a collection of things related to numbers, so there's no `Numeric` to show you afterward
2023-03-15 14:03:56 +0100jpds1(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 255 seconds)
2023-03-15 14:04:07 +0100mikoto-chan(~mikoto-ch@2001:999:589:7485:41b6:b2fd:c31b:4ca) (Ping timeout: 246 seconds)
2023-03-15 14:04:33 +0100 <bionade24> geekosaur: But if I'd do a "import qualified Numeric" It'd behave like in python, wouldn't it?
2023-03-15 14:04:43 +0100 <geekosaur> nope
2023-03-15 14:05:09 +0100 <geekosaur> there still wouldn't be a thing called Numeric, it'd just e a prefix you would have to provide for things
2023-03-15 14:05:34 +0100 <geekosaur> see also `import qualified … as X` which changes that prefix, it doesn't rename an object
2023-03-15 14:06:23 +0100 <jackdk> > :browse Data.List
2023-03-15 14:06:25 +0100 <lambdabot> <hint>:1:1: error: parse error on input ‘:’
2023-03-15 14:06:33 +0100 <jackdk> % :browse Data.List
2023-03-15 14:06:34 +0100 <yahb2> Data.List.isSubsequenceOf :: Eq a => [a] -> [a] -> Bool ; (!!) :: [a] -> Int -> a ; (++) :: [a] -> [a] -> [a] ; (base-4.16.4.0:Data.OldList.\\) :: Eq a => [a] -> [a] -> [a] ; all :: Foldable t => (...
2023-03-15 14:06:58 +0100 <jackdk> bionade24: `:info` is not the command to list the contents of a module, you want `:browse`
2023-03-15 14:07:00 +0100 <mesaoptimizer2> fendor[m], I'll try. I stopped using github years ago after they banned a throwaway github account I used to make issues for such projects.
2023-03-15 14:07:10 +0100 <bionade24> geekosaur: Thx, understood. Another question to the same problem. base != Prelude ? Does ghci normally have base?
2023-03-15 14:07:17 +0100 <bionade24> Or only cabal repl
2023-03-15 14:07:31 +0100 <fendor[m]> mesaoptimizer2: thanks!
2023-03-15 14:07:31 +0100 <mesaoptimizer2> (that's why I linked it here btw -- I hope that someone else will make the issue since I didn't want to deal with github)
2023-03-15 14:07:45 +0100 <geekosaur> base is a package, Prelude is a module within that package
2023-03-15 14:07:53 +0100 <geekosaur> Prelude is always imported
2023-03-15 14:08:14 +0100 <geekosaur> you can reliably import any other module from base because it's always available
2023-03-15 14:08:29 +0100 <bionade24> When I do ":browse Numeric" it doesn't contain Natural, despite hoogle telling me so
2023-03-15 14:09:16 +0100 <fendor[m]> In my experience, shouting into the void will usually not make anyone create an issue. E.g., I am not a user of egot, so I can neither confirm what the issue is, nor do I know how to fix it.
2023-03-15 14:10:19 +0100 <geekosaur> hoogle does not tell you so. it tells you there is a module Numeric.Natural
2023-03-15 14:10:22 +0100 <mesaoptimizer2> if "anyone" includes maintainers of HLS, then it is likely they would
2023-03-15 14:10:37 +0100 <geekosaur> this module is, despite its name, unrelated to Numeric
2023-03-15 14:10:58 +0100 <mesaoptimizer2> (but I *do* agree with you about the importance of making issues.)
2023-03-15 14:11:06 +0100arkeet(~arkeet@moriya.ca) (Ping timeout: 250 seconds)
2023-03-15 14:11:21 +0100arkeet(~arkeet@moriya.ca)
2023-03-15 14:12:14 +0100sm[i]_(~user@li229-222.members.linode.com) (Read error: Connection reset by peer)
2023-03-15 14:13:02 +0100 <fendor[m]> I am a maintainer of HLS :P
2023-03-15 14:13:36 +0100 <bionade24> geekosaur: That confused me.
2023-03-15 14:15:09 +0100 <bionade24> Now I get data constructor not in scope for Natural
2023-03-15 14:15:38 +0100MasseR46(thelounge@2001:bc8:47a0:1521::1) (Quit: The Lounge - https://thelounge.chat)
2023-03-15 14:16:12 +0100MasseR46(thelounge@2001:bc8:47a0:1521::1)
2023-03-15 14:16:31 +0100CiaoSen(~Jura@p200300c957080a002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2023-03-15 14:16:34 +0100 <geekosaur> right, because that won't be in scope until you import Numeric.Natural
2023-03-15 14:16:55 +0100 <geekosaur> there isn't anything in Numeric called Natural; there just happens to be a module called Numeric.Natural
2023-03-15 14:17:03 +0100 <geekosaur> but modules don't contain other modules
2023-03-15 14:17:14 +0100 <bionade24> geekosaur: I did import Numeric.Natural before trying to use Natural,
2023-03-15 14:17:14 +0100 <geekosaur> (they can re-export them, with some limitations)
2023-03-15 14:18:14 +0100 <geekosaur> looks in scope to me
2023-03-15 14:19:01 +0100 <geekosaur> https://paste.tomsmeding.com/h4sW23xG
2023-03-15 14:19:26 +0100sm[i]_(~user@li229-222.members.linode.com)
2023-03-15 14:19:29 +0100__monty__(~toonn@user/toonn)
2023-03-15 14:22:09 +0100 <geekosaur> there are no constructors for it; it uses Num for that
2023-03-15 14:22:22 +0100 <geekosaur> @let import Numeric.Natural
2023-03-15 14:22:24 +0100 <lambdabot> Defined.
2023-03-15 14:22:35 +0100cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2023-03-15 14:22:47 +0100 <geekosaur> :t fromInteger 5 :: Natural
2023-03-15 14:22:49 +0100 <lambdabot> Natural
2023-03-15 14:23:12 +0100 <geekosaur> basically, it tries to act like a number; it just doesn't support negative values
2023-03-15 14:24:44 +0100 <bionade24> geekosaur: My bad, tried to do type signatures in ghci. Works in a file
2023-03-15 14:25:49 +0100 <bionade24> Thx for your help
2023-03-15 14:26:04 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 14:27:13 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2023-03-15 14:28:49 +0100bhall(~brunohall@195.147.207.136) (Ping timeout: 256 seconds)
2023-03-15 14:30:29 +0100irrgit(~irrgit@146.70.27.242)
2023-03-15 14:30:36 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 265 seconds)
2023-03-15 14:30:41 +0100troydm(~troydm@user/troydm)
2023-03-15 14:36:35 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 14:37:51 +0100thegeekinside(~thegeekin@189.217.80.156)
2023-03-15 14:38:53 +0100thegeekinside(~thegeekin@189.217.80.156) (Remote host closed the connection)
2023-03-15 14:40:18 +0100dequbed(~dequbed@banana-new.kilobyte22.de) (Quit: bye!)
2023-03-15 14:41:21 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:19aa:397c:29a:40e4)
2023-03-15 14:41:43 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2023-03-15 14:42:58 +0100dequbed(~dequbed@banana-new.kilobyte22.de)
2023-03-15 14:45:44 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:19aa:397c:29a:40e4) (Ping timeout: 252 seconds)
2023-03-15 14:51:06 +0100jero98772(~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff)
2023-03-15 14:51:28 +0100bhall(~brunohall@195.147.207.136)
2023-03-15 14:54:30 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 15:00:11 +0100jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 264 seconds)
2023-03-15 15:03:02 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-03-15 15:03:32 +0100y04nn(~username@2a03:1b20:5:f011::aaae)
2023-03-15 15:05:45 +0100kenran(~user@user/kenran) (Remote host closed the connection)
2023-03-15 15:06:32 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 15:06:56 +0100 <kraftwerk28> How is this syntax (`(arg2 -> arg3)`) called in a function definition: `myFunction arg1 (arg2 -> arg3) = do ...`?
2023-03-15 15:07:26 +0100 <kraftwerk28> Is that some pattern matching with language extensions?
2023-03-15 15:08:26 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 246 seconds)
2023-03-15 15:09:37 +0100acidjnk(~acidjnk@p200300d6e715c4953c9ace5586e07e06.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2023-03-15 15:09:53 +0100 <jackdk> https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/view_patterns.html#extension-ViewPa…
2023-03-15 15:11:02 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 252 seconds)
2023-03-15 15:11:15 +0100 <kraftwerk28> jackdk: thank you
2023-03-15 15:12:52 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 15:15:22 +0100gurkenglas(~gurkengla@dynamic-046-114-182-147.46.114.pool.telefonica.de) (Quit: Lost terminal)
2023-03-15 15:15:22 +0100gurkengl1s(~gurkengla@dynamic-046-114-182-147.46.114.pool.telefonica.de) (Quit: Lost terminal)
2023-03-15 15:15:46 +0100gurkenglas(~gurkengla@dynamic-046-114-182-147.46.114.pool.telefonica.de)
2023-03-15 15:16:04 +0100smallville7123(~Android@2001:8004:4440:fdd4:60b9:e57c:1e89:37dd) (Read error: Connection reset by peer)
2023-03-15 15:16:10 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-03-15 15:17:18 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 255 seconds)
2023-03-15 15:20:43 +0100gurkenglas(~gurkengla@dynamic-046-114-182-147.46.114.pool.telefonica.de) (Quit: Lost terminal)
2023-03-15 15:21:12 +0100gurkenglas(~gurkengla@dynamic-046-114-182-147.46.114.pool.telefonica.de)
2023-03-15 15:22:02 +0100thegeekinside(~thegeekin@189.217.80.156)
2023-03-15 15:26:28 +0100monoidal(~monoidal@2a01cb0801ce4b0038fc9abb7c187a61.ipv6.abo.wanadoo.fr) (Quit: Client closed)
2023-03-15 15:30:28 +0100MajorBiscuit(~MajorBisc@145.94.168.115) (Ping timeout: 252 seconds)
2023-03-15 15:30:32 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2023-03-15 15:32:38 +0100Sgeo(~Sgeo@user/sgeo)
2023-03-15 15:35:03 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 15:40:47 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 256 seconds)
2023-03-15 15:42:41 +0100cheater(~Username@user/cheater)
2023-03-15 15:47:00 +0100shriekingnoise(~shrieking@186.137.175.87)
2023-03-15 15:47:03 +0100Square2Square
2023-03-15 15:49:29 +0100cheater_(~Username@user/cheater)
2023-03-15 15:49:40 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 15:50:20 +0100cheater__(~Username@user/cheater)
2023-03-15 15:52:11 +0100cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2023-03-15 15:52:14 +0100cheater__cheater
2023-03-15 15:54:03 +0100cheater_(~Username@user/cheater) (Ping timeout: 260 seconds)
2023-03-15 16:02:41 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 16:07:06 +0100img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-03-15 16:07:13 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 250 seconds)
2023-03-15 16:07:23 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-15 16:09:25 +0100MajorBiscuit(~MajorBisc@145.94.168.115)
2023-03-15 16:09:28 +0100vpan(~0@212.117.1.172) (Quit: Leaving.)
2023-03-15 16:09:28 +0100cheater_(~Username@user/cheater)
2023-03-15 16:10:03 +0100img(~img@user/img)
2023-03-15 16:12:13 +0100cheater(~Username@user/cheater) (Ping timeout: 246 seconds)
2023-03-15 16:12:13 +0100cheater_cheater
2023-03-15 16:16:18 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 16:16:50 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2023-03-15 16:20:07 +0100cheater_(~Username@user/cheater)
2023-03-15 16:20:11 +0100CiaoSen(~Jura@p200300c957080a002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2023-03-15 16:21:02 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 268 seconds)
2023-03-15 16:22:29 +0100 <kraftwerk28> And what extension does allow guards in a `do` block? I.e. `do ... if | ... | ...`
2023-03-15 16:23:13 +0100cheater(~Username@user/cheater) (Ping timeout: 265 seconds)
2023-03-15 16:23:24 +0100cheater_cheater
2023-03-15 16:23:48 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 16:24:07 +0100 <geekosaur> that's not "guards in a do block", `MultiWayIf` is more general than that
2023-03-15 16:24:18 +0100acidjnk(~acidjnk@p200300d6e715c4953c9ace5586e07e06.dip0.t-ipconnect.de)
2023-03-15 16:26:40 +0100 <segfaultfizzbuzz> seriously, ask gpt4 to write some code
2023-03-15 16:28:46 +0100 <EvanR> if it didn't cost money maybe
2023-03-15 16:28:54 +0100 <segfaultfizzbuzz> it didn't cost anything
2023-03-15 16:29:04 +0100 <EvanR> oh?
2023-03-15 16:29:23 +0100 <segfaultfizzbuzz> you just have to register with an email address because they want to stop people who ask it to write insane stuff
2023-03-15 16:29:34 +0100 <EvanR> I thought there was a subscription
2023-03-15 16:29:47 +0100cheater_(~Username@user/cheater)
2023-03-15 16:29:50 +0100 <segfaultfizzbuzz> you *can* pay but i was able to make it produce a haskell program without paying anything
2023-03-15 16:30:56 +0100 <segfaultfizzbuzz> it costs if you want api access, to do a very large number of queries, etc
2023-03-15 16:30:56 +0100cheater__(~Username@user/cheater)
2023-03-15 16:32:49 +0100cheater(~Username@user/cheater) (Ping timeout: 276 seconds)
2023-03-15 16:32:51 +0100cheater__cheater
2023-03-15 16:34:03 +0100cheater_(~Username@user/cheater) (Ping timeout: 248 seconds)
2023-03-15 16:34:25 +0100y04nn(~username@2a03:1b20:5:f011::aaae) (Remote host closed the connection)
2023-03-15 16:34:43 +0100y04nn(~username@2a03:1b20:5:f011::aaae)
2023-03-15 16:41:10 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-03-15 16:41:10 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-03-15 16:41:10 +0100finn_elijaFinnElija
2023-03-15 16:42:50 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:19aa:397c:29a:40e4)
2023-03-15 16:47:39 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:19aa:397c:29a:40e4) (Ping timeout: 256 seconds)
2023-03-15 16:54:28 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-03-15 16:56:11 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53) (Ping timeout: 268 seconds)
2023-03-15 16:58:02 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 246 seconds)
2023-03-15 17:02:19 +0100cheater(~Username@user/cheater) (Ping timeout: 248 seconds)
2023-03-15 17:04:07 +0100Fischmiep(~Fischmiep@user/Fischmiep) (Read error: Connection reset by peer)
2023-03-15 17:07:16 +0100econo(uid147250@user/econo)
2023-03-15 17:08:05 +0100cheater(~Username@user/cheater)
2023-03-15 17:09:44 +0100Fischmiep(~Fischmiep@user/Fischmiep)
2023-03-15 17:11:35 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:b1e:376:22d2:70c1) (Ping timeout: 264 seconds)
2023-03-15 17:11:40 +0100glguy(~glguy@libera/staff-emeritus/glguy) (Quit: Quit)
2023-03-15 17:13:02 +0100glguy(~glguy@libera/staff-emeritus/glguy)
2023-03-15 17:13:48 +0100gok(~gok@2601:282:d00:c3d0:75bc:5610:72de:df17)
2023-03-15 17:16:18 +0100hugo-hugo
2023-03-15 17:20:53 +0100zer0bitz_(~zer0bitz@2001:2003:f443:d600:6817:86bd:63cc:3a52)
2023-03-15 17:20:57 +0100adanwan_(~adanwan@gateway/tor-sasl/adanwan)
2023-03-15 17:21:05 +0100zer0bitz(~zer0bitz@2001:2003:f443:d600:24d4:8a68:949c:f66a) (Ping timeout: 256 seconds)
2023-03-15 17:21:56 +0100adanwan(~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 255 seconds)
2023-03-15 17:22:42 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 17:22:52 +0100bhall(~brunohall@195.147.207.136) (Ping timeout: 276 seconds)
2023-03-15 17:25:30 +0100motherfsck(~motherfsc@user/motherfsck)
2023-03-15 17:27:23 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 250 seconds)
2023-03-15 17:28:47 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 17:28:52 +0100 <segfaultfizzbuzz> EvanR: did you try it? lol
2023-03-15 17:29:38 +0100 <EvanR> the barrier for me to sign up on sites is pretty high these days
2023-03-15 17:29:59 +0100 <segfaultfizzbuzz> it's really worth it
2023-03-15 17:30:42 +0100zer0bitz(~zer0bitz@2001:2003:f443:d600:a081:44e9:eba:55a9)
2023-03-15 17:31:35 +0100Fischmiep7(~Fischmiep@user/Fischmiep)
2023-03-15 17:31:43 +0100Fischmiep(~Fischmiep@user/Fischmiep) (Ping timeout: 250 seconds)
2023-03-15 17:31:44 +0100Fischmiep7Fischmiep
2023-03-15 17:32:31 +0100zer0bitz_(~zer0bitz@2001:2003:f443:d600:6817:86bd:63cc:3a52) (Ping timeout: 260 seconds)
2023-03-15 17:35:14 +0100nschoe(~q@141.101.51.197) (Ping timeout: 265 seconds)
2023-03-15 17:36:36 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:19aa:397c:29a:40e4)
2023-03-15 17:37:04 +0100bhall(~brunohall@195.147.207.136)
2023-03-15 17:38:04 +0100cheater(~Username@user/cheater) (Ping timeout: 252 seconds)
2023-03-15 17:38:33 +0100cheater(~Username@user/cheater)
2023-03-15 17:41:40 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 17:43:19 +0100qwert(~qwert@95.107.224.14)
2023-03-15 17:44:41 +0100 <qwert> can someone link to a documentation or article about maybe and either type I have read some but cannot quite understand them
2023-03-15 17:46:28 +0100 <geekosaur> there doesn't seem to be that much to understand, especially about Maybe?
2023-03-15 17:46:42 +0100 <EvanR> do you understand the pair type (a,b)
2023-03-15 17:46:59 +0100 <qwert> yes
2023-03-15 17:47:05 +0100 <EvanR> if yes, do you understand the type Bool = False | True
2023-03-15 17:47:14 +0100 <qwert> Yes
2023-03-15 17:47:17 +0100 <segfaultfizzbuzz> qwert: imo the most confusing thing is that "left is not right"
2023-03-15 17:47:26 +0100 <EvanR> Maybe and Either are a combination of those concepts xD
2023-03-15 17:47:44 +0100 <segfaultfizzbuzz> qwert: it might help to read about the rust Option type as something to compare with
2023-03-15 17:47:46 +0100 <EvanR> Either a b = Left a | Right b
2023-03-15 17:48:14 +0100mbuf(~Shakthi@49.207.178.186) (Quit: Leaving)
2023-03-15 17:48:24 +0100 <segfaultfizzbuzz> qwert: the purpose of this sort of thing is to avoid the "billion-dollar" problem of java where anything can be set to null/none
2023-03-15 17:48:25 +0100 <EvanR> they are holding some payload and you can do case analysis like Bool
2023-03-15 17:49:31 +0100jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 276 seconds)
2023-03-15 17:50:09 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-15 17:51:12 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 17:53:52 +0100 <dminuoso> segfaultfizzbuzz | you *can* pay but i was able to make it produce a haskell program without paying anything
2023-03-15 17:54:28 +0100 <dminuoso> Can you make gpt4 write a haskell program that validates whether another haskell program gpt4 wrote makes sense and is correct to the original intentions?
2023-03-15 17:54:42 +0100 <segfaultfizzbuzz> dminuoso: lol try it, probably not ;-)
2023-03-15 17:54:44 +0100chele(~chele@user/chele) (Remote host closed the connection)
2023-03-15 17:54:50 +0100 <segfaultfizzbuzz> dminuoso: try something simple
2023-03-15 17:54:59 +0100 <segfaultfizzbuzz> i guess if you want i will do a pastebin for you folks when i get back
2023-03-15 17:55:04 +0100 <dminuoso> I think you misunderstood what i meant.
2023-03-15 17:55:25 +0100 <ncf> qwert: is there something in particular you don't understand?
2023-03-15 17:56:01 +0100 <dminuoso> Ive done plenty of experimentations with ChatGPT for instance, while it reurgitates code that often does an approximation, its usually subtly bug ridden, or doesnt quite do what you want it to do, especially in some edge cases.
2023-03-15 17:56:02 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
2023-03-15 17:56:26 +0100 <dminuoso> And the thing is, if people start making it a habit to use this, you will over time lose precious skillset and code quality could go down.
2023-03-15 17:56:49 +0100 <EvanR> technology be doing that
2023-03-15 17:57:14 +0100 <EvanR> I hear the skills to craft and repair CRT tubes is dwindling
2023-03-15 17:57:33 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 246 seconds)
2023-03-15 17:58:24 +0100 <segfaultfizzbuzz> shout out some haskell programs you want
2023-03-15 17:58:36 +0100 <segfaultfizzbuzz> try to keep it to something which can fit in a couple hundred lines
2023-03-15 17:58:49 +0100 <Hecate> EvanR: I doubt LCD screens are introducing subtle and systematic errors over their CRT counterparts :P
2023-03-15 17:58:53 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2023-03-15 17:59:15 +0100cheater_(~Username@user/cheater)
2023-03-15 17:59:35 +0100 <EvanR> ask your AI to prove a proof of correctness
2023-03-15 17:59:40 +0100 <EvanR> provide*
2023-03-15 18:00:03 +0100 <EvanR> while we still have non-AI proof checkers
2023-03-15 18:00:26 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 18:01:07 +0100 <mauke> segfaultfizzbuzz: I could use a Haskell program that correctly parses and extracts the contents of an HTML <script> tag
2023-03-15 18:01:13 +0100 <geekosaur> Hécate: they still don't handle rapid motion very well IME
2023-03-15 18:01:49 +0100Kuttenbrunzer(~Kuttenbru@2a02:8108:8b80:1d48::8e37)
2023-03-15 18:02:05 +0100cheater(~Username@user/cheater) (Ping timeout: 246 seconds)
2023-03-15 18:02:08 +0100 <davean> geekosaur: they don't which is why we moved to OLEDs
2023-03-15 18:02:10 +0100cheater_cheater
2023-03-15 18:03:25 +0100Kuttenbrunzer(~Kuttenbru@2a02:8108:8b80:1d48::8e37) (Client Quit)
2023-03-15 18:03:25 +0100gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2023-03-15 18:03:47 +0100gentauro(~gentauro@user/gentauro)
2023-03-15 18:04:02 +0100zer0bitz_(~zer0bitz@2001:2003:f443:d600:dd91:c235:8ced:3a03)
2023-03-15 18:04:55 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53) (Ping timeout: 246 seconds)
2023-03-15 18:05:15 +0100zer0bitz(~zer0bitz@2001:2003:f443:d600:a081:44e9:eba:55a9) (Ping timeout: 246 seconds)
2023-03-15 18:05:17 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 256 seconds)
2023-03-15 18:07:49 +0100 <dminuoso> EvanR: The difference is, CRT tubes are disappearing as well.
2023-03-15 18:07:57 +0100 <dminuoso> but the advent of chatgpt wont make software disappear.
2023-03-15 18:08:03 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2023-03-15 18:08:13 +0100 <EvanR> maybe that's something we need to focus on fixing then xD
2023-03-15 18:08:29 +0100 <EvanR> no software, no problems
2023-03-15 18:08:41 +0100CiaoSen(~Jura@p200300c957080a002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-03-15 18:08:45 +0100 <dminuoso> Im not saying that AI cant make software, but merely that a language model is *certainly* not the answer.
2023-03-15 18:09:17 +0100 <dminuoso> Its probably the poorest solution of it all, given that the training data includes so much poor things, and language models have error classes that can be subtly nasty.
2023-03-15 18:09:26 +0100 <dminuoso> But who knows
2023-03-15 18:09:35 +0100 <dminuoso> Maybe it will improve the value of good software developers down the line.
2023-03-15 18:09:45 +0100 <dminuoso> Since poor developers can be replaced by things like chatgpt.
2023-03-15 18:10:48 +0100zer0bitz_(~zer0bitz@2001:2003:f443:d600:dd91:c235:8ced:3a03) (Ping timeout: 260 seconds)
2023-03-15 18:10:53 +0100 <EvanR> using this thing to write my code by using English sounds awful
2023-03-15 18:11:17 +0100 <dminuoso> Given that a poor developers typically is better at english than at writing code, I think it could be an upgrade.
2023-03-15 18:11:45 +0100 <EvanR> yeah but technical english necessary to specify what you really need?
2023-03-15 18:11:51 +0100 <dminuoso> Its not
2023-03-15 18:12:05 +0100 <davean> poor developers are better at writing code than good developers though, are good developers that much worse at English?
2023-03-15 18:12:07 +0100 <dminuoso> Since you can just test it against data, and respond with things like "The input looks bad in this way. Fix it please"
2023-03-15 18:12:16 +0100 <dminuoso> And you repeat it until the software seems to do what you want it to do.
2023-03-15 18:12:22 +0100 <mauke> so I hear you guys are reinventing COBOL?
2023-03-15 18:13:00 +0100 <EvanR> I need an algorithm to solve the discrete log problem. Ok that solution is wrong for the following inputs, fix it!
2023-03-15 18:13:00 +0100 <dminuoso> davean: I think there's some mistake in that sense.
2023-03-15 18:14:17 +0100 <dminuoso> EvanR: machine learning has been successfully used to find more efficient linear algebra algoithms already.
2023-03-15 18:14:36 +0100 <dminuoso> So there's certainly problems that could possibly be solved by tossing enough brute force AI at it.
2023-03-15 18:14:51 +0100 <EvanR> I don't doubt that. Was the part where you formulate a question in English the important part?
2023-03-15 18:15:17 +0100 <dminuoso> Who knows, maybe you can just task a language model to train another neural net on data using plain english
2023-03-15 18:15:19 +0100 <EvanR> i.e. it's the human interface that matters
2023-03-15 18:15:20 +0100 <dminuoso> and make it generate solutions
2023-03-15 18:15:40 +0100 <dminuoso> "write a neural net that can solve these solutions, and then make it go brrrr fast!"
2023-03-15 18:15:53 +0100 <dminuoso> "also, browse through the internet and use cat pictures for training"
2023-03-15 18:15:54 +0100 <EvanR> and then professor moriarty walks off the holodeck
2023-03-15 18:16:20 +0100 <dminuoso> To be fair, all of this already works.
2023-03-15 18:16:23 +0100 <dminuoso> Its called being a professor
2023-03-15 18:16:34 +0100 <dminuoso> Except you dont with a language model, but with a poor PhD student.
2023-03-15 18:16:39 +0100 <dminuoso> *dont talk
2023-03-15 18:17:03 +0100 <[exa]> mauke: rofl
2023-03-15 18:18:19 +0100 <davean> dminuoso: I think thats my point
2023-03-15 18:19:37 +0100 <geekosaur> whose English is poor…
2023-03-15 18:20:15 +0100 <geekosaur> ChatGPT3 speaks English a little better than the PhD students I've worked with
2023-03-15 18:20:27 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 18:23:43 +0100enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Quit: enoq)
2023-03-15 18:24:05 +0100 <EvanR> can I send chatgpt back in time so I can cheat my english courses and so obtain my questionably valuable degree in math please
2023-03-15 18:24:17 +0100Sauvin(~sauvin@user/Sauvin) (Quit: Leaving)
2023-03-15 18:25:01 +0100 <EvanR> also future people, feel free to send the code writing AI to right now
2023-03-15 18:27:13 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53) (Ping timeout: 276 seconds)
2023-03-15 18:29:22 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2023-03-15 18:30:09 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 18:31:19 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 18:32:21 +0100 <segfaultfizzbuzz> i mean okay here is an example: https://twitter.com/random_walker/status/1636039756864712706
2023-03-15 18:32:49 +0100Sauvin(~sauvin@user/Sauvin)
2023-03-15 18:33:06 +0100 <segfaultfizzbuzz> not haskell but you get the idea
2023-03-15 18:33:56 +0100 <[exa]> segfaultfizzbuzz: you don't see a problem there?
2023-03-15 18:33:56 +0100 <mauke> jesus christ
2023-03-15 18:33:58 +0100 <segfaultfizzbuzz> i will be checking the #haskell logs periodically so if you want gpt4 to write a haskell program, just write a simple and clear description and i will run it. no "solve the halting problem"-type tasks
2023-03-15 18:34:17 +0100 <mauke> segfaultfizzbuzz: I could use a Haskell program that correctly parses and extracts the contents of an HTML <script> tag
2023-03-15 18:34:35 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 246 seconds)
2023-03-15 18:34:59 +0100 <segfaultfizzbuzz> mauke: you mean like all of javascript? i would add that the program will need to realistically fit into a couple hundred lines or so
2023-03-15 18:35:17 +0100 <mauke> ... no?
2023-03-15 18:35:20 +0100 <segfaultfizzbuzz> [exa]: i didn't read or run that code...
2023-03-15 18:35:25 +0100 <mauke> just figure out where the script element ends
2023-03-15 18:35:50 +0100 <segfaultfizzbuzz> mauke: okay so the input is html and you want to know the position of the start and end of all script tags within the html?
2023-03-15 18:36:02 +0100ubert1(~Thunderbi@2a02:8109:abc0:6434:3e03:bd4c:f4ca:dd82) (Remote host closed the connection)
2023-03-15 18:36:10 +0100 <[exa]> segfaultfizzbuzz: please stop and think
2023-03-15 18:36:23 +0100 <mauke> even more basic, assume the input is HTML and starts with "<script"
2023-03-15 18:36:32 +0100 <mauke> and I want to know where the corresponding end tag is
2023-03-15 18:36:56 +0100 <segfaultfizzbuzz> mauke: are you guaranteed that there is a single end tag or can there be nesting and soforth?
2023-03-15 18:37:15 +0100 <mauke> HTML doesn't allow script elements to be nested
2023-03-15 18:37:40 +0100 <mauke> so either there is a single corresponding script end tag or the end tag is missing, in which case I want an error of some kind
2023-03-15 18:37:45 +0100 <segfaultfizzbuzz> mauke: okay so just search for </script>, but parse html comments correctly?
2023-03-15 18:37:47 +0100 <mauke> like returning Nothing or -1
2023-03-15 18:37:54 +0100qwert(~qwert@95.107.224.14) (Quit: Client closed)
2023-03-15 18:38:01 +0100ian1(~ian@eclipse-5.wireless.uwo.ca)
2023-03-15 18:38:04 +0100 <mauke> script elements don't contain comments
2023-03-15 18:38:19 +0100 <segfaultfizzbuzz> okay so just search through a string for </script> i guess?
2023-03-15 18:38:26 +0100 <mauke> wait, why am I explaining the problem to you? I thought chatgpt knew how to solve this
2023-03-15 18:39:00 +0100 <segfaultfizzbuzz> [exa]: i don't see the issue but i am not a good programmer
2023-03-15 18:39:07 +0100 <mauke> "search for </script>" is wrong for a variety of reasons
2023-03-15 18:39:15 +0100 <mauke> I want something conforming to the HTML5 specification
2023-03-15 18:39:49 +0100 <[exa]> segfaultfizzbuzz: that's okay, to go to actual issue please try asking gpt why website citations should be punishable
2023-03-15 18:40:11 +0100 <segfaultfizzbuzz> mauke: so something like "write a haskell program for parsing the beginning and end of script tag locations in an html string which conforms to the HTML5 specification"?
2023-03-15 18:40:58 +0100 <mauke> I like my original version better
2023-03-15 18:41:22 +0100 <mauke> the string doesn't necessarily conform to anything; the algorithm should implement (part of) a conforming HTML5 parser
2023-03-15 18:41:35 +0100 <segfaultfizzbuzz> ok so you want " write a Haskell program that correctly parses and extracts the contents of an HTML <script> tag"
2023-03-15 18:43:22 +0100 <segfaultfizzbuzz> mauke: ^
2023-03-15 18:45:13 +0100 <EvanR> I'm hearing we need to actually know how to program still
2023-03-15 18:45:32 +0100Inst(~Inst@2601:6c4:4081:54f0:a477:258d:a836:e1e4) (Ping timeout: 252 seconds)
2023-03-15 18:45:32 +0100 <davean> EvanR: "Website citations themselves should not be punishable, as they are an essential part of academic writing and research. In fact, citing sources is critical for providing evidence to support your arguments, giving credit to the authors of the information you are using, and allowing others to locate and verify the information you have presented."
2023-03-15 18:46:15 +0100 <EvanR> what
2023-03-15 18:46:21 +0100 <davean> website citations are some of the best citations because there isn't a walled garden blocking the open exchange of information, and unlike papers they aren't lost to time in like 5 years
2023-03-15 18:46:31 +0100 <davean> EvanR: thats GPTs reply to your question
2023-03-15 18:48:22 +0100 <EvanR> alright that's the universe's 1 free chatGPT generated response to a question I didn't ask chatGPT
2023-03-15 18:48:51 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53) (Ping timeout: 250 seconds)
2023-03-15 18:50:04 +0100ian1(~ian@eclipse-5.wireless.uwo.ca) (Ping timeout: 246 seconds)
2023-03-15 18:51:16 +0100MajorBiscuit(~MajorBisc@145.94.168.115) (Ping timeout: 276 seconds)
2023-03-15 18:51:27 +0100y04nn(~username@2a03:1b20:5:f011::aaae) (Ping timeout: 250 seconds)
2023-03-15 18:55:41 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 18:58:37 +0100offtherock(~blurb@96.45.2.121)
2023-03-15 18:58:49 +0100rburkholder(~blurb@96.45.2.121) (Ping timeout: 250 seconds)
2023-03-15 18:58:50 +0100cheater(~Username@user/cheater) (Quit: Going offline, see ya! (www.adiirc.com))
2023-03-15 19:02:24 +0100jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 252 seconds)
2023-03-15 19:04:42 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 19:08:11 +0100Square(~Square4@user/square) (Ping timeout: 256 seconds)
2023-03-15 19:10:51 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 255 seconds)
2023-03-15 19:11:37 +0100MironZ3(~MironZ@nat-infra.ehlab.uk)
2023-03-15 19:12:03 +0100MironZ(~MironZ@nat-infra.ehlab.uk) (Read error: Connection reset by peer)
2023-03-15 19:12:03 +0100MironZ3MironZ
2023-03-15 19:12:10 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 19:13:09 +0100nschoe(~q@2a01:e0a:8e:a190:38db:fde4:6274:c85c)
2023-03-15 19:13:43 +0100gok(~gok@2601:282:d00:c3d0:75bc:5610:72de:df17) (Quit: Client closed)
2023-03-15 19:14:26 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2023-03-15 19:15:43 +0100MironZ2(~MironZ@nat-infra.ehlab.uk)
2023-03-15 19:16:43 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 248 seconds)
2023-03-15 19:17:15 +0100MironZ(~MironZ@nat-infra.ehlab.uk) (Ping timeout: 248 seconds)
2023-03-15 19:17:15 +0100MironZ2MironZ
2023-03-15 19:17:27 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-03-15 19:18:38 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 19:19:13 +0100offtherock(~blurb@96.45.2.121) (Ping timeout: 276 seconds)
2023-03-15 19:20:19 +0100ian1(~ian@eclipse-5.wireless.uwo.ca)
2023-03-15 19:22:55 +0100cassiopea(~cassiopea@user/cassiopea) (Ping timeout: 248 seconds)
2023-03-15 19:23:07 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 248 seconds)
2023-03-15 19:36:40 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2023-03-15 19:36:54 +0100cheater(~Username@user/cheater)
2023-03-15 19:38:47 +0100nschoe(~q@2a01:e0a:8e:a190:38db:fde4:6274:c85c) (Ping timeout: 256 seconds)
2023-03-15 19:41:41 +0100opticblast(~Thunderbi@172.58.84.141)
2023-03-15 19:43:08 +0100ft(~ft@p3e9bc443.dip0.t-ipconnect.de)
2023-03-15 19:43:32 +0100 <segfaultfizzbuzz> EvanR: i have made dozens of requests to chatgpt4 for free, only having made an account, and haven't hit any kind of paywall etc
2023-03-15 19:47:40 +0100hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 265 seconds)
2023-03-15 19:50:06 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 19:50:28 +0100slack1256(~slack1256@186.11.43.166)
2023-03-15 19:50:56 +0100y04nn(~username@2a03:1b20:5:f011::aaae)
2023-03-15 19:52:03 +0100ian1(~ian@eclipse-5.wireless.uwo.ca) (Quit: WeeChat 3.8)
2023-03-15 19:52:25 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 19:54:58 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 276 seconds)
2023-03-15 19:55:51 +0100 <segfaultfizzbuzz> okay here we go: https://paste.rs/HSB https://paste.rs/H7Y.hs
2023-03-15 19:56:18 +0100 <segfaultfizzbuzz> mauke: see above :-) i used the prompt i quoted above except i said "according to the HTML5 specification"
2023-03-15 19:57:22 +0100 <segfaultfizzbuzz> you might have to fix an import or something
2023-03-15 19:57:31 +0100 <segfaultfizzbuzz> let me know what you think, i will be reading the logs ;-)
2023-03-15 20:01:07 +0100slack1256(~slack1256@186.11.43.166) (Ping timeout: 246 seconds)
2023-03-15 20:02:03 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53) (Ping timeout: 248 seconds)
2023-03-15 20:03:23 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 250 seconds)
2023-03-15 20:05:13 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-03-15 20:09:44 +0100hugo-(znc@verdigris.lysator.liu.se)
2023-03-15 20:13:38 +0100szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2023-03-15 20:14:01 +0100y04nn(~username@2a03:1b20:5:f011::aaae) (Remote host closed the connection)
2023-03-15 20:14:19 +0100y04nn(~username@2a03:1b20:5:f011::aaae)
2023-03-15 20:21:17 +0100Tuplanolla(~Tuplanoll@91-159-68-152.elisa-laajakaista.fi)
2023-03-15 20:24:53 +0100opticblast(~Thunderbi@172.58.84.141) (Ping timeout: 265 seconds)
2023-03-15 20:25:31 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 276 seconds)
2023-03-15 20:26:35 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-15 20:27:47 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2023-03-15 20:28:36 +0100slack1256(~slack1256@186.11.43.166)
2023-03-15 20:37:43 +0100caryhartline(~caryhartl@2603-8080-6a0e-8d88-4831-426f-64f2-a091.res6.spectrum.com)
2023-03-15 20:38:16 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Quit: Lost terminal)
2023-03-15 20:38:30 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 20:42:52 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 252 seconds)
2023-03-15 20:47:34 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-03-15 20:48:32 +0100trev(~trev@user/trev) (Remote host closed the connection)
2023-03-15 20:50:15 +0100nschoe(~q@2a01:e0a:8e:a190:50da:2620:a22b:5641)
2023-03-15 20:57:23 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-15 20:58:25 +0100slack1256(~slack1256@186.11.43.166) (Ping timeout: 250 seconds)
2023-03-15 21:00:06 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2023-03-15 21:01:09 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-15 21:03:56 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Client Quit)
2023-03-15 21:04:58 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-15 21:12:30 +0100bhall(~brunohall@195.147.207.136) (Ping timeout: 246 seconds)
2023-03-15 21:18:06 +0100y04nn(~username@2a03:1b20:5:f011::aaae) (Ping timeout: 246 seconds)
2023-03-15 21:18:07 +0100nschoe(~q@2a01:e0a:8e:a190:50da:2620:a22b:5641) (Quit: Switching off)
2023-03-15 21:21:11 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de)
2023-03-15 21:21:24 +0100 <Profpatsch> I’m confused at this pattern match redundancy warning
2023-03-15 21:21:27 +0100 <Profpatsch> I have effectively
2023-03-15 21:21:42 +0100 <Profpatsch> let foo :: Maybe a = …
2023-03-15 21:22:25 +0100 <Profpatsch> case foo of { Nothing -> …; Just a -> … case foo of Nothing -> …; Just again -> … }
2023-03-15 21:22:50 +0100 <Profpatsch> And GHC warns that the inner Nothing match is redundant, as if it understand that I already matched on `foo` and am already in the Just case!
2023-03-15 21:22:54 +0100 <Profpatsch> Should that be possible?
2023-03-15 21:23:03 +0100 <Profpatsch> (I know that the code is dumb, I’m in the process of refactoring it)
2023-03-15 21:23:51 +0100 <geekosaur> it does understand that
2023-03-15 21:23:57 +0100 <Jade[m]1> Profpatsch: It's as GHC says
2023-03-15 21:24:15 +0100 <Profpatsch> Now I’m kinda interested in how that works
2023-03-15 21:24:22 +0100 <Profpatsch> does it do the analysis after simplification?
2023-03-15 21:25:17 +0100 <Profpatsch> I know that typechecking is done on surface language to keep positions of code
2023-03-15 21:25:53 +0100 <geekosaur> as part of simplification, I think; part of simplification is analyzing and rewriting `case`s to a simpler form for core
2023-03-15 21:25:59 +0100a_coll(~acoll@45.92.120.189)
2023-03-15 21:26:41 +0100 <Profpatsch> The thing is that my second `case` comes after some code that is even monadic
2023-03-15 21:26:52 +0100 <davean> Thats not relivent
2023-03-15 21:26:52 +0100 <Profpatsch> So it must float stuff out quite eagerly
2023-03-15 21:26:56 +0100 <Profpatsch> Which makes sense
2023-03-15 21:27:02 +0100 <davean> it doesn't have to move anything at all though
2023-03-15 21:27:09 +0100 <geekosaur> ^
2023-03-15 21:27:23 +0100pavonia(~user@user/siracusa)
2023-03-15 21:27:27 +0100 <geekosaur> all it has to know is that it's one `case` inside another one, and they have the same scrutinee
2023-03-15 21:27:43 +0100 <Jade[m]1> The beauty of purely functional code is that it doesn't matter where a function is
2023-03-15 21:27:52 +0100 <Jade[m]1> same inputs => same outputs
2023-03-15 21:27:59 +0100 <Profpatsch> So it’s not done during simplification, but when annotating stuff?
2023-03-15 21:28:11 +0100 <Profpatsch> for later simplification I mean
2023-03-15 21:28:11 +0100 <Jade[m]1> so it won't really matter what the surrounding context is
2023-03-15 21:28:29 +0100 <Profpatsch> Jade[m]1: yeah I know that, but I’m more interested in the inner workings of specifically GHC
2023-03-15 21:29:08 +0100caryhartline(~caryhartl@2603-8080-6a0e-8d88-4831-426f-64f2-a091.res6.spectrum.com) (Quit: caryhartline)
2023-03-15 21:29:26 +0100 <Profpatsch> especially how it can map these warnings back to surface language, because my impression was always that after typechecking and maybe some annotation passes it’s not possible anymore to get good error positions
2023-03-15 21:29:27 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 21:29:41 +0100 <Profpatsch> Maybe I should ask in #ghc
2023-03-15 21:30:53 +0100 <segfaultfizzbuzz> EvanR: did you see what i pasted above?
2023-03-15 21:31:07 +0100 <Profpatsch> once I’ve refactored this code, there won’t be any nested case matches on the same variable like that anymore anyway
2023-03-15 21:31:15 +0100 <Profpatsch> I was just deligted to see GHC can do that
2023-03-15 21:31:31 +0100 <Profpatsch> It really helps with refactoring and noticing strange logic like that
2023-03-15 21:31:36 +0100 <EvanR> some ruby code to hook up an API
2023-03-15 21:31:52 +0100 <segfaultfizzbuzz> EvanR: no it was haskell,... wasn't it? lol
2023-03-15 21:32:18 +0100 <segfaultfizzbuzz> https://paste.rs/H7Y.hs
2023-03-15 21:33:18 +0100 <EvanR> parsing script tags? did you test it
2023-03-15 21:34:18 +0100 <segfaultfizzbuzz> it can't find isPrefixOf :: Bool -> String -> Bool and i'm a little unsure of what to do
2023-03-15 21:34:38 +0100 <geekosaur> re error positions: ghc annotates everything in the surface language with source locations, so it can always get them back and even regurgitate source
2023-03-15 21:34:52 +0100 <geekosaur> see "exactprint"
2023-03-15 21:34:56 +0100 <segfaultfizzbuzz> i tried hoogle and there doesn't seem to be such a function
2023-03-15 21:35:38 +0100 <int-e> segfaultfizzbuzz: Well, why would the first argument be a Bool? You have a precedence problem.
2023-03-15 21:35:46 +0100 <geekosaur> `isPrefixOf` is in Data.List, but not with that signature (`Bool`, really?)
2023-03-15 21:35:52 +0100 <int-e> That aside, isPrefixOf is ... as geekosaur said
2023-03-15 21:36:21 +0100 <segfaultfizzbuzz> it's from this line: | count == 0 && "<script" `isPrefixOf` str = ("", str)
2023-03-15 21:36:25 +0100 <int-e> Oh and once you import it its precedence will maybe be different.
2023-03-15 21:36:27 +0100 <segfaultfizzbuzz> looks like it forgot to define a function lol
2023-03-15 21:36:35 +0100 <davean> segfaultfizzbuzz: you're not doing precidence right
2023-03-15 21:36:49 +0100 <segfaultfizzbuzz> lol that isn't my code, that is chatgpt4 ;-)
2023-03-15 21:37:08 +0100cheater_(~Username@user/cheater)
2023-03-15 21:37:16 +0100 <EvanR> I'll give it needing an import
2023-03-15 21:37:25 +0100 <EvanR> sounds like it's not the only problem
2023-03-15 21:37:40 +0100 <mauke> segfaultfizzbuzz: heh. that's really broken code
2023-03-15 21:38:15 +0100 <segfaultfizzbuzz> mauke: this is the first "broken" code i have encountered out of several attempts, albeit those may have been lucky attempts
2023-03-15 21:38:31 +0100bhall(~brunohall@195.147.207.136)
2023-03-15 21:38:46 +0100 <EvanR> welp sounds like we can't ship unvetted code that comes out of the AI
2023-03-15 21:39:02 +0100 <segfaultfizzbuzz> lol not for another year or two at least ;-)
2023-03-15 21:39:04 +0100 <mauke> segfaultfizzbuzz: so far, every single example of "AI"-generated code I've seen has been broken, sometimes blatantly so
2023-03-15 21:39:21 +0100 <segfaultfizzbuzz> mauke: i'll do another prompt for you if you want
2023-03-15 21:39:27 +0100 <mauke> nah, don't bother
2023-03-15 21:39:30 +0100 <EvanR> the fact that it looks half way plausible at a glance seems a bit alarming
2023-03-15 21:39:32 +0100 <mauke> it's just more of the same
2023-03-15 21:39:41 +0100 <segfaultfizzbuzz> EvanR: right? lol
2023-03-15 21:39:55 +0100 <EvanR> someone who doesn't know any better might literally ship it
2023-03-15 21:40:00 +0100 <segfaultfizzbuzz> imagine if they plugged it into ghc and it could read error messages from the compiler and then try to fix them
2023-03-15 21:40:01 +0100cheater(~Username@user/cheater) (Ping timeout: 250 seconds)
2023-03-15 21:40:05 +0100cheater_cheater
2023-03-15 21:40:12 +0100 <davean> segfaultfizzbuzz: thats been done
2023-03-15 21:40:18 +0100 <davean> well, nto for GHC specificly
2023-03-15 21:40:24 +0100 <segfaultfizzbuzz> davean: and... doesn't help?
2023-03-15 21:40:40 +0100 <mauke> `scriptContents <- manyTill anyChar (try (string "</script>" <|> string "</SCRIPT>"))` doesn't even try to do anything sensible
2023-03-15 21:40:57 +0100 <segfaultfizzbuzz> haha ok
2023-03-15 21:41:06 +0100 <davean> segfaultfizzbuzz: it helps, technically, it doesn't solve the problem though
2023-03-15 21:41:14 +0100 <mauke> it's the equivalent of .*?(</script>|</SCRIPT>) in regex form
2023-03-15 21:41:23 +0100 <davean> these AIs basicly over focus on one piece of context
2023-03-15 21:41:44 +0100 <segfaultfizzbuzz> i mean, i don't really believe that humans have magical powers, a soul, etc
2023-03-15 21:41:46 +0100 <EvanR> why doesn't that line of code work
2023-03-15 21:42:02 +0100jinsun__(~jinsun@user/jinsun)
2023-03-15 21:42:02 +0100jinsunGuest8805
2023-03-15 21:42:02 +0100Guest8805(~jinsun@user/jinsun) (Killed (zinc.libera.chat (Nickname regained by services)))
2023-03-15 21:42:02 +0100jinsun__jinsun
2023-03-15 21:42:03 +0100 <davean> They can avoid errors, but avoiding errors doesn't produce a correct result.
2023-03-15 21:42:06 +0100 <mauke> like, it kind of "knows" that HTML tags are case insensitive, but then it only searches for two particular forms
2023-03-15 21:42:06 +0100 <EvanR> (don't ask the AI please)
2023-03-15 21:42:16 +0100 <davean> segfaultfizzbuzz: no, but these AIs don't have any reasoning at all
2023-03-15 21:42:25 +0100 <int-e> So... I guess this example leaks the fact that GHC parses infix operations as left-associative at first, then looks up names, and only then rearranges the expression with proper fixities?
2023-03-15 21:42:27 +0100 <mauke> (because it copy/pasted from bad example code on the internet)
2023-03-15 21:42:53 +0100 <davean> segfaultfizzbuzz: you don't have to believe humans are special, you just have to know what these AIs are doing
2023-03-15 21:42:54 +0100 <EvanR> someone teach it to use logic to verify shit it comes up with
2023-03-15 21:43:05 +0100 <EvanR> like formal logic
2023-03-15 21:43:39 +0100 <int-e> EvanR: b-but... its already hard enough to do that with people
2023-03-15 21:43:39 +0100 <segfaultfizzbuzz> davean: i should learn more about transformer models but i have seen the QKV attention mechanism and all of that
2023-03-15 21:43:40 +0100 <dolio> Are you ever in here to actually talk about Haskell, instead of excuses to not learn Haskell?
2023-03-15 21:44:11 +0100 <mauke> the preceding line, manyTill anyChar (try (string "<script" >> manyTill anyChar (char '>'))), is also broken in several ways
2023-03-15 21:44:13 +0100 <segfaultfizzbuzz> haha, yeah sorry for crowding the channel, i just thought this was really cool
2023-03-15 21:44:36 +0100 <mauke> for example, here the author forgot that tags are case insensitive and only checks for "<script"
2023-03-15 21:45:02 +0100jinsun(~jinsun@user/jinsun) (Read error: Connection reset by peer)
2023-03-15 21:45:08 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2023-03-15 21:45:13 +0100 <mauke> but all this is doing is .*?<script.*?>
2023-03-15 21:45:15 +0100 <EvanR> it's like it's spitballing
2023-03-15 21:45:17 +0100jinsun(~jinsun@user/jinsun)
2023-03-15 21:45:32 +0100 <int-e> > length "<script></script>"
2023-03-15 21:45:33 +0100 <lambdabot> 17
2023-03-15 21:45:41 +0100 <mauke> which is basically "parsing" HTML with regex, only fancier (with Parsec combinators!) so you can't see it's doing the regex thing
2023-03-15 21:45:52 +0100 <Profpatsch> Regarding AI code … I’m refactoring code written by actual humans, and I dread the day when I’ll have to refactor code written by AI
2023-03-15 21:46:07 +0100 <segfaultfizzbuzz> what about the day when you have no idea where the code came from? lol
2023-03-15 21:46:09 +0100 <Profpatsch> like, unless the AI is actually better at writing code than humans
2023-03-15 21:46:14 +0100 <EvanR> your manager insists the AI code is helping
2023-03-15 21:46:17 +0100 <Profpatsch> segfaultfizzbuzz: Sometimes I wonder …
2023-03-15 21:46:18 +0100 <EvanR> now fix it
2023-03-15 21:46:24 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-15 21:46:44 +0100 <Profpatsch> This code is so confused, it could only have been written by a programmer :)
2023-03-15 21:46:48 +0100 <mauke> EvanR: oh, this is basically the outsourcing model
2023-03-15 21:46:57 +0100 <mauke> only without humans in the loop, so it's even cheaper!!1
2023-03-15 21:47:02 +0100 <Profpatsch> I’m just happy this code is Haskell
2023-03-15 21:47:15 +0100 <Profpatsch> And I forgive the coworker who wrote this
2023-03-15 21:47:16 +0100 <int-e> The problem with AI-generated code is that you still have to understand it to be sure whether it works. So, won't you be better off with writing code that matches how you think about the problem?
2023-03-15 21:47:17 +0100 <EvanR> yeah that's silly... we already do that with random ass web libraries
2023-03-15 21:48:02 +0100 <segfaultfizzbuzz> int-e: i mean part of this is interesting because it raises questions about how to encapsulate code
2023-03-15 21:48:09 +0100 <Profpatsch> In semi-related news, overusing middleware abstractions and Vaults considered harmful
2023-03-15 21:48:16 +0100 <Profpatsch> Just KISS
2023-03-15 21:48:45 +0100 <segfaultfizzbuzz> at the very least this will make for a very nice variation on quickcheck
2023-03-15 21:48:50 +0100 <int-e> segfaultfizzbuzz: you're poisoning your brain, as far as I'm concerned
2023-03-15 21:48:59 +0100 <davean> Oh I HATE the vault thing
2023-03-15 21:49:51 +0100Sciencentistguy3(~sciencent@hacksoc/ordinary-member)
2023-03-15 21:51:40 +0100 <EvanR> also AI art sucks
2023-03-15 21:51:50 +0100 <Profpatsch> davean: nearly as bad as the dataStore :: TVar Json.Value somebody added to our ReaderT environment SMILEY
2023-03-15 21:52:06 +0100 <segfaultfizzbuzz> EvanR: wait really? have you seen midjourney images? they are impressive
2023-03-15 21:52:09 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 250 seconds)
2023-03-15 21:52:10 +0100Sciencentistguy3Sciencentistguy
2023-03-15 21:52:13 +0100 <EvanR> are you serious
2023-03-15 21:52:15 +0100 <Profpatsch> Even after me telling them to not do that
2023-03-15 21:52:18 +0100 <Profpatsch> Yes
2023-03-15 21:52:27 +0100 <Profpatsch> unfortunately so
2023-03-15 21:52:36 +0100 <segfaultfizzbuzz> EvanR: https://www.reddit.com/r/midjourney/comments/11c6qqw/girls_in_renaissance_tracksuits/
2023-03-15 21:52:48 +0100 <segfaultfizzbuzz> i can't fathom how that isn't jaw-dropping
2023-03-15 21:53:04 +0100 <davean> Profpatsch: thats fun. I mean I can see reasons to have such a thing, but like its rare and would usually be in a TVar or such.
2023-03-15 21:53:10 +0100 <Profpatsch> segfaultfizzbuzz: it’s funny at least
2023-03-15 21:55:04 +0100 <Profpatsch> the lengths programmers go to avoid passing arguments to functions
2023-03-15 21:55:07 +0100 <[exa]> can we move the AI nonsense to #-offtopic
2023-03-15 21:55:13 +0100 <EvanR> ^
2023-03-15 21:55:28 +0100 <davean> segfaultfizzbuzz: Can we not move it anywere?
2023-03-15 21:55:32 +0100 <segfaultfizzbuzz> yeah, moved, sorry to crowd the channel ;-)
2023-03-15 21:55:42 +0100 <EvanR> specifically some non-haskell offtopic? xD
2023-03-15 21:55:50 +0100 <davean> EvanR: Yes that
2023-03-15 21:56:07 +0100 <int-e> I unironically want a content warning for AI-generated code
2023-03-15 21:56:08 +0100 <davean> I don't need to read more about some brain dead statistical model
2023-03-15 21:56:22 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 21:56:39 +0100 <Profpatsch> int-e: I want an AI that tells me if some code was generated by an AI copying code I wrote
2023-03-15 22:01:04 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 276 seconds)
2023-03-15 22:06:00 +0100zer0bitz(~zer0bitz@2001:2003:f443:d600:3906:5956:a545:1240)
2023-03-15 22:09:26 +0100cheater_(~Username@user/cheater)
2023-03-15 22:10:07 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-15 22:10:21 +0100cheater(~Username@user/cheater) (Ping timeout: 250 seconds)
2023-03-15 22:10:22 +0100cheater_cheater
2023-03-15 22:15:18 +0100bhall(~brunohall@195.147.207.136) (Read error: Connection reset by peer)
2023-03-15 22:16:18 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 22:17:19 +0100thyriaen(~thyriaen@2a01:aea0:dd4:5328:6245:cbff:fe9f:48b1) (Remote host closed the connection)
2023-03-15 22:21:49 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-15 22:22:20 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 265 seconds)
2023-03-15 22:24:28 +0100cheater(~Username@user/cheater) (Ping timeout: 276 seconds)
2023-03-15 22:26:07 +0100cheater(~Username@user/cheater)
2023-03-15 22:27:04 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 276 seconds)
2023-03-15 22:28:44 +0100Ram-Z(~Ram-Z@li1814-254.members.linode.com) (Quit: ZNC - http://znc.in)
2023-03-15 22:29:15 +0100jinsun(~jinsun@user/jinsun) (Ping timeout: 248 seconds)
2023-03-15 22:30:30 +0100a_coll(~acoll@45.92.120.189) (Quit: Leaving)
2023-03-15 22:32:12 +0100Ram-Z(Ram-Z@2a01:7e01::f03c:91ff:fe57:d2df)
2023-03-15 22:32:13 +0100cheater_(~Username@user/cheater)
2023-03-15 22:35:28 +0100cheater(~Username@user/cheater) (Ping timeout: 246 seconds)
2023-03-15 22:35:37 +0100cheater(~Username@user/cheater)
2023-03-15 22:37:06 +0100bitmapper(uid464869@id-464869.lymington.irccloud.com)
2023-03-15 22:38:25 +0100cheater_(~Username@user/cheater) (Ping timeout: 256 seconds)
2023-03-15 22:40:13 +0100jinsun(~jinsun@user/jinsun)
2023-03-15 22:44:46 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2023-03-15 22:47:45 +0100hrberg(~quassel@171.79-160-161.customer.lyse.net) (Ping timeout: 255 seconds)
2023-03-15 22:50:38 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 22:51:33 +0100bhall(~brunohall@195.147.207.136)
2023-03-15 22:54:12 +0100adium(adium@user/adium) (Ping timeout: 264 seconds)
2023-03-15 22:54:51 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 248 seconds)
2023-03-15 22:55:07 +0100adium(adium@user/adium)
2023-03-15 23:01:13 +0100Fischmiep(~Fischmiep@user/Fischmiep) (Read error: Connection reset by peer)
2023-03-15 23:05:51 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 23:09:05 +0100Fischmiep(~Fischmiep@user/Fischmiep)
2023-03-15 23:10:37 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 276 seconds)
2023-03-15 23:13:30 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-15 23:13:49 +0100michalz(~michalz@185.246.207.193) (Remote host closed the connection)
2023-03-15 23:13:57 +0100Fischmiep(~Fischmiep@user/Fischmiep) (Quit: Fischmiep)
2023-03-15 23:18:18 +0100Fischmiep(~Fischmiep@user/Fischmiep)
2023-03-15 23:18:41 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2023-03-15 23:18:53 +0100Fischmiep(~Fischmiep@user/Fischmiep) (Client Quit)
2023-03-15 23:19:35 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-03-15 23:22:44 +0100Fischmiep(~Fischmiep@user/Fischmiep)
2023-03-15 23:23:41 +0100acidjnk(~acidjnk@p200300d6e715c4953c9ace5586e07e06.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-03-15 23:25:18 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53) (Ping timeout: 268 seconds)
2023-03-15 23:35:26 +0100tusko(~yeurt@user/tusko) (Ping timeout: 255 seconds)
2023-03-15 23:35:59 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2023-03-15 23:36:42 +0100tusko(~yeurt@user/tusko)
2023-03-15 23:36:54 +0100segfaultfizzbuzz(~segfaultf@108.211.201.53)
2023-03-15 23:40:03 +0100jinsun(~jinsun@user/jinsun) (Read error: Connection reset by peer)
2023-03-15 23:41:52 +0100caryhartline(~caryhartl@cpe-76-184-32-233.tx.res.rr.com)
2023-03-15 23:42:15 +0100dsrt^(~dsrt@c-24-30-76-89.hsd1.ga.comcast.net)
2023-03-15 23:44:09 +0100freeside(~mengwong@103.252.202.85)
2023-03-15 23:46:22 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-15 23:48:58 +0100freeside(~mengwong@103.252.202.85) (Ping timeout: 276 seconds)
2023-03-15 23:51:16 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Ping timeout: 265 seconds)
2023-03-15 23:53:05 +0100Square(~Square4@user/square)
2023-03-15 23:59:46 +0100zeenk(~zeenk@2a02:2f04:a307:2300::7fe) (Quit: Konversation terminated!)