Logs on 2024-08-05 (liberachat/#haskell)
| 00:06:43 | × | machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 264 seconds) |
| 00:23:03 | × | Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
| 00:32:26 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 00:33:58 | → | califax joins (~califax@user/califx) |
| 01:29:17 | × | falafel quits (~falafel@2a0c:5a87:3104:4c01::bfe0) (Ping timeout: 265 seconds) |
| 01:48:12 | → | danza joins (~danza@user/danza) |
| 02:09:22 | → | Inst joins (~Inst@user/Inst) |
| 02:24:44 | × | tabaqui quits (~root@87.200.123.114) (Ping timeout: 272 seconds) |
| 02:34:15 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 02:34:54 | × | td_ quits (~td@i5387091C.versanet.de) (Ping timeout: 276 seconds) |
| 02:35:57 | → | td_ joins (~td@i53870916.versanet.de) |
| 02:55:31 | → | hgolden joins (~hgolden@2603:8000:9d00:3ed1:1ee4:1b7c:94a7:8fa7) |
| 02:58:43 | × | skyesoss quits (~Thunderbi@c-73-208-45-119.hsd1.il.comcast.net) (Ping timeout: 245 seconds) |
| 02:59:59 | × | danza quits (~danza@user/danza) (Quit: see you soon) |
| 03:07:33 | × | aforemny_ quits (~aforemny@2001:9e8:6ce4:3600:74c:8890:60ce:f920) (Ping timeout: 248 seconds) |
| 03:07:52 | → | aforemny joins (~aforemny@2001:9e8:6cc5:7700:e5cf:3849:4594:a5ae) |
| 03:08:25 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds) |
| 03:10:30 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 03:34:58 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 245 seconds) |
| 03:35:11 | → | euleritian joins (~euleritia@dynamic-176-006-131-200.176.6.pool.telefonica.de) |
| 03:40:51 | → | lol_ joins (~lol@2603:3016:1e01:b980:1aa:6452:eda4:91c6) |
| 03:43:34 | → | Square joins (~Square@user/square) |
| 03:45:06 | × | jcarpenter2 quits (~lol@2603:3016:1e01:b980:d79:f8af:5690:6860) (Ping timeout: 276 seconds) |
| 03:52:14 | → | krei-se- joins (~krei-se@p5085d903.dip0.t-ipconnect.de) |
| 03:52:34 | × | krei-se quits (~krei-se@p5085d225.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 04:25:58 | × | euleritian quits (~euleritia@dynamic-176-006-131-200.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
| 04:26:15 | → | euleritian joins (~euleritia@77.22.252.56) |
| 04:34:21 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 04:34:56 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 04:59:35 | → | rosco joins (~rosco@175.136.158.234) |
| 05:22:54 | → | michalz joins (~michalz@185.246.207.201) |
| 05:26:14 | × | rosco quits (~rosco@175.136.158.234) (Quit: Lost terminal) |
| 05:28:17 | → | rosco joins (~rosco@175.136.158.234) |
| 05:29:17 | × | euphores quits (~SASL_euph@user/euphores) (Quit: Leaving.) |
| 05:30:02 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 05:35:25 | → | euphores joins (~SASL_euph@user/euphores) |
| 05:37:34 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds) |
| 05:43:34 | × | euleritian quits (~euleritia@77.22.252.56) (Ping timeout: 260 seconds) |
| 05:44:30 | → | euleritian joins (~euleritia@dynamic-176-006-131-200.176.6.pool.telefonica.de) |
| 05:50:09 | → | CiaoSen joins (~Jura@2a05:5800:2e2:2100:e6b9:7aff:fe80:3d03) |
| 06:12:23 | → | hiredman joins (~hiredman@frontier1.downey.family) |
| 06:36:42 | × | sprout quits (~quassel@2a02-a448-3a80-0-2c67-11c0-6e5f-59bd.fixed6.kpn.net) (Ping timeout: 276 seconds) |
| 06:36:50 | → | smalltalkman joins (uid545680@id-545680.hampstead.irccloud.com) |
| 06:37:50 | → | sprout joins (~quassel@2a02-a448-3a80-0-4450-25ff-7ca4-4590.fixed6.kpn.net) |
| 06:40:39 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 06:55:30 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
| 07:00:28 | → | danse-nr3 joins (~danse-nr3@user/danse-nr3) |
| 07:01:42 | → | acidjnk joins (~acidjnk@p200300d6e72cfb12697648a237574ae3.dip0.t-ipconnect.de) |
| 07:10:08 | × | euleritian quits (~euleritia@dynamic-176-006-131-200.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
| 07:10:34 | → | euleritian joins (~euleritia@77.22.252.56) |
| 07:23:15 | → | alexherbo2 joins (~alexherbo@2a02-8440-320a-a642-f0fe-2631-b4f8-fe48.rev.sfr.net) |
| 07:26:06 | → | dans55440 joins (~danse-nr3@user/danse-nr3) |
| 07:28:03 | × | alexherbo2 quits (~alexherbo@2a02-8440-320a-a642-f0fe-2631-b4f8-fe48.rev.sfr.net) (Remote host closed the connection) |
| 07:28:21 | × | danse-nr3 quits (~danse-nr3@user/danse-nr3) (Ping timeout: 248 seconds) |
| 07:34:20 | × | dans55440 quits (~danse-nr3@user/danse-nr3) (Remote host closed the connection) |
| 07:34:34 | → | danse-nr3 joins (~danse-nr3@user/danse-nr3) |
| 07:44:55 | → | igorra joins (~igorra@user/igorra) |
| 07:48:40 | → | goroedge1 joins (~Thunderbi@user/Goroedge) |
| 07:52:02 | × | igorra quits (~igorra@user/igorra) (Quit: Client closed) |
| 07:53:40 | → | cfricke joins (~cfricke@user/cfricke) |
| 07:56:16 | → | machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net) |
| 07:57:01 | → | igorra joins (~igorra@45.137.112.1) |
| 08:03:34 | × | CiaoSen quits (~Jura@2a05:5800:2e2:2100:e6b9:7aff:fe80:3d03) (Ping timeout: 260 seconds) |
| 08:08:23 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2) |
| 08:10:29 | → | JuanDaugherty joins (~juan@user/JuanDaugherty) |
| 08:10:32 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 08:17:04 | → | oo_miguel joins (~Thunderbi@78.10.207.46) |
| 08:17:18 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
| 08:20:27 | → | mreh joins (~matthew@host86-160-168-12.range86-160.btcentralplus.com) |
| 08:22:29 | <mreh> | Is there a reason why associated types don't show in haddocks? |
| 08:23:14 | → | sord937 joins (~sord937@gateway/tor-sasl/sord937) |
| 08:23:37 | <mreh> | I guess its technically implementation, like how method bodies don't show, but it's kinda annoying |
| 08:24:28 | × | danse-nr3 quits (~danse-nr3@user/danse-nr3) (Quit: on the move) |
| 08:25:31 | × | JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
| 08:40:52 | <Axman6> | I agree, I find myself always wanting to see them |
| 08:41:16 | <Axman6> | jumping in ghci and using :kind! Foo Int works, but is a bit annoying |
| 08:43:38 | → | danse-nr3 joins (~danse-nr3@user/danse-nr3) |
| 08:44:59 | → | gmg joins (~user@user/gehmehgeh) |
| 08:57:39 | <jackdk> | Is this one of the reasons people declare an open type family next to the class? I'd always wondered about that |
| 08:59:45 | × | L29Ah quits (~L29Ah@wikipedia/L29Ah) (Ping timeout: 252 seconds) |
| 09:02:31 | → | skyesoss joins (~Thunderbi@c-73-208-45-119.hsd1.il.comcast.net) |
| 09:03:48 | × | tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
| 09:06:17 | → | alexherbo2 joins (~alexherbo@2a02-8440-320a-a642-4c63-95f2-dacb-f12b.rev.sfr.net) |
| 09:11:23 | × | skyesoss quits (~Thunderbi@c-73-208-45-119.hsd1.il.comcast.net) (Ping timeout: 255 seconds) |
| 09:18:56 | × | ThePenguin quits (~ThePengui@cust-95-80-24-166.csbnet.se) (Remote host closed the connection) |
| 09:19:31 | → | ThePenguin joins (~ThePengui@cust-95-80-24-166.csbnet.se) |
| 09:43:24 | → | sawilagar joins (~sawilagar@user/sawilagar) |
| 10:00:05 | × | igorra quits (~igorra@45.137.112.1) (Changing host) |
| 10:00:05 | → | igorra joins (~igorra@user/igorra) |
| 10:03:57 | × | alexherbo2 quits (~alexherbo@2a02-8440-320a-a642-4c63-95f2-dacb-f12b.rev.sfr.net) (Remote host closed the connection) |
| 10:05:14 | × | econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
| 10:11:59 | <stefan-__> | what options are there to update a field of a nested record using lens without knowing its exact location? for example the title of the publication with uuid 5fe9ce10-75b3-4b5d-9f77-b1b9e0a6a169 in https://gist.github.com/dozed/f96e32e796e073abab6e29847405b0f0 .. options I could think of so far: 1) search tree for uuid, takes O(n) 2) store some kind of path 3) normalize data structure (ids instead of nested values) 4) use mutable data (not available in... |
| 10:12:04 | <stefan-__> | ... haskell) |
| 10:13:05 | × | nnm- quits (nnm-@play.hard.go.pro.and.dont.be.a.noob.cx) (Changing host) |
| 10:13:05 | → | nnm- joins (nnm-@user/nnm-) |
| 10:14:29 | <danse-nr3> | as interesting as the question theoretically stands ... i can't picture myself in a similar situation. I guess i'd rather have a different data structure |
| 10:15:23 | <danse-nr3> | but maybe i would because i wouldn't expect to access nested records that way easily |
| 10:25:02 | × | ell quits (~ellie@user/ellie) (Quit: Ping timeout (120 seconds)) |
| 10:36:12 | × | rosco quits (~rosco@175.136.158.234) (Quit: Lost terminal) |
| 10:53:41 | × | acidjnk quits (~acidjnk@p200300d6e72cfb12697648a237574ae3.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 11:01:22 | → | tabaqui joins (~root@87.200.123.114) |
| 11:04:52 | × | euleritian quits (~euleritia@77.22.252.56) (Read error: Connection reset by peer) |
| 11:04:59 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 11:16:02 | × | danse-nr3 quits (~danse-nr3@user/danse-nr3) () |
| 11:21:11 | → | ell joins (~ellie@user/ellie) |
| 11:26:30 | → | ZharMeny joins (~user@user/ZharMeny) |
| 11:28:27 | × | igorra quits (~igorra@user/igorra) (Quit: Client closed) |
| 11:36:29 | × | byte quits (~byte@149.28.222.189) (Ping timeout: 260 seconds) |
| 11:37:06 | → | pikajude- joins (~jude@2001:19f0:ac01:373:5400:2ff:fe86:3274) |
| 11:37:11 | × | pikajude quits (~jude@149.28.207.64) (Ping timeout: 255 seconds) |
| 11:39:12 | → | byte joins (~byte@149.28.222.189) |
| 11:39:25 | → | waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
| 11:40:58 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 11:47:12 | → | JuanDaugherty joins (~juan@user/JuanDaugherty) |
| 12:03:40 | → | rosco joins (~rosco@175.136.158.234) |
| 12:12:46 | × | YoungFrog quits (~youngfrog@2a02:a03f:c9db:fc00:40f:34b2:83e3:2019) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in) |
| 12:13:07 | → | YoungFrog joins (~youngfrog@2a02:a03f:c9db:fc00:40f:34b2:83e3:2019) |
| 12:18:29 | × | byte quits (~byte@149.28.222.189) (Ping timeout: 260 seconds) |
| 12:18:47 | → | byte joins (~byte@149.28.222.189) |
| 12:29:52 | → | danse-nr3 joins (~danse-nr3@user/danse-nr3) |
| 12:30:24 | × | mreh quits (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Quit: Lost terminal) |
| 12:35:29 | × | ddellacosta quits (~ddellacos@ool-44c73d29.dyn.optonline.net) (Ping timeout: 248 seconds) |
| 12:37:36 | → | CiaoSen joins (~Jura@2a05:5800:2e2:2100:e6b9:7aff:fe80:3d03) |
| 12:43:52 | × | lukec quits (9dfd4d094e@2a03:6000:1812:100::10e) (Remote host closed the connection) |
| 12:44:20 | × | cpli quits (77fc530071@2a03:6000:1812:100::252) (Remote host closed the connection) |
| 12:44:20 | × | ggb quits (a62ffbaf4f@2a03:6000:1812:100::3ac) (Write error: Broken pipe) |
| 12:44:20 | × | filwisher quits (2e6936c793@2a03:6000:1812:100::170) (Remote host closed the connection) |
| 12:44:20 | × | kuruczgy quits (55b66dd3ae@2a03:6000:1812:100::127f) (Write error: Broken pipe) |
| 12:44:20 | × | evanrelf quits (3addc196af@2a03:6000:1812:100::f0) (Write error: Broken pipe) |
| 12:44:20 | × | ursa-major quits (114efe6c39@2a03:6000:1812:100::11f3) (Write error: Connection reset by peer) |
| 12:44:20 | × | smiesner quits (b0cf5acf8c@user/smiesner) (Remote host closed the connection) |
| 12:44:20 | × | ymherklotz quits (cb2c9cfbdd@2a03:6000:1812:100::29a) (Write error: Broken pipe) |
| 12:44:20 | × | sm2n quits (ae95cb1267@user/sm2n) (Write error: Connection reset by peer) |
| 12:44:20 | × | eso quits (a0662dfd5e@2a03:6000:1812:100::1266) (Write error: Broken pipe) |
| 12:44:20 | × | sus quits (1b7af6299f@user/zeromomentum) (Remote host closed the connection) |
| 12:44:20 | × | pmk quits (6afe4476a1@2a03:6000:1812:100::26d) (Remote host closed the connection) |
| 12:44:20 | × | 030AACUAK quits (7569f027cf@2a03:6000:1812:100::e4) (Write error: Broken pipe) |
| 12:44:20 | × | jakzale quits (6291399afa@user/jakzale) (Write error: Broken pipe) |
| 12:44:20 | × | samhh quits (7569f027cf@2a03:6000:1812:100::e4) (Remote host closed the connection) |
| 12:44:20 | × | tok quits (da65c7b04b@user/tok) (Remote host closed the connection) |
| 12:44:20 | × | b0o quits (0e4a0bf4c9@2a03:6000:1812:100::1bf) (Remote host closed the connection) |
| 12:44:20 | × | jmcantrell quits (644f1bed9a@user/jmcantrell) (Remote host closed the connection) |
| 12:44:20 | × | lucyy quits (228ee8f0ce@user/lucyy) (Remote host closed the connection) |
| 12:44:20 | × | shreyasminocha quits (51fdc93eda@user/shreyasminocha) (Remote host closed the connection) |
| 12:44:20 | × | lane quits (809450f172@2a03:6000:1812:100::1300) (Remote host closed the connection) |
| 12:44:20 | × | jleightcap quits (7bc4014b62@user/jleightcap) (Remote host closed the connection) |
| 12:44:20 | × | titibandit quits (e33ffbab65@user/titibandit) (Remote host closed the connection) |
| 12:44:20 | × | henrytill quits (e0180937c3@2a03:6000:1812:100::e8c) (Remote host closed the connection) |
| 12:44:20 | × | probie quits (cc0b34050a@user/probie) (Remote host closed the connection) |
| 12:44:20 | × | Ankhers quits (e99e97ef8e@2a03:6000:1812:100::2a2) (Remote host closed the connection) |
| 12:44:20 | × | fvr quits (ef3e56ca8b@2a03:6000:1812:100::3c4) (Remote host closed the connection) |
| 12:44:20 | × | duncan quits (c6181279e3@user/meow/duncan) (Remote host closed the connection) |
| 12:44:20 | × | JoelMcCracken quits (5ea8252fbb@2a03:6000:1812:100::10e3) (Remote host closed the connection) |
| 12:44:20 | × | fluffyballoon quits (45ce440a48@2a03:6000:1812:100::e2) (Remote host closed the connection) |
| 12:44:20 | × | bsima1 quits (9d7e39c8ad@2a03:6000:1812:100::dd) (Write error: Broken pipe) |
| 12:44:20 | × | alethkit quits (23bd17ddc6@sourcehut/user/alethkit) (Remote host closed the connection) |
| 12:44:20 | × | jkoshy quits (99b9359beb@user/jkoshy) (Remote host closed the connection) |
| 12:44:20 | × | rselim quits (ce261f06ff@user/milesrout) (Remote host closed the connection) |
| 12:44:21 | × | raghavgururajan quits (ea769b8000@user/raghavgururajan) (Remote host closed the connection) |
| 12:44:21 | × | whereiseveryone quits (206ba86c98@2a03:6000:1812:100::2e4) (Remote host closed the connection) |
| 12:44:21 | × | fn_lumi quits (3d621153a5@2a03:6000:1812:100::df7) (Remote host closed the connection) |
| 12:44:21 | × | chaitlatte0 quits (ea29c0bb16@user/chaitlatte0) (Remote host closed the connection) |
| 12:44:21 | × | arcadewise quits (52968ed80d@2a03:6000:1812:100::3df) (Remote host closed the connection) |
| 12:44:21 | × | aniketd quits (32aa4844cd@2a03:6000:1812:100::dcb) (Remote host closed the connection) |
| 12:44:21 | × | akspecs quits (00cc8321af@sourcehut/user/akspecs) (Remote host closed the connection) |
| 12:44:21 | × | fgaz_ quits (1ff9197ed6@2a03:6000:1812:100::11ea) (Remote host closed the connection) |
| 12:44:32 | → | bsima1 joins (9d7e39c8ad@2a03:6000:1812:100::dd) |
| 12:44:33 | → | smiesner joins (b0cf5acf8c@user/smiesner) |
| 12:44:33 | → | pmk joins (6afe4476a1@2a03:6000:1812:100::26d) |
| 12:44:34 | → | filwisher joins (2e6936c793@2a03:6000:1812:100::170) |
| 12:44:34 | → | lane joins (809450f172@2a03:6000:1812:100::1300) |
| 12:44:35 | → | ggb joins (a62ffbaf4f@2a03:6000:1812:100::3ac) |
| 12:44:35 | → | fgaz_ joins (1ff9197ed6@2a03:6000:1812:100::11ea) |
| 12:44:35 | → | lukec joins (9dfd4d094e@2a03:6000:1812:100::10e) |
| 12:44:35 | → | kuruczgy joins (55b66dd3ae@2a03:6000:1812:100::127f) |
| 12:44:36 | → | jkoshy joins (99b9359beb@user/jkoshy) |
| 12:44:36 | → | probie joins (cc0b34050a@user/probie) |
| 12:44:37 | → | henrytill joins (e0180937c3@2a03:6000:1812:100::e8c) |
| 12:44:37 | → | eso joins (a0662dfd5e@2a03:6000:1812:100::1266) |
| 12:44:37 | → | whereiseveryone joins (206ba86c98@2a03:6000:1812:100::2e4) |
| 12:44:38 | → | evanrelf joins (3addc196af@2a03:6000:1812:100::f0) |
| 12:44:38 | → | Ankhers joins (e99e97ef8e@2a03:6000:1812:100::2a2) |
| 12:44:40 | → | arcadewise joins (52968ed80d@2a03:6000:1812:100::3df) |
| 12:44:41 | → | shreyasminocha joins (51fdc93eda@user/shreyasminocha) |
| 12:44:41 | → | chaitlatte0 joins (ea29c0bb16@user/chaitlatte0) |
| 12:44:41 | → | ymherklotz joins (cb2c9cfbdd@2a03:6000:1812:100::29a) |
| 12:44:41 | → | lucyy joins (228ee8f0ce@user/lucyy) |
| 12:44:41 | → | fn_lumi joins (3d621153a5@2a03:6000:1812:100::df7) |
| 12:44:42 | → | tok joins (da65c7b04b@user/tok) |
| 12:44:43 | → | samhh joins (7569f027cf@2a03:6000:1812:100::e4) |
| 12:44:43 | → | sm2n joins (ae95cb1267@user/sm2n) |
| 12:44:44 | → | fvr joins (ef3e56ca8b@2a03:6000:1812:100::3c4) |
| 12:44:44 | → | b0o joins (0e4a0bf4c9@2a03:6000:1812:100::1bf) |
| 12:44:44 | → | alethkit joins (23bd17ddc6@sourcehut/user/alethkit) |
| 12:44:46 | → | sus joins (1b7af6299f@user/zeromomentum) |
| 12:44:46 | → | jleightcap joins (7bc4014b62@user/jleightcap) |
| 12:44:46 | → | jakzale joins (6291399afa@user/jakzale) |
| 12:44:46 | → | fluffyballoon joins (45ce440a48@2a03:6000:1812:100::e2) |
| 12:44:48 | → | jmcantrell joins (644f1bed9a@user/jmcantrell) |
| 12:44:48 | → | aniketd joins (32aa4844cd@2a03:6000:1812:100::dcb) |
| 12:44:49 | → | ursa-major joins (114efe6c39@2a03:6000:1812:100::11f3) |
| 12:44:50 | → | akspecs joins (00cc8321af@sourcehut/user/akspecs) |
| 12:44:50 | → | duncan joins (c6181279e3@user/meow/duncan) |
| 12:44:50 | → | JoelMcCracken joins (5ea8252fbb@2a03:6000:1812:100::10e3) |
| 12:44:50 | → | rselim joins (ce261f06ff@user/milesrout) |
| 12:44:50 | → | raghavgururajan joins (ea769b8000@user/raghavgururajan) |
| 12:44:50 | → | cpli joins (77fc530071@2a03:6000:1812:100::252) |
| 12:44:51 | → | titibandit joins (e33ffbab65@user/titibandit) |
| 12:46:19 | → | samhh_ joins (7569f027cf@2a03:6000:1812:100::e4) |
| 12:51:10 | × | danse-nr3 quits (~danse-nr3@user/danse-nr3) () |
| 12:52:42 | → | nunggu joins (~q@user/nunggu) |
| 12:54:01 | × | JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
| 12:54:35 | × | tabaqui quits (~root@87.200.123.114) (Ping timeout: 255 seconds) |
| 12:57:21 | × | nunggu quits (~q@user/nunggu) (Ping timeout: 260 seconds) |
| 13:04:01 | <Axman6> | :t template |
| 13:04:02 | <lambdabot> | (Data s, Applicative f, Typeable a) => (a -> f a) -> s -> f s |
| 13:04:17 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 13:04:27 | → | mreh joins (~matthew@host86-160-168-12.range86-160.btcentralplus.com) |
| 13:05:09 | <Axman6> | > (True, "Hello" Right False :: Either Int Bool, (1,2,3,True)) & partsOf template %~ map not |
| 13:05:11 | <lambdabot> | error: |
| 13:05:11 | <lambdabot> | • Couldn't match expected type ‘(b0 -> Either a0 b0) |
| 13:05:11 | <lambdabot> | -> Bool -> Either Int Bool’ |
| 13:05:33 | <Axman6> | > (True, "Hello", Right False :: Either Int Bool, (1,2,3,True)) & partsOf template %~ map not |
| 13:05:34 | <lambdabot> | (False,"Hello",Right True,(1,2,3,False)) |
| 13:05:52 | <Axman6> | :t partsOf template |
| 13:05:53 | <lambdabot> | (Functor f, Data t, Typeable a) => LensLike f t t [a] [a] |
| 13:07:08 | <Axman6> | stefan-__: does that help at all? partsOf template is an optic that finds all a's inside a t and gives you them as a list. each corresponding a will be set from the result |
| 13:07:22 | <Axman6> | > (True, "Hello", Right False :: Either Int Bool, (1,2,3,True)) & partsOf template . each %~ toUpper |
| 13:07:23 | <lambdabot> | (True,"HELLO",Right False,(1,2,3,True)) |
| 13:09:24 | <Axman6> | > (True, "Hello", Right False :: Either Int Bool, (1,2,3,True)) & partsOf template . each . filtered (<'l') %~ toUpper |
| 13:09:25 | <lambdabot> | (True,"HEllo",Right False,(1,2,3,True)) |
| 13:10:20 | → | igorra joins (~igorra@45.137.112.1) |
| 13:10:31 | <mreh> | do issues with haddock go on the top level GHC gitlab group now? |
| 13:11:29 | → | danse-nr3 joins (~danse-nr3@user/danse-nr3) |
| 13:11:33 | <Axman6> | so you could do something like... exampleData & partsOf template . each . _Generic . filtered (\g -> uuid d == "5fe9ce10-75b3-4b5d-9f77-b1b9e0a6a169") . title .~ "New Title" |
| 13:11:58 | <mreh> | I guess this got left behind in the great migration https://github.com/haskell/haddock/issues/664 |
| 13:12:08 | × | igorra quits (~igorra@45.137.112.1) (Client Quit) |
| 13:16:08 | <Axman6> | s/_Generic/_Publication I guess |
| 13:16:11 | mreh | pages the gitlab admin |
| 13:20:57 | <Axman6> | :t elemOf _1 "Hello" |
| 13:20:58 | <lambdabot> | Field1 s s [Char] [Char] => s -> Bool |
| 13:21:08 | × | ft quits (~ft@p3e9bc4e7.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 13:22:49 | → | ft joins (~ft@p4fc2aa15.dip0.t-ipconnect.de) |
| 13:29:44 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 272 seconds) |
| 13:30:21 | → | euleritian joins (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) |
| 13:40:50 | → | ystael joins (~ystael@user/ystael) |
| 13:41:34 | → | spew joins (~spew@201.141.102.132) |
| 13:51:18 | × | spew quits (~spew@201.141.102.132) (Read error: Connection reset by peer) |
| 14:01:52 | → | JuanDaugherty joins (~juan@user/JuanDaugherty) |
| 14:04:31 | → | spew joins (~spew@201.141.102.132) |
| 14:06:11 | × | spew quits (~spew@201.141.102.132) (Client Quit) |
| 14:18:41 | × | hsw quits (~hsw@2001-b030-2303-0104-0172-0025-0012-0132.hinet-ip6.hinet.net) (Read error: Connection reset by peer) |
| 14:18:44 | → | hsw_ joins (~hsw@2001-b030-2303-0104-0172-0025-0012-0132.hinet-ip6.hinet.net) |
| 14:18:48 | × | euleritian quits (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
| 14:19:11 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 14:30:06 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 260 seconds) |
| 14:30:33 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 14:33:18 | × | danse-nr3 quits (~danse-nr3@user/danse-nr3) () |
| 14:38:28 | × | ZharMeny quits (~user@user/ZharMeny) (Remote host closed the connection) |
| 14:38:42 | → | ZharMeny joins (~user@user/ZharMeny) |
| 14:39:39 | × | cfricke quits (~cfricke@user/cfricke) (Ping timeout: 252 seconds) |
| 14:41:28 | <stefan-__> | Axman6: yep, that would be O(n) |
| 14:42:49 | <stefan-__> | otherwise that seems a nice way to do the traversal :) |
| 14:47:55 | → | danse-nr3 joins (~danse-nr3@user/danse-nr3) |
| 14:48:27 | <stefan-__> | Axman6: this does it: tpData & template @_ @Publication . filteredBy (uuid . only [mkUuid|79015baa-c1ed-4343-9e18-78ab0e3f786a|]) . title .~ "Foo" |
| 14:49:23 | <stefan-__> | danse-nr3: thanks for the thoughts, I might need to re-arrange the data, e.g. normalize it (as in relational databases), to avoid O(n) |
| 14:49:29 | → | skyesoss joins (~Thunderbi@128.135.204.35) |
| 14:50:15 | <danse-nr3> | huh... probably wrong nick? |
| 14:50:45 | <danse-nr3> | oh i see... sorry some time has passed :P |
| 14:51:46 | <stefan-__> | :) |
| 14:53:03 | × | oo_miguel quits (~Thunderbi@78.10.207.46) (Quit: oo_miguel) |
| 14:53:18 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds) |
| 14:54:27 | → | euleritian joins (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) |
| 14:56:24 | → | cfricke joins (~cfricke@user/cfricke) |
| 14:56:31 | <Inst> | is it worth it to default to streaming? |
| 15:01:23 | × | euleritian quits (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
| 15:01:56 | → | euleritian joins (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) |
| 15:02:50 | × | goroedge1 quits (~Thunderbi@user/Goroedge) (Ping timeout: 255 seconds) |
| 15:05:14 | × | euleritian quits (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
| 15:05:32 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 15:07:06 | <haskellbridge> | <mauke> we're all streaming down here |
| 15:09:04 | <Inst> | sorry, tbh, i'm just haskrastinating (looking up new concepts / libraries, or coding for fun instead of doing what you're supposed to be doing) |
| 15:09:18 | <Inst> | I never quite mastered streaming libraries, made a run for streamly (which is higher performance than streaming) |
| 15:10:04 | <Inst> | i'm just curious if using streaming for everything, even when you're not streaming, is valid |
| 15:10:18 | × | danse-nr3 quits (~danse-nr3@user/danse-nr3) (Remote host closed the connection) |
| 15:10:44 | JuanDaugherty | guesses prolly not |
| 15:10:51 | × | JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
| 15:10:51 | <EvanR> | a stream of 1 |
| 15:16:29 | → | doyougnu- joins (~doyougnu@syn-045-046-170-068.res.spectrum.com) |
| 15:16:30 | × | doyougnu quits (~doyougnu@syn-045-046-170-068.res.spectrum.com) (Ping timeout: 244 seconds) |
| 15:18:39 | → | danse-nr3 joins (~danse-nr3@user/danse-nr3) |
| 15:18:39 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
| 15:19:02 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 15:20:54 | → | falafel joins (~falafel@2a0c:5a87:3104:4c01::bfe0) |
| 15:21:32 | <Inst> | S.repeat 1 :: Stream (Of Int) [] () |
| 15:26:18 | → | dans55945 joins (~danse-nr3@user/danse-nr3) |
| 15:28:29 | × | danse-nr3 quits (~danse-nr3@user/danse-nr3) (Ping timeout: 252 seconds) |
| 15:31:19 | × | cfricke quits (~cfricke@user/cfricke) (Ping timeout: 264 seconds) |
| 15:32:07 | <monochrom> | Ironically I say yes because if you ask that question then your "everything" has an unsaid boundary that allows using streaming. |
| 15:32:36 | <monochrom> | The same way "can I use Turing machines for everything?" the answer is yes for your limited imagination of "everything". |
| 15:32:54 | <monochrom> | You can also use Haskell for everything. >:D |
| 15:33:24 | <Inst> | technically if you believe in using everything in C, you can just inline-C everything provided you're willing to pay the Haskell RTS penalty |
| 15:33:28 | <c_wraith> | objection! you can't use turing machines for programs that receive input at run time! |
| 15:33:56 | <Inst> | /s/using everything in C/using C for everything |
| 15:34:02 | <monochrom> | That was heresy until even Knuth's time. >:) |
| 15:35:14 | <Inst> | Why do streaming libraries provide functions to use streams as list substitutes? |
| 15:35:22 | <dolio> | c_wraith: You can use type-2 Turing machines. |
| 15:36:01 | <c_wraith> | yeah, there are lots of extensions to Turing machines that can be tweaked until what they do is indistinguishable from taking input at run time |
| 15:36:29 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
| 15:36:39 | <dolio> | You can do it with regular Turing machines, too. You just have to change your protocol for using them. |
| 15:37:14 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 15:38:46 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection) |
| 15:39:54 | <Inst> | i guess the real question is, are there use cases (besides microprojects) wherein using System.IO lazy IO functions is superior to using a streaming library for IO actions? |
| 15:41:07 | <dolio> | Any project where most of the work isn't reading a giant amount of data, and you don't want to deal with a baroque streaming library. |
| 15:41:27 | <dolio> | Like, you don't need to use a streaming library to parse your config file. |
| 15:42:34 | <dans55945> | streaming and functional reactive fit quite well within haskell's abstractions anyways so that shouldn't be a dilemma |
| 15:43:34 | <dans55945> | a lot of logic can probably be ported eventually without many changes |
| 15:43:35 | <dolio> | I don't think any streaming library is even close to being as nice as just `readFile` and associated stuff if the latter gets the job done. |
| 15:43:50 | <Inst> | why readFile over readFile'? |
| 15:43:52 | → | abyxq joins (~abyxq@user/abyxq) |
| 15:44:10 | <Inst> | other than not having to import System.IO (readFile') and typing the extra apostrophe? |
| 15:45:00 | <dans55945> | that's like asking ... why strict rather than non-strict. As about streaming, it depends |
| 15:46:49 | <Inst> | in the trivial readFile config case, it implies that you're valuing minimizing headaches, in which case having to consider that the handle could remain open and block a second use is a headache |
| 15:47:19 | <dolio> | Second use of what? |
| 15:47:49 | <Inst> | of the config file |
| 15:47:49 | <dans55945> | on the other hand if the file is huge and you find what you need at the beginning, you saved yourself a lot of memory and time |
| 15:48:24 | <dolio> | When is this actually a headache? |
| 15:50:28 | → | tt12310978324 joins (~tt1231@2603:6010:8700:4a81:219f:50d3:618a:a6ee) |
| 15:50:41 | × | tt1231097832 quits (~tt1231@2603:6010:8700:4a81:219f:50d3:618a:a6ee) (Ping timeout: 248 seconds) |
| 15:50:42 | tt12310978324 | is now known as tt1231097832 |
| 15:54:58 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
| 15:55:07 | × | dans55945 quits (~danse-nr3@user/danse-nr3) (Remote host closed the connection) |
| 15:55:22 | → | danse-nr3 joins (~danse-nr3@user/danse-nr3) |
| 15:55:41 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 15:56:53 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2) |
| 16:05:05 | × | Inst quits (~Inst@user/Inst) (Ping timeout: 265 seconds) |
| 16:06:32 | × | machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 265 seconds) |
| 16:10:52 | <monochrom> | Perhaps it was my fault bringing up "limited imagination". :) |
| 16:11:01 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds) |
| 16:11:46 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 16:14:41 | <monochrom> | Limited imagination is aka focus. Focus is a good thing. |
| 16:16:28 | × | sefidel quits (~sefidel@user/sefidel) (Remote host closed the connection) |
| 16:18:16 | → | sefidel joins (~sefidel@user/sefidel) |
| 16:26:47 | <dolio> | My point is, having a lot of code has nothing to do with this issue. The reasons why something like readFile might be adequate and preferred if you're just writing something quick could easily hold for an individual piece of a project with 1 billion lines of code. |
| 16:27:10 | <danse-nr3> | agreed |
| 16:27:50 | <dolio> | You have to consider what particular thing you're doing at the moment, not whether you're a 'big project' or not. |
| 16:28:37 | <danse-nr3> | in fact these days i hoped to work on a small experiment that yet needed streaming |
| 16:28:47 | <dolio> | Yeah, that can happen, too. |
| 16:29:02 | → | JuanDaugherty joins (~juan@user/JuanDaugherty) |
| 16:37:18 | × | falafel quits (~falafel@2a0c:5a87:3104:4c01::bfe0) (Ping timeout: 276 seconds) |
| 16:38:12 | × | smalltalkman quits (uid545680@id-545680.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 16:45:21 | → | spew joins (~spew@201.141.102.132) |
| 16:45:45 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 16:48:23 | → | tabaqui joins (~root@87.200.123.114) |
| 16:51:36 | → | Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) |
| 16:54:20 | → | tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
| 16:57:35 | × | spew quits (~spew@201.141.102.132) (Quit: spew) |
| 16:57:48 | → | spew joins (~spew@201.141.102.132) |
| 17:09:37 | × | mreh quits (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 248 seconds) |
| 17:15:32 | → | nhar joins (~noah@c-73-43-99-194.hsd1.ga.comcast.net) |
| 17:18:57 | × | spew quits (~spew@201.141.102.132) (Quit: spew) |
| 17:19:44 | <nhar> | so I've implemented a hindley-milner type system...now I need to test it. Does anyone have any recommendations on how to test a type system implementation? (specificially HM?) |
| 17:20:12 | <dolio> | Write some programs. |
| 17:20:50 | <ncf> | write a hindler-milner type checker inside your hindley-milner type checker |
| 17:21:18 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:22:19 | <nhar> | @ncf - could you expand on this? I'm new to type systems in general... |
| 17:22:19 | <lambdabot> | Maybe you meant: unpf rc bf |
| 17:24:12 | <danse-nr3> | you embarked on an ambitious task nhar |
| 17:24:42 | <mauke> | :t let f0 x = \f -> f x; f1 x = f0 (f0 x); f2 x = f1 (f1 x); f3 x = f2 (f2 x); f4 x = f3 (f3 x) in f4 |
| 17:24:43 | <lambdabot> | t1 -> (((((((((((((((((((((((((((((((t1 -> t2) -> t2) -> t3) -> t3) -> t4) -> t4) -> t5) -> t5) -> t6) -> t6) -> t7) -> t7) -> t8) -> t8) -> t9) -> t9) -> t10) -> t10) -> t11) -> t11) -> t12) -> t12) |
| 17:24:43 | <lambdabot> | -> t13) -> t13) -> t14) -> t14) -> t15) -> t15) -> t16) -> t16) -> t17) -> t17 |
| 17:25:12 | <danse-nr3> | ghosh mauke you wanted to make ASCII art? |
| 17:25:19 | <nhar> | @danse-nr3 Thanks! Using an effect system and recursion-schemes made the implementation a bit easier |
| 17:25:20 | <lambdabot> | Unknown command, try @list |
| 17:25:37 | <danse-nr3> | no need for @ in IRC nhar, that causes the errors |
| 17:25:59 | <nhar> | cool - is there any other std? |
| 17:26:44 | <danse-nr3> | huh... i bet you get your nick highlighted when i just type it without prefixes or postfixes. Ask in #libera if you are new to this |
| 17:27:07 | <glguy> | nhar, just use normal writing conventions when you're addressing someone. |
| 17:28:40 | × | rosco quits (~rosco@175.136.158.234) (Quit: Lost terminal) |
| 17:29:35 | <nhar> | thanks! |
| 17:30:42 | <nhar> | so..about testing HM...I'm a bit confused by ncf's comment... |
| 17:31:33 | <glguy> | What about it? |
| 17:32:11 | × | abyxq quits (~abyxq@user/abyxq) (Quit: leaving) |
| 17:32:35 | <nhar> | what does it mean to write a type checker inside a type checker? |
| 17:32:51 | <glguy> | Type checkers type check programs. a program you could write is a typechecker. |
| 17:33:13 | <glguy> | To test your type checker you'll need to write some programs to run it on |
| 17:33:29 | × | micro quits (~micro@user/micro) (Ping timeout: 260 seconds) |
| 17:33:31 | <nhar> | oh...what if my target language doesn't support recursion? |
| 17:33:46 | <glguy> | then don't write programs that need recusion when you test it |
| 17:34:34 | <nhar> | ah, so I would just write a bunch of adhoc ASTs where I know the type and then make sure the infered type matches the type I know? |
| 17:35:18 | → | micro joins (~micro@user/micro) |
| 17:35:22 | <nhar> | if that's the case is there a "cleaner" way? |
| 17:35:51 | <ncf> | alternative trollish answer: don't test it, prove it correct |
| 17:36:56 | <danse-nr3> | =D |
| 17:37:04 | <nhar> | ncf, could you point me to some resources on how to do that? The wikipedia page is a bit dense for me |
| 17:37:54 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds) |
| 17:38:23 | → | euleritian joins (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) |
| 17:39:13 | danse-nr3 | sales face |
| 17:39:44 | <danse-nr3> | why getting that many headhaches nhar, when you could simply be using Haskell! =D |
| 17:41:54 | <nhar> | I am! lol! :D |
| 17:42:31 | <danse-nr3> | but you don't want to use its typesystem |
| 17:43:25 | × | Ellenor quits (~Ellenor@invictus.wa.us.umbrellix.net) (Ping timeout: 252 seconds) |
| 17:43:45 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 17:44:48 | × | krei-se- quits (~krei-se@p5085d903.dip0.t-ipconnect.de) (Quit: ZNC 1.9.1 - https://znc.in) |
| 17:45:19 | × | JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
| 17:46:57 | <nhar> | I don't follow, danse-nr3...are you implying that I use HOAS? |
| 17:48:48 | <haskellbridge> | <thirdofmay18081814goya> any book on writing compilers in haskell? |
| 17:49:28 | <danse-nr3> | oh don't mind me nhar, i am not that knowledgeable in type systems, was trying to figure the context of the problem |
| 17:50:10 | → | Ellenor joins (~Ellenor@invictus.wa.us.umbrellix.net) |
| 17:50:52 | <nhar> | Ah! Well I would be happy to give it! I'm creating a new language (for fun) and I want to learn the HM type system. I've implemented the HM type inference algorithm and now I'm ready to write tests for it |
| 17:51:49 | <danse-nr3> | makes sense. Did you consider property tests? |
| 17:51:59 | <nhar> | And I don't want to write a bunch of random programs to test the inference algorithm because that doesn't seem to be a very all-encompassing way to catch bugs |
| 17:52:12 | <nhar> | I have started to (using Hedgehog) |
| 17:52:47 | <nhar> | the properties I'm writing correspond to those listed in the formal specification for the inference algorithm |
| 17:52:47 | → | krei-se joins (~krei-se@p5085d903.dip0.t-ipconnect.de) |
| 17:53:04 | <ncf> | the nature of testing is coming up with a bunch of random test cases |
| 17:53:26 | <ncf> | or having a computer do that for you |
| 17:54:19 | <danse-nr3> | well, being a bit more informed helps keeping (specific) case testing sane, but yeah some randomicity helps |
| 17:55:55 | <nhar> | yeah, i've gone down that trail. Where I am getting stuck is in generating terms and their corresponding types |
| 17:57:15 | <nhar> | my first approach was to use GHC.Generics to generate random types and then inhabit them, infer the term and check that a substitution exists between the infered type and the generated type |
| 17:57:46 | <nhar> | but inhabiting random types (especially lambda terms) seemed like a lot of extra work |
| 17:58:42 | <danse-nr3> | stupid question: did you peek at how GHC does that? |
| 17:59:51 | <nhar> | oh gorsh did I try...that codebase is...well, huge... |
| 17:59:53 | <ncf> | you could look at something like djinn https://hackage.haskell.org/package/djinn |
| 18:00:33 | → | acidjnk joins (~acidjnk@p200300d6e72cfb12697648a237574ae3.dip0.t-ipconnect.de) |
| 18:02:07 | <geekosaur> | djinn's a bit too simple-minded. https://github.com/lspitzner/exference maybe |
| 18:02:41 | danse-nr3 | [always found philip glass somewhat recursive philipglass.bandcamp.com/album/philip-glass-the-complete-piano-etudes] |
| 18:03:26 | <nhar> | thanks geekosaur!...and ncf! |
| 18:04:44 | × | hiredman quits (~hiredman@frontier1.downey.family) (Quit: leaving) |
| 18:05:17 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 18:07:23 | → | hiredman joins (~hiredman@frontier1.downey.family) |
| 18:10:52 | → | target_i joins (~target_i@user/target-i/x-6023099) |
| 18:12:57 | → | spew joins (~spew@201.141.102.132) |
| 18:14:29 | <monochrom> | GHC uses something like OutsideIn(X), which is way ahead of HM. |
| 18:17:42 | <monochrom> | (\f g x -> f (g x)) (\f g x -> f (g x)) (\f g x -> f (g x)) is always a fun example. :) |
| 18:18:26 | <danse-nr3> | that the y combinator? |
| 18:18:42 | <monochrom> | If you have let-generalization, then "let c = (\f g x -> f (g x)) in c c c" |
| 18:18:48 | <dolio> | (.) (.) (.) |
| 18:19:26 | <monochrom> | Maybe I'll put it on the exam! |
| 18:19:42 | <danse-nr3> | sshhht |
| 18:20:15 | <nhar> | monochrom which university do you teach at? |
| 18:20:27 | <monochrom> | U of Toronto Scarborough |
| 18:21:58 | <monochrom> | My question 2 in https://www.cs.utoronto.ca/~trebla/CSCC24-2024-Summer/a3/cscc24-2024-5-a3.pdf is also a good example if your system supports the list type and recursive let. |
| 18:23:59 | <nhar> | thanks! I used your post on type inference you sent me to write my implementation (and a heavy borrow from typing haskell in haskell by Jones) |
| 18:24:21 | <monochrom> | I think I borrowd much from typing haskell in haskell, too. |
| 18:25:57 | <nhar> | nice, I used recursion-schemes to simplify/optimize his algorithm ...it's a pretty fun exercise! |
| 18:31:01 | × | califax quits (~califax@user/califx) (Ping timeout: 260 seconds) |
| 18:31:20 | → | califax joins (~califax@user/califx) |
| 18:32:28 | danse-nr3 | sighs |
| 18:32:46 | <danse-nr3> | i'm so behind in haskell exercises |
| 18:33:23 | <danse-nr3> | wanted to experiment with list fusion but it's been stalling for months |
| 18:33:45 | <nhar> | what kind of fusion are you looking at? |
| 18:34:17 | <c_wraith> | Pretty sure that's Z, not Y |
| 18:34:33 | <monochrom> | Don't worry, it took me forever to learn GHC.Generics, Yoneda lemma, or induction in Lean. :) (Recursion is truly a rabbit hole, you know...) |
| 18:34:54 | <c_wraith> | I still don't know the yoneda lemma. I just know the coyoneda type. |
| 18:34:57 | <danse-nr3> | "list fusion"? I only know one kind. It's interesting to experiment with it, had fun starting but didn't have time to finalise... i am hopeful winter will help, who knows |
| 18:36:08 | <haskellbridge> | <Bowuigi> There are like 3 kinds: Deforestation, hylomorphism fusion and law application |
| 18:36:15 | → | mreh joins (~matthew@host86-160-168-12.range86-160.btcentralplus.com) |
| 18:36:17 | <danse-nr3> | oops |
| 18:36:22 | <haskellbridge> | <Bowuigi> The last two are way more general tho AFAIK |
| 18:36:52 | <monochrom> | In the Haskell version, the Yoneda lemma just says that (forall x. (A -> x) -> F x) is in bijection with F A, where F is a functor. IIRC the yoneda type is the LHS, (forall x. (A -> x) -> F x). |
| 18:38:12 | <monochrom> | as opposed to the coyoneda type which is existential instead. |
| 18:40:05 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 18:40:14 | × | Square quits (~Square@user/square) (Ping timeout: 265 seconds) |
| 18:43:39 | <nhar> | what's really fun is to see how the Yoneda is related to Kan extensions in Haskell. |
| 18:43:52 | <nhar> | took me forever to grok Yoneda though... |
| 18:43:59 | <nhar> | and kan extensions... |
| 18:45:31 | <nhar> | monochrom, I'm curious...what does the academic landscape look like nowadays w.r.t Functional Programming and Category Theory? I looked at graduate programs a while back but couldn't find enough motivation to commit - that and I couldn't think of a reasonable research topic |
| 18:49:02 | × | danse-nr3 quits (~danse-nr3@user/danse-nr3) (Quit: have a nice evening) |
| 18:49:05 | × | spew quits (~spew@201.141.102.132) (Read error: Connection reset by peer) |
| 18:51:39 | × | darkstardevx quits (~darkstard@50.53.3.2) (Remote host closed the connection) |
| 18:52:00 | → | darkstardevx joins (~darkstard@50.53.3.2) |
| 19:00:55 | → | machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net) |
| 19:08:54 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 19:20:38 | → | qeef joins (~qeef@138-169-143-94.cust.centrio.cz) |
| 19:31:34 | × | rvalue quits (~rvalue@user/rvalue) (Read error: Connection reset by peer) |
| 19:32:11 | → | rvalue joins (~rvalue@user/rvalue) |
| 19:35:51 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 19:36:49 | → | cfricke joins (~cfricke@user/cfricke) |
| 19:37:11 | × | rvalue quits (~rvalue@user/rvalue) (Remote host closed the connection) |
| 19:38:56 | × | cfricke quits (~cfricke@user/cfricke) (Client Quit) |
| 19:42:35 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 19:44:52 | → | anttih_ joins (~anttih@user/anttih-:66400) |
| 19:45:28 | → | rvalue joins (~rvalue@user/rvalue) |
| 19:45:52 | × | anttih_ quits (~anttih@user/anttih-:66400) (Quit: The Lounge - https://thelounge.chat) |
| 19:48:18 | <nhar> | :q |
| 19:48:20 | × | nhar quits (~noah@c-73-43-99-194.hsd1.ga.comcast.net) (Quit: leaving) |
| 19:48:36 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 19:52:39 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 19:56:13 | <monochrom> | They are still a niche. |
| 19:59:50 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 255 seconds) |
| 20:04:01 | × | machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 248 seconds) |
| 20:06:13 | <Franciman> | monochrom: maybe where you live lol |
| 20:06:31 | <Franciman> | also still? |
| 20:06:46 | <Franciman> | It is not so accurate, the thing is that nowadays most energies are poured in artificial intelligence |
| 20:06:57 | <Franciman> | which ate everything else |
| 20:07:25 | <monochrom> | I have not seen a year when there was no fad eating everything else. |
| 20:07:55 | <monochrom> | In my grad school days it was automatic parallelization. |
| 20:08:16 | <c_wraith> | at least we got some cool stuff like data-parallel languages out of that |
| 20:08:16 | <Rembane> | monochrom: Sounds fun, I suppose it didn't work? |
| 20:09:21 | <darkling> | I'm sure there's useful bits of it knocking around in GPU implementations. and the like. |
| 20:10:14 | <monochrom> | The empirical outcome was it didn't work. But I am wondering whether the reason is it fundamentally must not work or the incidental kind of people who went into the fad did not learn formal methods. |
| 20:10:46 | <monochrom> | But empirically they only did relatively naive things if you ask someone in formal methods. |
| 20:12:46 | <Rembane> | Oh well. I hope they didn't put too much time into it. |
| 20:14:23 | <monochrom> | Oh you know how academia works. They put a lot of time into it, but they got their rewards: a paper mill industry that propelled the lot of them into publication stardom. |
| 20:15:49 | <Franciman> | monochrom: lol sure why not |
| 20:16:07 | <Franciman> | anyways re: automatic parallelization |
| 20:16:19 | <Franciman> | have you checked papadumitriou's work on chain logic programs? |
| 20:16:22 | <Franciman> | it's quite damn neat! |
| 20:16:42 | <Franciman> | they find a nifty characterization of which logic chain programs are parallelizable and which are not |
| 20:16:53 | <Franciman> | also re: automatic parallelization. AGAIN you are talking about your very local experience |
| 20:17:03 | → | Kryder joins (~Kryder@90.201.223.82) |
| 20:17:05 | <EvanR> | neat. damn neat. And statistics |
| 20:17:14 | <Franciman> | wait |
| 20:17:50 | <Franciman> | https://dl.acm.org/doi/abs/10.1145/153724.153752 |
| 20:17:52 | <Franciman> | here it is |
| 20:20:05 | × | Kryder_ quits (~Kryder@90.201.223.82) (Ping timeout: 248 seconds) |
| 20:21:33 | <Rembane> | \o/ Evening reading! \o/ |
| 20:26:28 | × | euleritian quits (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
| 20:26:46 | → | euleritian joins (~euleritia@ip5f5ad3cc.dynamic.kabel-deutschland.de) |
| 20:43:19 | × | euleritian quits (~euleritia@ip5f5ad3cc.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds) |
| 20:43:36 | → | euleritian joins (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) |
| 20:44:32 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 20:51:42 | × | tomku quits (~tomku@user/tomku) (Ping timeout: 265 seconds) |
| 20:51:56 | → | tomku joins (~tomku@user/tomku) |
| 20:52:32 | → | falafel joins (~falafel@2a0c:5a87:3104:4c01::bfe0) |
| 20:55:29 | <haskellbridge> | <thirdofmay18081814goya> any material on writing compilers in haskell? |
| 21:02:06 | → | hgolden_ joins (~hgolden@2603:8000:9d00:3ed1:1ee4:1b7c:94a7:8fa7) |
| 21:02:21 | <Franciman> | EvanR: have you checked the paper? |
| 21:04:39 | × | hgolden quits (~hgolden@2603:8000:9d00:3ed1:1ee4:1b7c:94a7:8fa7) (Ping timeout: 252 seconds) |
| 21:13:11 | → | spew joins (~spew@201.141.102.132) |
| 21:34:40 | × | michalz quits (~michalz@185.246.207.201) (Remote host closed the connection) |
| 21:36:19 | <monochrom> | I think Appel's "modern compiler implementation in ML" is close enough to doing it in Haskell. |
| 21:39:35 | <mauke> | it gets easier if your source language is brainfuck |
| 21:41:12 | × | CiaoSen quits (~Jura@2a05:5800:2e2:2100:e6b9:7aff:fe80:3d03) (Ping timeout: 272 seconds) |
| 21:45:55 | × | target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving) |
| 21:46:52 | → | JuanDaugherty joins (~juan@user/JuanDaugherty) |
| 21:48:08 | <haskellbridge> | <thirdofmay18081814goya> monochrom: thanks for the recommendation! |
| 21:53:44 | → | ddellacosta joins (~ddellacos@ool-44c73d29.dyn.optonline.net) |
| 21:54:33 | <dolio> | Don't accidentally buy the Java version. |
| 22:03:38 | × | falafel quits (~falafel@2a0c:5a87:3104:4c01::bfe0) (Ping timeout: 244 seconds) |
| 22:05:42 | × | qeef quits (~qeef@138-169-143-94.cust.centrio.cz) (Ping timeout: 244 seconds) |
| 22:15:51 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 22:16:25 | × | spew quits (~spew@201.141.102.132) (Quit: spew) |
| 22:22:33 | → | pavonia joins (~user@user/siracusa) |
| 22:25:46 | × | AlexZenon quits (~alzenon@94.233.241.125) (Ping timeout: 252 seconds) |
| 22:26:31 | × | mreh quits (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 264 seconds) |
| 22:30:16 | → | AlexZenon joins (~alzenon@94.233.241.125) |
| 22:33:20 | × | ystael quits (~ystael@user/ystael) (Ping timeout: 260 seconds) |
| 22:55:05 | × | manwithluck quits (manwithluc@gateway/vpn/protonvpn/manwithluck) (Remote host closed the connection) |
| 22:55:12 | × | ddellacosta quits (~ddellacos@ool-44c73d29.dyn.optonline.net) (Ping timeout: 252 seconds) |
| 22:55:30 | → | manwithluck joins (manwithluc@gateway/vpn/protonvpn/manwithluck) |
| 22:59:02 | × | tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: jdfvkb) |
| 23:01:59 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 23:02:17 | × | euleritian quits (~euleritia@dynamic-176-006-150-162.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
| 23:02:35 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 23:04:33 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 23:04:33 | × | euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
| 23:04:46 | → | euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 23:08:13 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 244 seconds) |
| 23:17:04 | <jle`> | i forgot if conor mcbride used to hang out here |
| 23:25:42 | × | acidjnk quits (~acidjnk@p200300d6e72cfb12697648a237574ae3.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
| 23:30:27 | <dolio> | I don't think so. |
| 23:30:29 | → | falafel joins (~falafel@2a0c:5a87:3104:4c01::bfe0) |
| 23:33:41 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 23:35:21 | → | acidjnk joins (~acidjnk@p200300d6e72cfb126dbf5ec3ae9702a3.dip0.t-ipconnect.de) |
| 23:40:42 | <sprout> | isn't that the agda guy? |
| 23:40:50 | <sprout> | try #agda |
| 23:42:19 | × | sawilagar quits (~sawilagar@user/sawilagar) (Ping timeout: 265 seconds) |
| 23:43:54 | × | Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
| 23:44:54 | × | skyesoss quits (~Thunderbi@128.135.204.35) (Ping timeout: 244 seconds) |
| 23:45:46 | <dolio> | I'm not aware of him using irc. |
| 23:46:36 | × | JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
| 23:55:58 | × | manwithluck quits (manwithluc@gateway/vpn/protonvpn/manwithluck) (Ping timeout: 252 seconds) |
| 23:56:30 | → | manwithluck joins (manwithluc@gateway/vpn/protonvpn/manwithluck) |
| 23:57:38 | → | Inst joins (~Inst@user/Inst) |
All times are in UTC on 2024-08-05.