2024-12-10 00:00:39 +0100 | housemate_ | (~housemate@ppp203-122-213-191.static.internode.on.net) housemate |
2024-12-10 00:00:39 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) (Remote host closed the connection) |
2024-12-10 00:01:05 +0100 | housemate | (~housemate@ppp203-122-213-191.static.internode.on.net) (Ping timeout: 248 seconds) |
2024-12-10 00:01:11 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 00:01:43 +0100 | JuanDaugherty | (~juan@user/JuanDaugherty) JuanDaugherty |
2024-12-10 00:01:50 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) |
2024-12-10 00:04:20 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) (Read error: Connection reset by peer) |
2024-12-10 00:06:21 +0100 | SlackCoder | (~SlackCode@64-94-63-8.ip.weststar.net.ky) (Quit: Leaving) |
2024-12-10 00:07:40 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) MyNetAz |
2024-12-10 00:10:36 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) |
2024-12-10 00:10:36 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) Tuplanolla |
2024-12-10 00:12:15 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 00:16:27 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-12-10 00:18:47 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) (Read error: Connection reset by peer) |
2024-12-10 00:20:57 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2024-12-10 00:25:12 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) |
2024-12-10 00:28:21 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) (Read error: Connection reset by peer) |
2024-12-10 00:28:42 +0100 | housemate_ | (~housemate@ppp203-122-213-191.static.internode.on.net) (Ping timeout: 252 seconds) |
2024-12-10 00:32:25 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 00:36:31 +0100 | philopsos | (~caecilius@user/philopsos) (Ping timeout: 252 seconds) |
2024-12-10 00:36:49 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-12-10 00:40:54 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) |
2024-12-10 00:47:22 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) (Read error: Connection reset by peer) |
2024-12-10 00:47:50 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 00:52:10 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 00:55:11 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) |
2024-12-10 00:56:09 +0100 | dpratt | (~dpratt@165.225.220.148) dpratt |
2024-12-10 00:57:34 +0100 | tjbc | (~tjbc@user/fliife) (Remote host closed the connection) |
2024-12-10 00:58:03 +0100 | <dpratt> | curses! my AoC day 9 code produces the right answer for the test input, but not the real input (it's too high apparently)! |
2024-12-10 00:58:46 +0100 | tjbc | (~tjbc@user/fliife) fliife |
2024-12-10 01:00:55 +0100 | JuanDaugherty | (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
2024-12-10 01:01:18 +0100 | troojg | (~troojg@user/troojg) troojg |
2024-12-10 01:01:36 +0100 | <c_wraith> | too high? |
2024-12-10 01:02:09 +0100 | <dpratt> | c_wraith yeah and maybe I just found where the bug might live... |
2024-12-10 01:03:13 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 01:03:15 +0100 | KicksonButt | (~quassel@187.21.174.221) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2024-12-10 01:04:54 +0100 | <glguy> | dpratt: What answers do you get for this input? 11223 |
2024-12-10 01:04:58 +0100 | yaroot_ | (~yaroot@2400:4052:ac0:d901:1cf4:2aff:fe51:c04c) yaroot |
2024-12-10 01:05:39 +0100 | yaroot | (~yaroot@p2987138-ipngn7501souka.saitama.ocn.ne.jp) (Ping timeout: 252 seconds) |
2024-12-10 01:05:40 +0100 | yaroot_ | yaroot |
2024-12-10 01:06:29 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) (Remote host closed the connection) |
2024-12-10 01:06:37 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) |
2024-12-10 01:07:24 +0100 | <dpratt> | glguy 47 |
2024-12-10 01:07:57 +0100 | <glguy> | OK, that's right for p2, so that'd indicate you aren't relocating things to the right :) |
2024-12-10 01:09:57 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-12-10 01:10:27 +0100 | <dpratt> | glguy I should've clarified I got the right answer for p1 on the real input, p2 is the problem |
2024-12-10 01:14:45 +0100 | rstromlund | (~user@user/rstromlund) rstromlund |
2024-12-10 01:15:19 +0100 | <glguy> | There are other mistakes possible for p2, that's just a common one so I thouight I'd ask about it first |
2024-12-10 01:18:55 +0100 | _________ | (~nobody@user/noodly) (Ping timeout: 260 seconds) |
2024-12-10 01:18:55 +0100 | rstromlund | (~user@user/rstromlund) (Ping timeout: 252 seconds) |
2024-12-10 01:19:52 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) (Remote host closed the connection) |
2024-12-10 01:20:02 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) |
2024-12-10 01:21:15 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 01:23:50 +0100 | xff0x | (~xff0x@2405:6580:b080:900:23ee:dfe8:3f69:3c79) (Ping timeout: 272 seconds) |
2024-12-10 01:24:49 +0100 | <Axman6> | what's the problem for day 9? I never got into AoC but did enjoy Andres' and Edsko's solutions on youtube |
2024-12-10 01:25:31 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 01:27:01 +0100 | <glguy> | You're given a description of a little filesystem and you have to defragment |
2024-12-10 01:27:04 +0100 | <glguy> | it |
2024-12-10 01:27:17 +0100 | <c_wraith> | It's basically a direction-following exercise. Can you do this data manipulation exactly according to the rules they give? |
2024-12-10 01:27:46 +0100 | <c_wraith> | (I could not. My first attempt simplified it and resulted in better results, but wasn't the requested operation) |
2024-12-10 01:27:53 +0100 | <jackdk> | I've always liked jle` 's blog posts, where he taps the problem with the right algebraic hammer and the whole thing falls in half |
2024-12-10 01:31:35 +0100 | _________ | (~nobody@user/noodly) _________ |
2024-12-10 01:32:07 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:3da5:f38:dd5d:1da3) (Read error: Connection reset by peer) |
2024-12-10 01:32:36 +0100 | acidjnk_new | (~acidjnk@p200300d6e7283f552879c496916057ac.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2024-12-10 01:33:06 +0100 | sprotte24 | (~sprotte24@p200300d16f2d2100180c9c45abd3e2c7.dip0.t-ipconnect.de) (Read error: Connection reset by peer) |
2024-12-10 01:36:36 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 01:37:32 +0100 | JeremyB99 | (~JeremyB99@128.211.253.132) |
2024-12-10 01:40:26 +0100 | biberu\ | (~biberu@user/biberu) biberu |
2024-12-10 01:40:54 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 01:41:23 +0100 | dostoevsky | (~dostoevsk@user/dostoevsky) dostoevsky |
2024-12-10 01:42:13 +0100 | JeremyB99 | (~JeremyB99@128.211.253.132) (Ping timeout: 265 seconds) |
2024-12-10 01:43:30 +0100 | biberu | (~biberu@user/biberu) (Ping timeout: 252 seconds) |
2024-12-10 01:43:30 +0100 | biberu\ | biberu |
2024-12-10 01:44:32 +0100 | rstromlund | (~user@user/rstromlund) rstromlund |
2024-12-10 01:49:19 +0100 | rstromlund | (~user@user/rstromlund) (Ping timeout: 264 seconds) |
2024-12-10 01:50:36 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 264 seconds) |
2024-12-10 01:51:45 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) stiell |
2024-12-10 01:51:54 +0100 | raym | (~ray@user/raym) (Ping timeout: 265 seconds) |
2024-12-10 01:52:01 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 01:52:19 +0100 | raym | (~ray@user/raym) raym |
2024-12-10 01:56:31 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-12-10 02:00:40 +0100 | Flow | (~none@gentoo/developer/flow) (Ping timeout: 252 seconds) |
2024-12-10 02:01:26 +0100 | notzmv | (~umar@user/notzmv) notzmv |
2024-12-10 02:01:48 +0100 | Flow | (~none@gentoo/developer/flow) flow |
2024-12-10 02:03:18 +0100 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
2024-12-10 02:07:18 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
2024-12-10 02:07:19 +0100 | forell | (~forell@user/forell) (Ping timeout: 264 seconds) |
2024-12-10 02:07:21 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 02:07:51 +0100 | _________ | (~nobody@user/noodly) (Ping timeout: 265 seconds) |
2024-12-10 02:07:53 +0100 | bcksl | (~bcksl@user/bcksl) (Quit: \) |
2024-12-10 02:08:20 +0100 | auri | (~auri@fsf/member/auri) (Remote host closed the connection) |
2024-12-10 02:08:48 +0100 | ski | (~ski@remote11.chalmers.se) (Ping timeout: 244 seconds) |
2024-12-10 02:08:50 +0100 | forell | (~forell@user/forell) forell |
2024-12-10 02:08:56 +0100 | _________ | (~nobody@user/noodly) _________ |
2024-12-10 02:09:30 +0100 | auri | (~auri@fsf/member/auri) auri |
2024-12-10 02:10:29 +0100 | ski | (~ski@remote11.chalmers.se) |
2024-12-10 02:10:53 +0100 | bcksl | (~bcksl@user/bcksl) bcksl |
2024-12-10 02:11:54 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 02:12:09 +0100 | sroso | (~sroso@user/SrOso) SrOso |
2024-12-10 02:17:24 +0100 | gabiruh | (~gabiruh@vps19177.publiccloud.com.br) (Quit: ZNC 1.7.5 - https://znc.in) |
2024-12-10 02:17:41 +0100 | gabiruh | (~gabiruh@vps19177.publiccloud.com.br) gabiruh |
2024-12-10 02:19:16 +0100 | rstromlund | (~user@user/rstromlund) rstromlund |
2024-12-10 02:20:46 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
2024-12-10 02:21:55 +0100 | troojg | (~troojg@user/troojg) (Ping timeout: 260 seconds) |
2024-12-10 02:22:45 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 02:23:22 +0100 | tdammers | (~tdammers@82-150-212-87.ftth.glasoperator.nl) (Ping timeout: 272 seconds) |
2024-12-10 02:26:09 +0100 | prsteele | (~prsteele@pool-173-48-172-223.bstnma.fios.verizon.net) |
2024-12-10 02:27:07 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 02:28:11 +0100 | matsurago | (~matsurago@240b:10:b701:8b00:7bc3:8f18:3c0f:757f) matsurago |
2024-12-10 02:35:55 +0100 | tdammers | (~tdammers@82-150-212-87.ftth.glasoperator.nl) tdammers |
2024-12-10 02:38:08 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 02:39:08 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 245 seconds) |
2024-12-10 02:44:44 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 02:49:59 +0100 | alp | (~alp@2001:861:8ca0:4940:de88:f2d6:60c9:dbbc) (Ping timeout: 272 seconds) |
2024-12-10 02:56:12 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 02:56:50 +0100 | fmira | (~user@user/fmira) (Remote host closed the connection) |
2024-12-10 02:59:18 +0100 | fmira | (~user@user/fmira) fmira |
2024-12-10 02:59:36 +0100 | weary-traveler | (~user@user/user363627) user363627 |
2024-12-10 03:00:37 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 03:03:03 +0100 | vanishingideal | (~vanishing@user/vanishingideal) (Quit: destroyed by tinsoldier) |
2024-12-10 03:04:05 +0100 | weary-traveler | (~user@user/user363627) (Ping timeout: 244 seconds) |
2024-12-10 03:07:42 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 276 seconds) |
2024-12-10 03:11:34 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 03:13:32 +0100 | rvalue | (~rvalue@user/rvalue) (Read error: Connection reset by peer) |
2024-12-10 03:14:03 +0100 | rvalue | (~rvalue@user/rvalue) rvalue |
2024-12-10 03:15:58 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 03:25:01 +0100 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich |
2024-12-10 03:26:56 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 03:28:57 +0100 | krei-se | (~krei-se@p5085dd86.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
2024-12-10 03:29:12 +0100 | krei-se | (~krei-se@p5085d4fd.dip0.t-ipconnect.de) krei-se |
2024-12-10 03:31:06 +0100 | alp | (~alp@2001:861:8ca0:4940:6d7a:e132:36fd:d9fd) |
2024-12-10 03:31:09 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 03:31:28 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 03:31:30 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 03:35:15 +0100 | matsurago | (~matsurago@240b:10:b701:8b00:7bc3:8f18:3c0f:757f) (Quit: Leaving) |
2024-12-10 03:42:18 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 03:44:03 +0100 | OftenFaded | (~OftenFade@user/tisktisk) (Quit: Client closed) |
2024-12-10 03:45:04 +0100 | tdammers | (~tdammers@82-150-212-87.ftth.glasoperator.nl) (Ping timeout: 272 seconds) |
2024-12-10 03:45:28 +0100 | tdammers | (~tdammers@82-150-212-87.ftth.glasoperator.nl) tdammers |
2024-12-10 03:46:48 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-12-10 03:47:46 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 03:50:21 +0100 | billchenchina | (~billchenc@113.57.152.160) billchenchina |
2024-12-10 03:50:38 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 03:56:42 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 03:57:41 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 03:58:43 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 04:00:24 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 04:00:34 +0100 | billchenchina- | (~billchenc@2a0d:2580:ff0c:201:47cf:ca1:a674:8042) billchenchina |
2024-12-10 04:02:05 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 04:02:40 +0100 | r-sta | (~r-sta@sgyl-37-b2-v4wan-168528-cust2421.vm6.cable.virginm.net) |
2024-12-10 04:02:54 +0100 | billchenchina | (~billchenc@113.57.152.160) (Ping timeout: 246 seconds) |
2024-12-10 04:02:56 +0100 | <r-sta> | hi |
2024-12-10 04:02:58 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 04:03:08 +0100 | <r-sta> | i am having problems making an infinite constraint terminate |
2024-12-10 04:03:08 +0100 | <r-sta> | https://paste.tomsmeding.com/egNnQEOs |
2024-12-10 04:03:24 +0100 | <r-sta> | i cant seems to choose between two options with a type family |
2024-12-10 04:03:27 +0100 | <r-sta> | i cant tell why |
2024-12-10 04:04:21 +0100 | rstromlund | (~user@user/rstromlund) (Ping timeout: 248 seconds) |
2024-12-10 04:04:38 +0100 | <r-sta> | should it be able to match in a type family like; |
2024-12-10 04:04:39 +0100 | <r-sta> | Choice s c l c a = () |
2024-12-10 04:04:47 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 04:04:51 +0100 | <r-sta> | on the variable `c' |
2024-12-10 04:04:54 +0100 | nucleus | (~grigory@77-174-131-220.fixed.kpn.net) |
2024-12-10 04:05:19 +0100 | <r-sta> | (this is when the cursor variable c meets the end e, in s c l e a |
2024-12-10 04:05:21 +0100 | <r-sta> | ) |
2024-12-10 04:05:59 +0100 | <r-sta> | should I be using equality on Nats directly, and make the "choice" some other way? |
2024-12-10 04:06:51 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 04:08:15 +0100 | <r-sta> | chatGPT isnt much help https://chatgpt.com/share/6757b090-1b74-800b-82fa-8efe8de56a3e |
2024-12-10 04:09:04 +0100 | nucleus | (~grigory@77-174-131-220.fixed.kpn.net) (Ping timeout: 252 seconds) |
2024-12-10 04:10:02 +0100 | <geekosaur> | chatgpt is almost never helpful when it comes to Haskell |
2024-12-10 04:10:07 +0100 | <geekosaur> | just don't |
2024-12-10 04:11:19 +0100 | <probie> | I don't think GHC can do what you want here, but even if it could, it would fail. Assume c = e. That gives you `Constr c l a => (forall c'.Carrage s c' l e a -> IO [[Double]]) -> IO ()`. |
2024-12-10 04:12:21 +0100 | <r-sta> | but thats correct! |
2024-12-10 04:13:03 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 04:13:09 +0100 | <probie> | When you recursively call `movingCarrage @s @(S c) @l @e @a f` it needs to have a `(InfiniteConstraint s (S c) l e a)`, but that's _not_ in your constraint. |
2024-12-10 04:14:02 +0100 | <r-sta> | but infinite constraint includes that |
2024-12-10 04:16:27 +0100 | <probie> | No. What does `InfiniteConstraint Z Z Z Z a` reduce to? `(Constr Z Z a, ())` which is `Constr Z Z a`. How does it go from `Constr Z Z a` to `InfiniteConstraint Z (S Z) Z Z a`? |
2024-12-10 04:17:28 +0100 | <r-sta> | well it shouldnt |
2024-12-10 04:17:33 +0100 | <r-sta> | thats when the recursion terminates |
2024-12-10 04:17:50 +0100 | <r-sta> | you can use (S c) == e if you like |
2024-12-10 04:18:17 +0100 | <r-sta> | oh shoot! your right |
2024-12-10 04:18:24 +0100 | <r-sta> | movingCarrage should be in a class |
2024-12-10 04:19:31 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 04:25:20 +0100 | <r-sta> | even if you do this it still hangs, which i cant understand |
2024-12-10 04:25:21 +0100 | <r-sta> | https://paste.tomsmeding.com/CnH4XFk6 |
2024-12-10 04:25:34 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 04:25:38 +0100 | <r-sta> | probie: i mean, it should certainly be possible to do what im trying to |
2024-12-10 04:26:00 +0100 | tdammers | (~tdammers@82-150-212-87.ftth.glasoperator.nl) (Ping timeout: 246 seconds) |
2024-12-10 04:26:06 +0100 | <r-sta> | it should just terminate in its creating the infiniteConstraint |
2024-12-10 04:26:22 +0100 | <r-sta> | im not even calling it with any values though (eg, so i cant guarantee c < e) |
2024-12-10 04:26:31 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 04:26:33 +0100 | <r-sta> | so i dont get why it tries to solve anything |
2024-12-10 04:26:41 +0100 | <r-sta> | it clearly tries to solve something it cant |
2024-12-10 04:26:45 +0100 | <r-sta> | since it hangs |
2024-12-10 04:28:53 +0100 | emmanuelux_ | (~emmanuelu@user/emmanuelux) emmanuelux |
2024-12-10 04:28:54 +0100 | <r-sta> | here is the full code so you can reproduce the error |
2024-12-10 04:28:55 +0100 | <r-sta> | https://github.com/munston/store/tree/main/store/store%20v3 |
2024-12-10 04:30:04 +0100 | <r-sta> | can anyone figure out how to implement the working solution? |
2024-12-10 04:31:06 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 04:31:24 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) (Ping timeout: 244 seconds) |
2024-12-10 04:35:45 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-12-10 04:35:52 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 04:36:35 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 04:41:39 +0100 | <r-sta> | do you think the forall is making the infinite case? |
2024-12-10 04:41:48 +0100 | <r-sta> | the quantified constraint in the function? |
2024-12-10 04:42:07 +0100 | <r-sta> | i cant see why else it would enter into an evaluation with *any* (arbitrary?) choice |
2024-12-10 04:42:11 +0100 | <probie> | What is "the working solution"? Just something which typechecks, or does it need to use specific things? |
2024-12-10 04:42:21 +0100 | terrorjack4 | (~terrorjac@2a01:4f8:c17:dc9f::) (Quit: The Lounge - https://thelounge.chat) |
2024-12-10 04:42:38 +0100 | <r-sta> | it should basically recurse along the sequence updating the cursor, until it reaches the end |
2024-12-10 04:42:39 +0100 | <r-sta> | er... |
2024-12-10 04:42:42 +0100 | <r-sta> | thats not right sorry |
2024-12-10 04:43:04 +0100 | homo | (~homo@user/homo) (Quit: homo) |
2024-12-10 04:43:16 +0100 | homo | (~homo@user/homo) homo |
2024-12-10 04:43:17 +0100 | <r-sta> | it should fill the container, from c to c+l |
2024-12-10 04:43:30 +0100 | <r-sta> | as long as s <= c < e |
2024-12-10 04:43:43 +0100 | <r-sta> | and it should recurse to do so |
2024-12-10 04:43:55 +0100 | <r-sta> | from c ~ s, to (S c) ~ e |
2024-12-10 04:43:58 +0100 | terrorjack4 | (~terrorjac@2a01:4f8:c17:dc9f::) terrorjack |
2024-12-10 04:44:12 +0100 | <r-sta> | it should not be trying to solve a constraint for c >= e |
2024-12-10 04:44:20 +0100 | <r-sta> | since there should be no recursive call |
2024-12-10 04:46:29 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 04:47:44 +0100 | <r-sta> | its a cool problem, but im totally defeated by it |
2024-12-10 04:51:32 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 04:51:33 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 04:51:42 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-12-10 04:53:28 +0100 | sonolin | (~michael@user/sonolin) (Ping timeout: 272 seconds) |
2024-12-10 04:53:39 +0100 | <r-sta> | can anyone explain where it conjours the Nats from |
2024-12-10 04:53:54 +0100 | <r-sta> | if it enters an infinite loop, what choice of numbers is it using and why!? |
2024-12-10 04:54:53 +0100 | <r-sta> | i get the feeling it cant prove the lessthan constrain, so it then goes on to try to prove the recurive constraints instead |
2024-12-10 04:54:59 +0100 | <r-sta> | where it should actually guard against this |
2024-12-10 04:55:05 +0100 | <r-sta> | thats why i was using a type family |
2024-12-10 04:55:11 +0100 | <r-sta> | so they would be evaluated in order |
2024-12-10 04:56:18 +0100 | <probie> | Untested and probably containing typos, but maybe something like https://paste.tomsmeding.com/GxWHwaLiwill lead you down the right path |
2024-12-10 04:57:05 +0100 | sonolin | (~michael@user/sonolin) sonolin |
2024-12-10 04:57:28 +0100 | td_ | (~td@i5387091A.versanet.de) (Ping timeout: 252 seconds) |
2024-12-10 04:57:57 +0100 | <r-sta> | this version compiles! |
2024-12-10 04:57:58 +0100 | <r-sta> | https://pastebin.com/raw/S4UAW8AW |
2024-12-10 04:58:09 +0100 | <r-sta> | probie: dead link |
2024-12-10 04:58:50 +0100 | <r-sta> | maybe the solver was being confused somehow... idk why the previous versions didnt work |
2024-12-10 04:58:55 +0100 | <r-sta> | maybe GHC is cursed! |
2024-12-10 04:59:23 +0100 | td_ | (~td@i5387090D.versanet.de) td_ |
2024-12-10 05:00:42 +0100 | <r-sta> | (alert the args in recurse are the wrong way round! but it still works tother way round also!) |
2024-12-10 05:00:56 +0100 | <r-sta> | what a fiasco! |
2024-12-10 05:01:09 +0100 | <r-sta> | now i just have to write an example to prove it terminates |
2024-12-10 05:01:12 +0100 | r-sta | (~r-sta@sgyl-37-b2-v4wan-168528-cust2421.vm6.cable.virginm.net) (Quit: Client closed) |
2024-12-10 05:01:52 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 05:02:08 +0100 | <probie> | r-sta: insert a space before the world "will" (https://paste.tomsmeding.com/GxWHwaLi) |
2024-12-10 05:06:13 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-12-10 05:06:51 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 05:07:05 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 05:09:48 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 05:11:11 +0100 | sonolin | (~michael@user/sonolin) (Ping timeout: 244 seconds) |
2024-12-10 05:14:09 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-12-10 05:15:39 +0100 | dostoevsky | (~dostoevsk@user/dostoevsky) (Quit: dostoevsky) |
2024-12-10 05:22:27 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 05:24:14 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 05:25:05 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 05:29:22 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 05:40:25 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 05:43:16 +0100 | Guest14 | (~Guest14@h96-61-125-220.mdtnwi.broadband.dynamic.tds.net) |
2024-12-10 05:45:09 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-12-10 05:45:28 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 05:45:54 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 05:55:50 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 06:03:05 +0100 | OftenFaded | (OftenFaded@user/tisktisk) OftenFaded |
2024-12-10 06:03:08 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds) |
2024-12-10 06:04:54 +0100 | tdammers | (~tdammers@82-150-212-87.ftth.glasoperator.nl) tdammers |
2024-12-10 06:08:23 +0100 | billchenchina- | (~billchenc@2a0d:2580:ff0c:201:47cf:ca1:a674:8042) (Read error: Connection reset by peer) |
2024-12-10 06:08:34 +0100 | billchenchina | (~billchenc@2a0d:2580:ff0c:201:47cf:ca1:a674:8042) billchenchina |
2024-12-10 06:08:55 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod |
2024-12-10 06:08:56 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
2024-12-10 06:10:22 +0100 | sonolin | (~michael@user/sonolin) sonolin |
2024-12-10 06:11:38 +0100 | tdammers | (~tdammers@82-150-212-87.ftth.glasoperator.nl) (Ping timeout: 244 seconds) |
2024-12-10 06:13:53 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 06:15:26 +0100 | billchenchina | (~billchenc@2a0d:2580:ff0c:201:47cf:ca1:a674:8042) (Read error: Connection reset by peer) |
2024-12-10 06:15:34 +0100 | billchenchina- | (~billchenc@2a0d:2580:ff0c:201:47cf:ca1:a674:8042) billchenchina |
2024-12-10 06:17:50 +0100 | fmira | (~user@user/fmira) (Quit: fmira) |
2024-12-10 06:18:14 +0100 | mari-estel | (~mari-este@user/mari-estel) mari-estel |
2024-12-10 06:18:21 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 06:19:29 +0100 | billchenchina- | (~billchenc@2a0d:2580:ff0c:201:47cf:ca1:a674:8042) (Read error: Connection reset by peer) |
2024-12-10 06:19:42 +0100 | billchenchina | (~billchenc@2a0d:2580:ff0c:201:47cf:ca1:a674:8042) billchenchina |
2024-12-10 06:23:33 +0100 | billchenchina- | (~billchenc@113.57.152.160) billchenchina |
2024-12-10 06:26:20 +0100 | billchenchina | (~billchenc@2a0d:2580:ff0c:201:47cf:ca1:a674:8042) (Ping timeout: 260 seconds) |
2024-12-10 06:27:13 +0100 | Digit | (~user@user/digit) Digit |
2024-12-10 06:29:14 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 06:29:38 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 06:31:32 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 06:32:06 +0100 | prsteele | (~prsteele@pool-173-48-172-223.bstnma.fios.verizon.net) (Quit: Client closed) |
2024-12-10 06:33:13 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 06:33:51 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 06:37:33 +0100 | housemate | (~housemate@2405:6e00:243c:c71e:c9eb:cfe5:9dd3:39cd) housemate |
2024-12-10 06:38:36 +0100 | housemate | (~housemate@2405:6e00:243c:c71e:c9eb:cfe5:9dd3:39cd) (Max SendQ exceeded) |
2024-12-10 06:42:09 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Remote host closed the connection) |
2024-12-10 06:42:17 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 06:44:38 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 06:47:17 +0100 | <iqubic> | I love that you can do pattern matching in a list comprehension. "onlyJusts xs = [x | Just x <- xs]" |
2024-12-10 06:47:36 +0100 | <iqubic> | "onlyJusts :: [Maybe a] -> [a] |
2024-12-10 06:48:50 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 06:49:18 +0100 | budabudabee | (~budabudab@136.38.236.196) |
2024-12-10 06:49:57 +0100 | budabudabee | (~budabudab@136.38.236.196) (Client Quit) |
2024-12-10 06:51:17 +0100 | <probie> | Also works with do notation if the monad in question implements MonadFail |
2024-12-10 06:52:00 +0100 | sonolin | (~michael@user/sonolin) (Quit: WeeChat 4.4.4) |
2024-12-10 06:52:02 +0100 | <probie> | > (\xs->do{Just x<-xs;[x]}) [if even x && x > 5 then Just x else Nothing | x <- [1..10]] |
2024-12-10 06:52:04 +0100 | <lambdabot> | [6,8,10] |
2024-12-10 06:54:14 +0100 | <probie> | > map (\y->do{Right x<- pure y; Just x}) [Left 1, Right 2] |
2024-12-10 06:54:16 +0100 | <lambdabot> | [Nothing,Just 2] |
2024-12-10 07:00:01 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 07:02:06 +0100 | <iqubic> | Yeah, I thought that might be the case. |
2024-12-10 07:03:06 +0100 | <iqubic> | Something I noticed a few days ago is that every list comprehension can be rewritten as a do block with the usage of guard. |
2024-12-10 07:03:09 +0100 | <iqubic> | :t guard |
2024-12-10 07:03:11 +0100 | <lambdabot> | Alternative f => Bool -> f () |
2024-12-10 07:03:40 +0100 | <iqubic> | I guess that's why the MonadicComprehensions Language extension exists. |
2024-12-10 07:04:12 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Remote host closed the connection) |
2024-12-10 07:04:20 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 07:04:37 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-12-10 07:06:54 +0100 | <monochrom> | No, MonadComprehension is the other way round. You can use [foo | pat <- bar] for any monad, i.e., bar can be Maybe a, State s a, IO a, ... |
2024-12-10 07:08:42 +0100 | <monochrom> | Whereas using do-notation for [] has been around since [] was made a Monad instance. |
2024-12-10 07:08:48 +0100 | falafel | (~falafel@2603:8000:b4f0:62a0:ce8c:8339:2f19:ada5) falafel |
2024-12-10 07:09:56 +0100 | <probie> | List comprehensions in Haskell predate monads in Haskell. I think if they hadn't existed prior, we probably wouldn't have had them, and would have just used do notation |
2024-12-10 07:10:24 +0100 | zenmov | (~zenmov@user/zenmov) (Ping timeout: 245 seconds) |
2024-12-10 07:10:42 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 07:12:30 +0100 | zenmov | (~zenmov@user/zenmov) zenmov |
2024-12-10 07:13:03 +0100 | michalz | (~michalz@185.246.207.217) |
2024-12-10 07:15:16 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 07:16:25 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) (Read error: Connection reset by peer) |
2024-12-10 07:17:22 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2024-12-10 07:23:25 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) MyNetAz |
2024-12-10 07:26:04 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 07:26:43 +0100 | mari-estel | (~mari-este@user/mari-estel) (Quit: break) |
2024-12-10 07:30:24 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-12-10 07:31:10 +0100 | Guest14 | (~Guest14@h96-61-125-220.mdtnwi.broadband.dynamic.tds.net) (Ping timeout: 240 seconds) |
2024-12-10 07:32:59 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) (Read error: Connection reset by peer) |
2024-12-10 07:37:02 +0100 | nucleus | (~grigory@77-174-131-220.fixed.kpn.net) |
2024-12-10 07:38:01 +0100 | housemate | (~housemate@ppp203-122-213-191.static.internode.on.net) housemate |
2024-12-10 07:38:46 +0100 | housemate | (~housemate@ppp203-122-213-191.static.internode.on.net) (Max SendQ exceeded) |
2024-12-10 07:39:40 +0100 | housemate | (~housemate@ppp203-122-213-191.static.internode.on.net) housemate |
2024-12-10 07:41:27 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 07:46:11 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 07:46:31 +0100 | matsurago | (~matsurago@240b:10:b701:8b00:7bc3:8f18:3c0f:757f) |
2024-12-10 07:47:46 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Remote host closed the connection) |
2024-12-10 07:47:54 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 07:51:00 +0100 | housemate | (~housemate@ppp203-122-213-191.static.internode.on.net) (Quit: Nothing to see here. I wasn't there. I take IRC seriously. https://files.catbox.moe/4e9k81.pdf) |
2024-12-10 07:51:58 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod |
2024-12-10 07:54:42 +0100 | acidjnk_new | (~acidjnk@p200300d6e7283f80158cd9c34330b2d1.dip0.t-ipconnect.de) acidjnk |
2024-12-10 07:55:23 +0100 | matsurago | (~matsurago@240b:10:b701:8b00:7bc3:8f18:3c0f:757f) (Quit: Leaving) |
2024-12-10 07:57:01 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 08:00:17 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Remote host closed the connection) |
2024-12-10 08:00:26 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 08:02:00 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-12-10 08:03:07 +0100 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) jespada |
2024-12-10 08:05:27 +0100 | leif | (~leif@210.54.33.112) (Ping timeout: 246 seconds) |
2024-12-10 08:11:43 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 08:15:13 +0100 | michalz | (~michalz@185.246.207.217) (Ping timeout: 252 seconds) |
2024-12-10 08:16:05 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-12-10 08:18:55 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 08:22:54 +0100 | michalz | (~michalz@185.246.207.200) |
2024-12-10 08:23:01 +0100 | Square | (~Square@user/square) Square |
2024-12-10 08:26:12 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 08:27:00 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 08:27:05 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 08:28:57 +0100 | nucleus | (~grigory@77-174-131-220.fixed.kpn.net) (Quit: Lost terminal) |
2024-12-10 08:29:02 +0100 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds) |
2024-12-10 08:30:57 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-12-10 08:31:27 +0100 | bliminse | (~bliminse@user/bliminse) (Quit: leaving) |
2024-12-10 08:32:02 +0100 | Square2 | (~Square4@user/square) Square |
2024-12-10 08:32:23 +0100 | fun-safe-math | (~fun-safe-@24.21.106.247) (Ping timeout: 244 seconds) |
2024-12-10 08:33:59 +0100 | bliminse | (~bliminse@user/bliminse) bliminse |
2024-12-10 08:34:14 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 08:35:01 +0100 | Square | (~Square@user/square) (Ping timeout: 252 seconds) |
2024-12-10 08:36:06 +0100 | housemate | (~housemate@120.20.144.118) housemate |
2024-12-10 08:37:37 +0100 | housemate | (~housemate@120.20.144.118) (Read error: Connection reset by peer) |
2024-12-10 08:40:37 +0100 | housemate | (~housemate@2405:6e00:2430:ae5b:c6c6:748c:9662:796d) housemate |
2024-12-10 08:41:50 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 08:42:00 +0100 | <kqr> | I was under the assumption that attoparsec could consume streaming input and that this would allow it to have a nearly constant memory footprint even for large inputs. The haddocks say, near the top, "Incremental input [...] gives much more control to users of the library over matters such as resource usage". This is then corroborated with the later point "The usual use for lazy bytestrings would |
2024-12-10 08:42:03 +0100 | <kqr> | be to allow consumption of very large input without a large footprint. For this need, attoparsec's incremental input provides an excellent substitute, with much more control over when input takes place." However, under the Incremental input heading, it goes on to say "incremental input does not imply that attoparsec will release portions of its internal state for garbage collection as it proceeds. |
2024-12-10 08:42:05 +0100 | <kqr> | Its internal representation is equivalent to a single ByteString: if you feed incremental input to a parser, it will require memory proportional to the amount of input you supply." |
2024-12-10 08:42:08 +0100 | <kqr> | I'm very confused by this. Does it not contradict itself? |
2024-12-10 08:42:53 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 08:44:58 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 245 seconds) |
2024-12-10 08:45:24 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 08:47:55 +0100 | mari-estel | (~mari-este@user/mari-estel) mari-estel |
2024-12-10 08:47:59 +0100 | <probie> | The amount of memory retained depends on your parser. It needs to retain enough previous input so that it can backtrack, so where and how the parser backtracks is important here. As long as backtracking can't occur, previous inputs can be GC-ed |
2024-12-10 08:48:11 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 244 seconds) |
2024-12-10 08:51:49 +0100 | briandaed | (~root@user/briandaed) briandaed |
2024-12-10 08:52:51 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-12-10 08:54:35 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2024-12-10 09:00:00 +0100 | caconym | (~caconym@user/caconym) (Quit: bye) |
2024-12-10 09:00:37 +0100 | caconym | (~caconym@user/caconym) caconym |
2024-12-10 09:03:27 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 09:05:54 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 09:08:19 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-12-10 09:08:21 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 09:09:19 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2024-12-10 09:10:49 +0100 | falafel | (~falafel@2603:8000:b4f0:62a0:ce8c:8339:2f19:ada5) (Ping timeout: 252 seconds) |
2024-12-10 09:11:42 +0100 | notzmv | (~umar@user/notzmv) (Ping timeout: 276 seconds) |
2024-12-10 09:12:44 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 09:17:07 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 09:17:29 +0100 | leungbk | (~user@2603:8000:1201:2dd2:43af:9155:ebaf:770c) leungbk |
2024-12-10 09:19:54 +0100 | housemate | (~housemate@2405:6e00:2430:ae5b:c6c6:748c:9662:796d) (Read error: Connection reset by peer) |
2024-12-10 09:24:39 +0100 | <kqr> | Aha, I see. That makes more sense! Thanks |
2024-12-10 09:35:46 +0100 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
2024-12-10 09:48:15 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) sord937 |
2024-12-10 09:50:01 +0100 | CiaoSen | (~Jura@2a05:5800:2e1:d800:ca4b:d6ff:fec1:99da) CiaoSen |
2024-12-10 09:52:39 +0100 | ft | (~ft@p508db9c7.dip0.t-ipconnect.de) (Quit: leaving) |
2024-12-10 10:01:51 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-12-10 10:04:08 +0100 | gorignak | (~gorignak@user/gorignak) (Ping timeout: 244 seconds) |
2024-12-10 10:05:54 +0100 | yangby | (~secret@115.196.174.150) (Ping timeout: 240 seconds) |
2024-12-10 10:07:44 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-12-10 10:13:44 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 10:15:35 +0100 | drdo3 | (~drdo@bl9-110-63.dsl.telepac.pt) drdo |
2024-12-10 10:15:39 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 10:16:12 +0100 | drdo | (~drdo@bl9-110-63.dsl.telepac.pt) (Ping timeout: 252 seconds) |
2024-12-10 10:16:13 +0100 | drdo3 | drdo |
2024-12-10 10:16:13 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 10:16:31 +0100 | gorignak | (~gorignak@user/gorignak) gorignak |
2024-12-10 10:17:12 +0100 | bwern | (~bwern@2405:201:5c16:894:a059:4458:a01:2a23) |
2024-12-10 10:19:53 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 265 seconds) |
2024-12-10 10:21:18 +0100 | lxsameer | (~lxsameer@Serene/lxsameer) lxsameer |
2024-12-10 10:25:58 +0100 | alp | (~alp@2001:861:8ca0:4940:6d7a:e132:36fd:d9fd) (Changing host) |
2024-12-10 10:25:58 +0100 | alp | (~alp@user/alp) alp |
2024-12-10 10:26:50 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) |
2024-12-10 10:29:21 +0100 | pabs3 | (~pabs3@user/pabs3) (Ping timeout: 248 seconds) |
2024-12-10 10:34:23 +0100 | homo | (~homo@user/homo) (Read error: Connection reset by peer) |
2024-12-10 10:36:03 +0100 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
2024-12-10 10:38:14 +0100 | JamesMowery439 | (~JamesMowe@ip68-228-212-232.ph.ph.cox.net) (Ping timeout: 244 seconds) |
2024-12-10 10:42:35 +0100 | pabs3 | (~pabs3@user/pabs3) pabs3 |
2024-12-10 10:45:59 +0100 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 265 seconds) |
2024-12-10 10:46:33 +0100 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
2024-12-10 10:51:35 +0100 | mange | (~user@user/mange) (Quit: Zzz...) |
2024-12-10 10:52:21 +0100 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 248 seconds) |
2024-12-10 10:52:52 +0100 | <kqr> | Can I force attoparsec to not backtrack past a certain point? There are certain points in my input data where I know if it has successfully parsed up until then, it should never go back behind it again. |
2024-12-10 10:57:35 +0100 | tomsmeding | . o O ( Prolog's `cut` ) |
2024-12-10 10:57:37 +0100 | housemate | (~housemate@2405:6e00:243d:47f:54d8:971f:e178:87e9) housemate |
2024-12-10 10:59:05 +0100 | <tomsmeding> | kqr: with a bit of finicking I think you can manually write a value of type Parser that does the thing, by mapping Failure to Fail |
2024-12-10 11:00:20 +0100 | <kqr> | Hm. That sounds like an idea. Although I realised in this case I can get around the problem by successfully parsing a sentinel value |
2024-12-10 11:00:36 +0100 | <kqr> | (instead of the failure that caused it to backtrack in the first place) |
2024-12-10 11:01:18 +0100 | <tomsmeding> | kqr: look at the definition of `plus` here, which is the (<|>) on Parser https://hackage.haskell.org/package/attoparsec-0.14.4/docs/src/Data.Attoparsec.Internal.Types.html… |
2024-12-10 11:01:30 +0100 | <tomsmeding> | instead of passing lose', pass something that returns Fail immediately |
2024-12-10 11:05:46 +0100 | <kqr> | Hm, but that constructor is not exported for public use, is it? |
2024-12-10 11:06:16 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-12-10 11:07:40 +0100 | <tomsmeding> | "public" |
2024-12-10 11:07:42 +0100 | <tomsmeding> | it isn't |
2024-12-10 11:07:54 +0100 | <tomsmeding> | write `cut` and send a PR :p |
2024-12-10 11:08:02 +0100 | <tomsmeding> | _make_ it public |
2024-12-10 11:10:58 +0100 | Smiles | (uid551636@id-551636.lymington.irccloud.com) Smiles |
2024-12-10 11:14:45 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 11:18:22 +0100 | <kqr> | I'm thinking maybe I'm wanting the wrong thing, though. I was trying to work around a bad parser by not backtracking, but maybe the solution is to write a better parser! If nobody else has needed a Prolog cut in attoparsec then maybe it's just not needed... |
2024-12-10 11:19:31 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
2024-12-10 11:23:41 +0100 | notzmv | (~umar@user/notzmv) notzmv |
2024-12-10 11:24:58 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
2024-12-10 11:25:00 +0100 | bwern | (~bwern@2405:201:5c16:894:a059:4458:a01:2a23) (Ping timeout: 260 seconds) |
2024-12-10 11:30:41 +0100 | billchenchina- | (~billchenc@113.57.152.160) (Quit: Leaving) |
2024-12-10 11:39:28 +0100 | ash3en | (~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) ash3en |
2024-12-10 11:41:34 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds) |
2024-12-10 11:43:57 +0100 | <probie> | The problem is that `cut` breaks the `Alternative` laws, which are certainly assumed for parsers |
2024-12-10 11:52:40 +0100 | econo_ | (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
2024-12-10 11:55:52 +0100 | xff0x | (~xff0x@2405:6580:b080:900:1d57:63dc:1fef:3969) |
2024-12-10 11:59:32 +0100 | __monty__ | (~toonn@user/toonn) toonn |
2024-12-10 12:01:30 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.4.2) |
2024-12-10 12:02:08 +0100 | <dminuoso> | kqr: You might be interested in flatparse, by the way. |
2024-12-10 12:02:31 +0100 | <dminuoso> | https://hackage.haskell.org/package/flatparse-0.5.1.1/docs/FlatParse-Basic.html#v:cut |
2024-12-10 12:03:34 +0100 | <kqr> | probie, Right, yeah, that makes sense. |
2024-12-10 12:03:49 +0100 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 248 seconds) |
2024-12-10 12:05:29 +0100 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
2024-12-10 12:06:50 +0100 | housemate | (~housemate@2405:6e00:243d:47f:54d8:971f:e178:87e9) (Read error: Connection reset by peer) |
2024-12-10 12:06:50 +0100 | <kqr> | dminuoso, that certainly looks interesting. The reason I noticed the backtracking in the first place was that I was wrapping an attoparsec in a StateT, but embedding ST in the parser the way flatparse does it seems like the better way to go about it |
2024-12-10 12:12:02 +0100 | Guest58 | (~Guest58@46.240.130.155) |
2024-12-10 12:15:45 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 12:16:09 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 12:16:17 +0100 | SlackCoder | (~SlackCode@64-94-63-8.ip.weststar.net.ky) SlackCoder |
2024-12-10 12:18:55 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 12:20:59 +0100 | housemate | (~housemate@2405:6e00:243d:47f:73c8:515d:b485:4db3) housemate |
2024-12-10 12:22:36 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 244 seconds) |
2024-12-10 12:24:11 +0100 | billchenchina | (~billchenc@2a0d:2580:ff0c:1:e3c9:c52b:a429:5bfe) billchenchina |
2024-12-10 12:27:02 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 12:29:23 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 12:29:45 +0100 | sroso | (~sroso@user/SrOso) (Quit: Leaving :)) |
2024-12-10 12:38:05 +0100 | ubert | (~Thunderbi@2a02:8109:ab8a:5a00:4809:246d:953b:928) ubert |
2024-12-10 12:41:03 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 12:41:03 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 12:43:00 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 12:44:37 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 12:45:28 +0100 | housemate | (~housemate@2405:6e00:243d:47f:73c8:515d:b485:4db3) (Quit: Nothing to see here. I wasn't there. I take IRC seriously. https://files.catbox.moe/4e9k81.pdf) |
2024-12-10 12:46:02 +0100 | <briandaed> | is there a command to ask bot for list of recommended books? |
2024-12-10 12:46:57 +0100 | <mauke> | @where books |
2024-12-10 12:46:57 +0100 | <lambdabot> | https://www.extrema.is/articles/haskell-books is the best list of Haskell books. See also: LYAH, HTAC, RWH, PH, YAHT, SOE, HR, PIH, TFwH, wikibook, PCPH, HPFFP, FSAF, HftVB, TwT, FoP, PFAD, WYAH, |
2024-12-10 12:46:57 +0100 | <lambdabot> | non-haskell-books |
2024-12-10 12:47:01 +0100 | <mauke> | @where book |
2024-12-10 12:47:01 +0100 | <lambdabot> | http://haskellbook.com/ |
2024-12-10 12:47:03 +0100 | <mauke> | hmm |
2024-12-10 12:47:34 +0100 | <mauke> | @where pcph |
2024-12-10 12:47:34 +0100 | <lambdabot> | "Parallel and Concurrent Programming in Haskell" by Simon Marlow in 2013 at <http://community.haskell.org/~simonmar/pcph/>,<http://chimera.labs.oreilly.com/books/1230000000929/>,<https://web.archive. |
2024-12-10 12:47:34 +0100 | <lambdabot> | org/web/20180117194842/http://chimera.labs.oreilly.com/books/1230000000929>,<https://www.oreilly.com/library/view/parallel-and-concurrent/9781449335939/> |
2024-12-10 12:47:43 +0100 | <briandaed> | mauke: thank you |
2024-12-10 12:51:13 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 12:59:10 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 12:59:33 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 13:00:08 +0100 | caconym | (~caconym@user/caconym) (Quit: bye) |
2024-12-10 13:00:35 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 13:01:01 +0100 | mari-estel | (~mari-este@user/mari-estel) () |
2024-12-10 13:01:31 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2024-12-10 13:01:32 +0100 | caconym | (~caconym@user/caconym) caconym |
2024-12-10 13:04:18 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 13:06:49 +0100 | housemate | (~housemate@2405:6e00:243d:47f:23f5:b14e:1d2c:dddb) housemate |
2024-12-10 13:06:58 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 13:08:12 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 13:17:24 +0100 | CiaoSen | (~Jura@2a05:5800:2e1:d800:ca4b:d6ff:fec1:99da) (Ping timeout: 276 seconds) |
2024-12-10 13:19:08 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 13:21:50 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 13:26:40 +0100 | Guest58 | (~Guest58@46.240.130.155) (Ping timeout: 240 seconds) |
2024-12-10 13:31:17 +0100 | housemate | (~housemate@2405:6e00:243d:47f:23f5:b14e:1d2c:dddb) (Read error: Connection reset by peer) |
2024-12-10 13:35:58 +0100 | SlackCoder | (~SlackCode@64-94-63-8.ip.weststar.net.ky) (Ping timeout: 244 seconds) |
2024-12-10 13:36:26 +0100 | ubert1 | (~Thunderbi@2a02:8109:ab8a:5a00:e6b3:18ff:fe83:8f33) ubert |
2024-12-10 13:40:57 +0100 | ubert | (~Thunderbi@2a02:8109:ab8a:5a00:4809:246d:953b:928) (Ping timeout: 265 seconds) |
2024-12-10 13:40:57 +0100 | ubert1 | ubert |
2024-12-10 13:42:08 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 13:44:20 +0100 | notzmv | (~umar@user/notzmv) (Ping timeout: 265 seconds) |
2024-12-10 13:44:47 +0100 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Quit: My Mac has gone to sleep. ZZZzzz…) |
2024-12-10 13:45:42 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 13:49:22 +0100 | <lxsameer> | hey folks, I was wondering how does haskell laziness works. Is it a compile time thing or runtime? for instance, if we have a list of functions A and a function f which randomly picks the first n functions of list A and apply them to a value. what will ghc do with the list, how does laziness work here? |
2024-12-10 13:52:09 +0100 | <int-e> | There are heap representations for unevaluated values, so-called thunks; after a thunk is evaluated, the heap object is replaced by the value (possibly via an indirection) |
2024-12-10 13:52:13 +0100 | <int-e> | so it's mostly a runtime thing |
2024-12-10 13:55:12 +0100 | <lxsameer> | int-e: so ghc includes some logic to compile the code in runtime? or it compiles thunks on compile time and just eval them on runtime? |
2024-12-10 13:55:40 +0100 | SlackCoder | (~SlackCode@208.26.70.132) SlackCoder |
2024-12-10 13:58:33 +0100 | SlackCoder | (~SlackCode@208.26.70.132) (Client Quit) |
2024-12-10 13:58:39 +0100 | <int-e> | There's no runtime code generation. But a thunk (which is a heap object, so data) contains a pointer to code that evaluates it. |
2024-12-10 13:58:44 +0100 | CiaoSen | (~Jura@2a05:5800:2e1:d800:ca4b:d6ff:fec1:99da) CiaoSen |
2024-12-10 13:59:36 +0100 | <kuribas> | lxsameer: It's both. ghc can do optimizations which preserve lazy semantics. It can also infer that a function is really strict, so generate strict code. |
2024-12-10 13:59:37 +0100 | <lxsameer> | int-e: so every function in list A will be compiled in compiletime to a thunk |
2024-12-10 14:00:28 +0100 | <lxsameer> | kuribas: so it actually looks at the function body and compiles it everthough it might not get evaluate at all at runtime |
2024-12-10 14:00:30 +0100 | <lxsameer> | correct? |
2024-12-10 14:00:32 +0100 | <mauke> | not sure what that means |
2024-12-10 14:00:45 +0100 | gorignak | (~gorignak@user/gorignak) (Ping timeout: 260 seconds) |
2024-12-10 14:01:45 +0100 | <lxsameer> | talking about the list A again, GHC will compile all the functions in list A and optimize them even without the knowledge whether they will be evaluated at runtime or not |
2024-12-10 14:01:49 +0100 | mari-estel | (~mari-este@user/mari-estel) mari-estel |
2024-12-10 14:02:03 +0100 | <lxsameer> | did I get it correctly? |
2024-12-10 14:02:33 +0100 | <kuribas> | lxsameer: yes, it's the code the thunk refers to. |
2024-12-10 14:03:25 +0100 | <kuribas> | lxsameer: A think is a pointer to a code address, and a data address with the closure over that function. |
2024-12-10 14:03:52 +0100 | <lxsameer> | cool, I was reading about the problems of Fexprs and I was wondering how does ghc handles a lazy code that it does not know much about whether it gets evaluated or not |
2024-12-10 14:04:33 +0100 | <lxsameer> | kuribas: I'm familiar with thunks, my main issue is with how does ghc knows what to compile and what to ignore |
2024-12-10 14:04:36 +0100 | <geekosaur> | lxsameer: ghc generates a graph of thunks/code to be evaluated, and uses a graph reduction engine at runtime to reduce the graph as parts are needed |
2024-12-10 14:05:08 +0100 | <geekosaur> | https://en.wikipedia.org/wiki/Graph_reduction |
2024-12-10 14:05:10 +0100 | <lxsameer> | geekosaur: interesting, is it based on a paper or something? |
2024-12-10 14:05:49 +0100 | <lxsameer> | cool, thanks folks |
2024-12-10 14:05:59 +0100 | <geekosaur> | https://dl.acm.org/doi/pdf/10.1145/99370.99385 |
2024-12-10 14:06:10 +0100 | <mauke> | @where stg |
2024-12-10 14:06:10 +0100 | <lambdabot> | http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.53.3729 |
2024-12-10 14:06:13 +0100 | <lxsameer> | perfect, thank you |
2024-12-10 14:06:18 +0100 | <geekosaur> | note: this paper is not so much about the theory as it is an implementation |
2024-12-10 14:06:28 +0100 | <geekosaur> | the wikipedia page will be better for the fundamentals |
2024-12-10 14:06:39 +0100 | <lxsameer> | cheers. will read both |
2024-12-10 14:07:25 +0100 | <mauke> | is that citeseer page broken for anyone else? |
2024-12-10 14:07:40 +0100 | <lxsameer> | it's broken for me too |
2024-12-10 14:07:55 +0100 | <geekosaur> | also here |
2024-12-10 14:08:20 +0100 | <geekosaur> | the ACM one works |
2024-12-10 14:08:44 +0100 | SlackCoder | (~SlackCode@208.26.70.132) SlackCoder |
2024-12-10 14:09:00 +0100 | <mauke> | @where+ stg https://dl.acm.org/doi/pdf/10.1145/99370.99385 |
2024-12-10 14:09:00 +0100 | <lambdabot> | Done. |
2024-12-10 14:09:35 +0100 | <lxsameer> | thank you folks |
2024-12-10 14:10:01 +0100 | <kuribas> | lxsameer: if it inlines code, it can remove code which doesn't get called. |
2024-12-10 14:10:40 +0100 | <kuribas> | lxsameer: for example "head [1..]", it can inline the definition of [1..] into head, to rewrite it to 1. |
2024-12-10 14:12:44 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) (Read error: Connection reset by peer) |
2024-12-10 14:14:57 +0100 | Digitteknohippie | (~user@user/digit) Digit |
2024-12-10 14:15:45 +0100 | leungbk | (~user@2603:8000:1201:2dd2:43af:9155:ebaf:770c) (Ping timeout: 246 seconds) |
2024-12-10 14:16:16 +0100 | Digit | (~user@user/digit) (Ping timeout: 244 seconds) |
2024-12-10 14:17:26 +0100 | <kuribas> | lxsameer: but for a not inlined function, it has to include the whole definition, because it only knows at runtime what to call. |
2024-12-10 14:19:08 +0100 | sindu | (~sindu@176.75.224.1) |
2024-12-10 14:19:45 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) MyNetAz |
2024-12-10 14:23:32 +0100 | dostoevsky | (~dostoevsk@user/dostoevsky) dostoevsky |
2024-12-10 14:23:37 +0100 | dostoevsky | (~dostoevsk@user/dostoevsky) (Max SendQ exceeded) |
2024-12-10 14:25:23 +0100 | <lxsameer> | kuribas: cheers |
2024-12-10 14:27:02 +0100 | dostoevsky | (~dostoevsk@user/dostoevsky) dostoevsky |
2024-12-10 14:27:16 +0100 | Guest58 | (~Guest58@46.240.130.155) |
2024-12-10 14:27:38 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 244 seconds) |
2024-12-10 14:30:58 +0100 | leungbk | (~user@syn-104-032-221-175.res.spectrum.com) leungbk |
2024-12-10 14:33:42 +0100 | Digitteknohippie | Digit |
2024-12-10 14:34:02 +0100 | ash3en | (~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) (Quit: ash3en) |
2024-12-10 14:35:23 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2024-12-10 14:39:57 +0100 | kmein | (~weechat@user/kmein) (Quit: ciao kakao) |
2024-12-10 14:40:14 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 14:41:03 +0100 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) jespada |
2024-12-10 14:43:40 +0100 | lovasko | (~lovasko@213.55.189.104) |
2024-12-10 14:44:07 +0100 | merijn | (~merijn@77.242.116.146) (Client Quit) |
2024-12-10 14:44:22 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 14:48:18 +0100 | sindu | (~sindu@176.75.224.1) (Ping timeout: 244 seconds) |
2024-12-10 14:50:42 +0100 | <merijn> | lxsameer: Also, the above discussion is why pedants always say that Haskell is "non-strict" and not lazy. That is, GHC is allowed to compile code to be strict IFF it can't prove the strict version behaves identically to the lazy one |
2024-12-10 14:51:54 +0100 | <lxsameer> | merijn: Cool, I'm pretty instrested to learn more about how GHC does it. |
2024-12-10 14:52:23 +0100 | <lxsameer> | Specially about the mathematics used as proofs |
2024-12-10 14:52:52 +0100 | sindu | (~sindu@176.75.224.1) |
2024-12-10 14:54:50 +0100 | weary-traveler | (~user@user/user363627) user363627 |
2024-12-10 15:02:29 +0100 | <geekosaur> | I don't think there's a lot of math involved, just standard compiler demand analysis |
2024-12-10 15:02:54 +0100 | CiaoSen | (~Jura@2a05:5800:2e1:d800:ca4b:d6ff:fec1:99da) (Ping timeout: 245 seconds) |
2024-12-10 15:03:03 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 15:03:08 +0100 | srk | (~sorki@user/srk) srk |
2024-12-10 15:03:08 +0100 | <geekosaur> | I think there's a -d dump flag to show ghc's analysis |
2024-12-10 15:06:00 +0100 | <merijn> | lxsameer: The STG paper is a bit dated (in that a bunch of things that it desribes are no longer done), but it's very enlightening |
2024-12-10 15:07:02 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 15:08:54 +0100 | mari54335 | (~mari-este@user/mari-estel) mari-estel |
2024-12-10 15:09:29 +0100 | mari-estel | (~mari-este@user/mari-estel) (Ping timeout: 244 seconds) |
2024-12-10 15:12:16 +0100 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Quit: My Mac has gone to sleep. ZZZzzz…) |
2024-12-10 15:13:29 +0100 | <__monty__> | merijn: That was an extraneous `'t`, right? |
2024-12-10 15:20:29 +0100 | <merijn> | __monty__: Probably, I'm operating on, like, 4 hours of sleep due to a cold. So anything that's remotely parseable as english counts as exceeds expectations |
2024-12-10 15:22:44 +0100 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) jespada |
2024-12-10 15:28:49 +0100 | lovasko | (~lovasko@213.55.189.104) (Quit: Client closed) |
2024-12-10 15:33:42 +0100 | SlackCoder | (~SlackCode@208.26.70.132) (Quit: Leaving) |
2024-12-10 15:34:43 +0100 | <haskellbridge> | <maralorn> One thing I have been wondering about for ages: Why is there a "let" in do notation. Couldn"t we just do "a <- _; b = _; c = _; d <- _;`? |
2024-12-10 15:35:03 +0100 | <haskellbridge> | <maralorn> * Couldn’t we just do "a <- _; b = _; c = _; d <- _;"? |
2024-12-10 15:35:57 +0100 | gorignak | (~gorignak@user/gorignak) gorignak |
2024-12-10 15:41:52 +0100 | todi | (~todi@p57803331.dip0.t-ipconnect.de) (Quit: ZNC - https://znc.in) |
2024-12-10 15:47:20 +0100 | <merijn> | maralorn: and implicitly wrap _ with "return" you mean? |
2024-12-10 15:47:58 +0100 | <tomsmeding> | merijn: I think they mean just drop the `let` from the syntax, the resulting grammar is unambiguous anyway |
2024-12-10 15:48:30 +0100 | <geekosaur> | ^ |
2024-12-10 15:48:53 +0100 | <geekosaur> | right now you get a parse error if you write `x = foo` in a `do` block without the `let` |
2024-12-10 15:49:10 +0100 | <tomsmeding> | humans like redundancy, though, and it's sometimes kind of relevant which lines do something monadic and which ones don't |
2024-12-10 15:49:16 +0100 | <geekosaur> | I _thiiiink_, however, the point is to catch a common-ish thinko |
2024-12-10 15:49:33 +0100 | <tomsmeding> | but it's definitely not clear-cut, there's plenty other cases in haskell where there's a lot of semantic difference in a single character |
2024-12-10 15:50:07 +0100 | <tomsmeding> | maralorn: the `let` syntax allows you to define a mutually-recursive block of bindings |
2024-12-10 15:50:23 +0100 | <geekosaur> | (I mean, I made that mistake the other day because I was trying to crank out code quickly and without much thought) |
2024-12-10 15:50:31 +0100 | <tomsmeding> | doing that implicitly with adjacent unmarked '=' lines would be awkward |
2024-12-10 15:50:50 +0100 | gorignak | (~gorignak@user/gorignak) (Quit: quit) |
2024-12-10 15:52:25 +0100 | <briandaed> | maralorn: https://stackoverflow.com/questions/23452343/stripping-out-let-in-haskell , first and second answer |
2024-12-10 15:52:28 +0100 | bwern | (~bwern@49.36.232.170) |
2024-12-10 15:54:15 +0100 | KicksonButt | (~quassel@187.21.173.221) |
2024-12-10 15:55:57 +0100 | <haskellbridge> | <maralorn> I feel like that so question misses my point. I am not against bindings as a construct it just always irks me that we need the keyword to do it. |
2024-12-10 15:55:59 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 244 seconds) |
2024-12-10 15:56:06 +0100 | <tomsmeding> | briandaed: that's about removing the syntactic constructinside regular expressions |
2024-12-10 15:56:23 +0100 | <tomsmeding> | maralorn was about changing the grammar without changing the abstract syntax for do-blocks specifically |
2024-12-10 15:59:16 +0100 | <briandaed> | oh my bad, I misunderstood |
2024-12-10 16:00:08 +0100 | youthlic | (~Thunderbi@user/youthlic) (Remote host closed the connection) |
2024-12-10 16:00:55 +0100 | housemate | (~housemate@2405:6e00:2431:7d1:f1bd:894:a763:65d2) housemate |
2024-12-10 16:02:03 +0100 | <KicksonButt> | How do you call the "()" as in "IO ()"? If you have to read it out loud |
2024-12-10 16:02:19 +0100 | youthlic | (~Thunderbi@user/youthlic) youthlic |
2024-12-10 16:02:42 +0100 | <tomsmeding> | "unit" |
2024-12-10 16:02:50 +0100 | mreh | (~matthew@host86-146-138-50.range86-146.btcentralplus.com) mreh |
2024-12-10 16:03:48 +0100 | <KicksonButt> | Thanks |
2024-12-10 16:04:26 +0100 | <mreh> | technically a stack question, but what do I need to do to get stack to recognise changes in a local `extra-deps` package? |
2024-12-10 16:05:16 +0100 | <mreh> | I have to stack purge quite often, sometimes `stack build --file-watch` recognises the changes, but then it fails eventually |
2024-12-10 16:05:25 +0100 | <tomsmeding> | mreh: you don't, you add it to `packages:` instead |
2024-12-10 16:05:41 +0100 | <tomsmeding> | then it gets built in the local .stack-work too |
2024-12-10 16:06:19 +0100 | <tomsmeding> | stack also can't apply package flags to stuff in extra-deps |
2024-12-10 16:06:34 +0100 | <mreh> | oh really, that's poo |
2024-12-10 16:06:55 +0100 | <mreh> | so, if I've got this package in a different repo, I should symlink it? |
2024-12-10 16:07:08 +0100 | <tomsmeding> | `packages:` can refer to any directory on your disk though |
2024-12-10 16:07:12 +0100 | <tomsmeding> | you don't have to symlink it in |
2024-12-10 16:07:48 +0100 | <mreh> | oh, `packages:` in stack.yaml? |
2024-12-10 16:07:51 +0100 | <tomsmeding> | yes |
2024-12-10 16:07:55 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 16:08:50 +0100 | <tomsmeding> | it's a bit of a hack because `packages:` is meant for the packages that you're developing together as part of one project |
2024-12-10 16:08:52 +0100 | <tomsmeding> | but it works |
2024-12-10 16:09:59 +0100 | <mreh> | yeah, one is a public package and the other is private, but their development is pretty closely linked |
2024-12-10 16:10:16 +0100 | <mreh> | it'll be *fine* |
2024-12-10 16:10:26 +0100 | <tomsmeding> | just don't accidentally commit the packages: line :) |
2024-12-10 16:10:50 +0100 | <mreh> | meh, I'll be the only one trying to build it |
2024-12-10 16:12:47 +0100 | <mreh> | flags are extremely useful, glfw-bindings likes to build GLFW3 from source by default |
2024-12-10 16:13:48 +0100 | <briandaed> | I would swear that that flags in stack.yaml were passed to package in extra-deps like crypton(ite) but maybe I'm wrong |
2024-12-10 16:14:05 +0100 | <tomsmeding> | they definitely weren't a few years ago; maybe it's been fixed in the meantime |
2024-12-10 16:15:39 +0100 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Quit: My Mac has gone to sleep. ZZZzzz…) |
2024-12-10 16:17:15 +0100 | KicksonButt | (~quassel@187.21.173.221) (Ping timeout: 252 seconds) |
2024-12-10 16:17:36 +0100 | BrokenClutch | (~primeiro@200-222-219-238.user3p.veloxzone.com.br) |
2024-12-10 16:17:45 +0100 | <BrokenClutch> | i like haskell |
2024-12-10 16:18:01 +0100 | <mreh> | welcome to the party |
2024-12-10 16:19:12 +0100 | <BrokenClutch> | I was reading the FRP libraries |
2024-12-10 16:19:39 +0100 | <BrokenClutch> | do someone know what happened to esoyelemez, the creator of netwire? |
2024-12-10 16:20:24 +0100 | <__monty__> | BrokenClutch: He passed away sadly, https://blog.jle.im/entry/in-memory-of-ertugrul-soylemez.html |
2024-12-10 16:21:22 +0100 | <__monty__> | BrokenClutch: Highly recommend this blogpost of theirs to get a better understanding of folds BTW, https://ertes.eu/tutorial/foldr.html |
2024-12-10 16:21:29 +0100 | <merijn> | tomsmeding: stack did it, cabal dit not |
2024-12-10 16:21:29 +0100 | <dpratt> | figured it out finally glguy -- boy that kicked my butt! |
2024-12-10 16:23:14 +0100 | <dpratt> | I had a function that would look up a "file" by its "id", but it was pulling from the original file data, before any transformations -- ah, the pitfalls of pure FP 😆 |
2024-12-10 16:23:24 +0100 | <mreh> | BrokenClutch: are you interested in FRP? |
2024-12-10 16:23:26 +0100 | <tomsmeding> | merijn: are you 100% sure? |
2024-12-10 16:23:34 +0100 | <dpratt> | this code is a mess, tho |
2024-12-10 16:24:08 +0100 | housemate | (~housemate@2405:6e00:2431:7d1:f1bd:894:a763:65d2) (Ping timeout: 264 seconds) |
2024-12-10 16:24:09 +0100 | <merijn> | tomsmeding: I'm 100% sure stack's config files let you pass flag to (transitive) dependencies and 100% sure that cabal does not let you (except via cabal.project) |
2024-12-10 16:24:44 +0100 | <tomsmeding> | merijn: well, stack.yaml corresponds to cabal.project, so allowing modifications to stack.yaml but not to cabal.project is unfair :p |
2024-12-10 16:25:14 +0100 | <tomsmeding> | package.yaml : stack.yaml :: thing.cabal : cabal.project, if you assume use of hpack |
2024-12-10 16:25:20 +0100 | <BrokenClutch> | __monty__: now I'm sad |
2024-12-10 16:25:31 +0100 | <merijn> | tomsmeding: Pretty sure package.yaml let you do it too |
2024-12-10 16:25:42 +0100 | <BrokenClutch> | mreh: a lot, probably the area I'm most interest in programming |
2024-12-10 16:25:46 +0100 | <merijn> | I just didn't bother ever knowing which yaml is what |
2024-12-10 16:26:06 +0100 | <tomsmeding> | merijn: how on earth would that work? package.yaml is just converted to a thing.cabal, and a .cabal file definitely cannot set flags on dependencies (let alone transitive ones) |
2024-12-10 16:26:34 +0100 | <merijn> | tomsmeding: Stack doesn't do dependency resolution via cabal at all |
2024-12-10 16:26:35 +0100 | <geekosaur> | actually I think it can, it's just very strongly disrecommended |
2024-12-10 16:27:16 +0100 | <merijn> | geekosaur: You cannot set dependency flags in .cabal unless that changed very recently (like, the last year or so) |
2024-12-10 16:27:31 +0100 | <__monty__> | BrokenClutch: Yeah : ( Hugs on offer though. |
2024-12-10 16:27:36 +0100 | JuanDaugherty | (~juan@user/JuanDaugherty) JuanDaugherty |
2024-12-10 16:27:45 +0100 | <tomsmeding> | I just very distinctly remember running into the fact that I could not set flags on extra-deps: packages in stack, and I had to put them in packages: instead |
2024-12-10 16:27:53 +0100 | <tomsmeding> | this was 2021 |
2024-12-10 16:27:55 +0100 | alp | (~alp@user/alp) (Remote host closed the connection) |
2024-12-10 16:28:05 +0100 | <merijn> | tomsmeding: You going to NL-FP? |
2024-12-10 16:28:22 +0100 | <tomsmeding> | probably, and unless the start time is going to move by 30mins I'll be late for the first talk |
2024-12-10 16:28:35 +0100 | <merijn> | Yeah, Leuven is so damn far away |
2024-12-10 16:28:48 +0100 | <merijn> | I'm considering just getting a hotel and turning it into a city trip with my girlfriend :p |
2024-12-10 16:28:53 +0100 | <tomsmeding> | I expect noone north of Utrecht will go |
2024-12-10 16:29:00 +0100 | <tomsmeding> | well or that |
2024-12-10 16:29:21 +0100 | <merijn> | No preliminary program yet, so I'm trying to figure out whether I should convince my boss to count it as "training & personal development" :p |
2024-12-10 16:30:16 +0100 | <__monty__> | Doesn't happen to be around FOSDEM, does it? |
2024-12-10 16:30:32 +0100 | <merijn> | No |
2024-12-10 16:30:46 +0100 | <merijn> | FOSDEM is February, NL-FP is (normally) first friday of the year |
2024-12-10 16:30:51 +0100 | <merijn> | Although not this year, it seems :p |
2024-12-10 16:30:55 +0100 | <tomsmeding> | second friday this time :) |
2024-12-10 16:32:27 +0100 | <kuribas> | What's in Leuven? |
2024-12-10 16:32:36 +0100 | <merijn> | kuribas: NL-FP, confusingly ;) |
2024-12-10 16:32:39 +0100 | <tomsmeding> | kuribas: https://people.cs.kuleuven.be/~tom.schrijvers/fpdag2025/ |
2024-12-10 16:32:53 +0100 | <kuribas> | Just 20 mins from my work with the train :) |
2024-12-10 16:32:57 +0100 | <tomsmeding> | join! |
2024-12-10 16:33:01 +0100 | <merijn> | Although, I guess this is just more support for my controversial political platform to reannex Flanders |
2024-12-10 16:33:09 +0100 | <kuribas> | tomsmeding: yeah :) |
2024-12-10 16:33:16 +0100 | <tomsmeding> | it's usually up in NL |
2024-12-10 16:33:50 +0100 | todi | (~todi@p57803331.dip0.t-ipconnect.de) todi |
2024-12-10 16:34:10 +0100 | <merijn> | But yeah, it's nice |
2024-12-10 16:36:17 +0100 | mreh | (~matthew@host86-146-138-50.range86-146.btcentralplus.com) (Ping timeout: 248 seconds) |
2024-12-10 16:45:04 +0100 | leungbk | (~user@syn-104-032-221-175.res.spectrum.com) (Ping timeout: 244 seconds) |
2024-12-10 16:45:50 +0100 | dostoevsky | (~dostoevsk@user/dostoevsky) (Quit: dostoevsky) |
2024-12-10 16:46:29 +0100 | <kuribas> | I registered :) |
2024-12-10 16:48:00 +0100 | michaelis | (~michael@user/michaelis) (Ping timeout: 276 seconds) |
2024-12-10 16:48:04 +0100 | JuanDaugherty | (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
2024-12-10 16:48:40 +0100 | leungbk | (~user@syn-104-032-221-175.res.spectrum.com) leungbk |
2024-12-10 16:50:33 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
2024-12-10 16:53:40 +0100 | Guest58 | (~Guest58@46.240.130.155) (Ping timeout: 240 seconds) |
2024-12-10 16:56:54 +0100 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) tzh |
2024-12-10 16:57:31 +0100 | housemate | (~housemate@2405:6e00:2431:c6a:4614:14fc:560d:4532) housemate |
2024-12-10 16:57:37 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 248 seconds) |
2024-12-10 16:57:40 +0100 | manwithluck | (manwithluc@gateway/vpn/protonvpn/manwithluck) (Remote host closed the connection) |
2024-12-10 16:58:05 +0100 | manwithluck | (manwithluc@gateway/vpn/protonvpn/manwithluck) manwithluck |
2024-12-10 17:00:42 +0100 | housemate | (~housemate@2405:6e00:2431:c6a:4614:14fc:560d:4532) (Max SendQ exceeded) |
2024-12-10 17:01:15 +0100 | housemate | (~housemate@2405:6e00:2431:c6a:4614:14fc:560d:4532) housemate |
2024-12-10 17:02:19 +0100 | sprotte24 | (~sprotte24@p200300d16f364f00e91ec4b6e14324a2.dip0.t-ipconnect.de) |
2024-12-10 17:03:34 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 17:04:26 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 17:06:29 +0100 | lovasko | (~lovasko@213.55.189.104) |
2024-12-10 17:09:12 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 17:09:23 +0100 | gorignak | (~gorignak@user/gorignak) gorignak |
2024-12-10 17:09:29 +0100 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) jespada |
2024-12-10 17:14:34 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 245 seconds) |
2024-12-10 17:19:07 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.4.2) |
2024-12-10 17:20:03 +0100 | ubert | (~Thunderbi@2a02:8109:ab8a:5a00:e6b3:18ff:fe83:8f33) (Quit: ubert) |
2024-12-10 17:20:42 +0100 | gorignak | (~gorignak@user/gorignak) (Quit: quit) |
2024-12-10 17:25:13 +0100 | mari54335 | (~mari-este@user/mari-estel) (Ping timeout: 265 seconds) |
2024-12-10 17:28:02 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 17:30:00 +0100 | sindu | (~sindu@176.75.224.1) (Ping timeout: 246 seconds) |
2024-12-10 17:31:47 +0100 | lovasko | (~lovasko@213.55.189.104) (Quit: Client closed) |
2024-12-10 17:33:40 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 260 seconds) |
2024-12-10 17:34:01 +0100 | zero | zzz |
2024-12-10 17:35:53 +0100 | mari-estel | (~mari-este@user/mari-estel) mari-estel |
2024-12-10 17:36:49 +0100 | todi | (~todi@p57803331.dip0.t-ipconnect.de) (Quit: ZNC - https://znc.in) |
2024-12-10 17:39:19 +0100 | leungbk | (~user@syn-104-032-221-175.res.spectrum.com) (Read error: Connection reset by peer) |
2024-12-10 17:41:00 +0100 | leungbk | (~user@2603:8000:1201:2dd2:ef9a:8e63:f517:2b50) leungbk |
2024-12-10 17:41:54 +0100 | housemate | (~housemate@2405:6e00:2431:c6a:4614:14fc:560d:4532) (Read error: Connection reset by peer) |
2024-12-10 17:44:23 +0100 | <hellwolf> | {-# ANN EvalData "HLint: ignore Use newtype instead of data" #-} |
2024-12-10 17:44:24 +0100 | sindu | (~sindu@176.75.224.1) |
2024-12-10 17:45:00 +0100 | housemate | (~housemate@2405:6e00:2431:c6a:4614:14fc:560d:4532) housemate |
2024-12-10 17:45:11 +0100 | <hellwolf> | But somehow, something warns me that I should use it for top-level bindings |
2024-12-10 17:45:18 +0100 | <hellwolf> | for example its only constructor |
2024-12-10 17:45:50 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 17:46:00 +0100 | <hellwolf> | bizarre |
2024-12-10 17:46:16 +0100 | <hellwolf> | hlint is happy with it, but not that something else. is it HLS. |
2024-12-10 17:46:34 +0100 | <hellwolf> | oh, ghc also complains. |
2024-12-10 17:48:18 +0100 | bwerng | (~bwern@2405:201:5c16:894:a059:4458:a01:2a23) |
2024-12-10 17:49:27 +0100 | leungbk | (~user@2603:8000:1201:2dd2:ef9a:8e63:f517:2b50) (Remote host closed the connection) |
2024-12-10 17:50:24 +0100 | bwern | (~bwern@49.36.232.170) (Ping timeout: 252 seconds) |
2024-12-10 17:51:21 +0100 | housemate | (~housemate@2405:6e00:2431:c6a:4614:14fc:560d:4532) (Ping timeout: 246 seconds) |
2024-12-10 17:52:10 +0100 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2024-12-10 17:52:51 +0100 | <hellwolf> | and I really can't find any documentation from GHC about "{-# ANN" |
2024-12-10 17:53:19 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) (Ping timeout: 260 seconds) |
2024-12-10 17:54:21 +0100 | <hellwolf> | what I have is: |
2024-12-10 17:54:21 +0100 | <hellwolf> | data EvalData = MkEvalData { store_map :: M.Map ADDR WORD |
2024-12-10 17:54:21 +0100 | <hellwolf> | } |
2024-12-10 17:55:17 +0100 | <glguy> | dpratt: My AoC solution template file starts with a line that reads and then prints out the output so I can feel like I'm starting from the right place for that reason |
2024-12-10 17:56:39 +0100 | cyphase | (~cyphase@user/cyphase) (Ping timeout: 245 seconds) |
2024-12-10 17:58:30 +0100 | KicksonButt | (~quassel@187.21.173.221) |
2024-12-10 18:03:36 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 246 seconds) |
2024-12-10 18:05:20 +0100 | korrykatti | (~korrykatt@user/korrykatti) korrykatti |
2024-12-10 18:05:23 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 18:05:43 +0100 | sonolin | (~michael@user/sonolin) sonolin |
2024-12-10 18:08:41 +0100 | todi | (~todi@p57803331.dip0.t-ipconnect.de) todi |
2024-12-10 18:08:44 +0100 | housemate | (~housemate@2405:6e00:243d:358a:9bd3:e1d0:18cf:9447) housemate |
2024-12-10 18:11:35 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 260 seconds) |
2024-12-10 18:11:56 +0100 | dhil | (~dhil@2001:8e0:2014:3100:6003:9cb:6551:cba4) dhil |
2024-12-10 18:16:02 +0100 | notzmv | (~umar@user/notzmv) notzmv |
2024-12-10 18:17:16 +0100 | <BrokenClutch> | is Keera Studio just Ivan Perez? |
2024-12-10 18:17:43 +0100 | <mari-estel> | pretty much |
2024-12-10 18:20:27 +0100 | <BrokenClutch> | most of the FRP libraries is just a one guy's dream? |
2024-12-10 18:20:44 +0100 | <BrokenClutch> | why? do people implement their own stuff? |
2024-12-10 18:21:22 +0100 | <mari-estel> | also the several attempts to write libs for mobile are mainly one person's initiative, unfortunately |
2024-12-10 18:21:51 +0100 | cyphase | (~cyphase@user/cyphase) cyphase |
2024-12-10 18:22:08 +0100 | <mari-estel> | ivan featured in an episode of the haskell interlude, explaining why his research is meaningful. For instance, for NASA |
2024-12-10 18:23:07 +0100 | <mari-estel> | ... there is a zoo of different functional reactive libs for haskell, by the way |
2024-12-10 18:23:14 +0100 | <BrokenClutch> | I saw it |
2024-12-10 18:23:28 +0100 | <EvanR> | FRP zoo |
2024-12-10 18:23:39 +0100 | <zzz> | what's the point of having a cabal.project separated from a *.cabal file? |
2024-12-10 18:23:53 +0100 | <BrokenClutch> | zzz: you can put fun stuff there |
2024-12-10 18:23:57 +0100 | <BrokenClutch> | like optimization flags |
2024-12-10 18:24:20 +0100 | <BrokenClutch> | I think profiling flags can go there too |
2024-12-10 18:24:34 +0100 | <dolio> | Project files can involve multiple packages. |
2024-12-10 18:25:00 +0100 | <mari-estel> | the project file is the only way to have a local dependency as far as i know |
2024-12-10 18:25:02 +0100 | <sclv> | a .cabal file describes a redistributable package -- a .project file contains settings not only for multiple packages and how they interact, but also flags that are not about the package itself, but about the specific building process |
2024-12-10 18:25:23 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2024-12-10 18:25:26 +0100 | <BrokenClutch> | The way I understood was: .cabal file say what your project is and cabal.project is how you are going to build it |
2024-12-10 18:25:33 +0100 | <sclv> | yeah thats pretty clean! |
2024-12-10 18:26:44 +0100 | EvanR | (~EvanR@user/evanr) (Quit: Leaving) |
2024-12-10 18:26:51 +0100 | <BrokenClutch> | I think that maybe FRP isn't popular enough |
2024-12-10 18:26:56 +0100 | <BrokenClutch> | which is sad |
2024-12-10 18:27:17 +0100 | <mari-estel> | hm i gather a zoo is not enough for you |
2024-12-10 18:27:38 +0100 | <BrokenClutch> | like, most of that stuff isn't maintained anymore |
2024-12-10 18:27:45 +0100 | <BrokenClutch> | or it was just a one-person project |
2024-12-10 18:28:05 +0100 | <BrokenClutch> | it's enough to me because I just want to study it |
2024-12-10 18:29:11 +0100 | <mari-estel> | well consider that non-strict eval provides several of the advantages one could get from functional reactive already. Also, personally i used fun reactive only when i had to write complex interactive code, and that is not a common domain for haskell |
2024-12-10 18:31:50 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
2024-12-10 18:34:53 +0100 | <BrokenClutch> | It's was very hard to me. Unerstanding all this FRP stuff took too much time, I don't think people would want to do that. Maybe that's a problem, don't know. |
2024-12-10 18:35:41 +0100 | <BrokenClutch> | I like reactivity because it's fun, wish I could implement some kind of reactivity. I'm trying to read the source code of those libraries but I'm not getting far (obviously). |
2024-12-10 18:37:45 +0100 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) Unicorn_Princess |
2024-12-10 18:39:23 +0100 | housemate | (~housemate@2405:6e00:243d:358a:9bd3:e1d0:18cf:9447) (Read error: Connection reset by peer) |
2024-12-10 18:40:56 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 18:41:44 +0100 | mari-estel | (~mari-este@user/mari-estel) (Remote host closed the connection) |
2024-12-10 18:41:58 +0100 | mari-estel | (~mari-este@user/mari-estel) mari-estel |
2024-12-10 18:42:01 +0100 | ljdarj | (~Thunderbi@user/ljdarj) ljdarj |
2024-12-10 18:44:41 +0100 | vanishing | (~vanishing@user/vanishingideal) vanishingideal |
2024-12-10 18:44:41 +0100 | hellwolf | (~user@fd1b-fea4-59a9-4346-0f00-4d40-07d0-2001.sta.estpak.ee) (Read error: Connection reset by peer) |
2024-12-10 18:45:27 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 244 seconds) |
2024-12-10 18:46:00 +0100 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 260 seconds) |
2024-12-10 18:48:14 +0100 | alp | (~alp@2001:861:8ca0:4940:d84b:e882:40b4:e34d) |
2024-12-10 18:48:30 +0100 | mreh | (~matthew@host86-146-138-50.range86-146.btcentralplus.com) |
2024-12-10 18:50:09 +0100 | cyphase | (~cyphase@user/cyphase) (Ping timeout: 246 seconds) |
2024-12-10 18:51:12 +0100 | philopsos | (~caecilius@user/philopsos) philopsos |
2024-12-10 18:51:26 +0100 | OftenFaded | (OftenFaded@user/tisktisk) (Quit: Client closed) |
2024-12-10 18:51:38 +0100 | AlexZenon | (~alzenon@5.139.233.0) (Ping timeout: 252 seconds) |
2024-12-10 18:52:56 +0100 | mari-estel | (~mari-este@user/mari-estel) (Remote host closed the connection) |
2024-12-10 18:53:06 +0100 | AlexNoo | (~AlexNoo@5.139.233.0) (Ping timeout: 252 seconds) |
2024-12-10 18:53:57 +0100 | hellwolf | (~user@6af3-8a03-f6ad-0507-0f00-4d40-07d0-2001.sta.estpak.ee) hellwolf |
2024-12-10 18:55:19 +0100 | cyphase | (~cyphase@user/cyphase) cyphase |
2024-12-10 18:56:59 +0100 | kmein | (~weechat@user/kmein) kmein |
2024-12-10 18:59:13 +0100 | korrykatti | (~korrykatt@user/korrykatti) (Remote host closed the connection) |
2024-12-10 19:00:24 +0100 | res0nat0r0844909 | (~Fletch@falcon.whatbox.ca) |
2024-12-10 19:01:18 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) |
2024-12-10 19:04:32 +0100 | econo_ | (uid147250@id-147250.tinside.irccloud.com) |
2024-12-10 19:08:08 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:d990:91d3:1ea2:183f) (Read error: Connection reset by peer) |
2024-12-10 19:11:23 +0100 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life |
2024-12-10 19:12:32 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds) |
2024-12-10 19:12:46 +0100 | Lord_of_Life_ | Lord_of_Life |
2024-12-10 19:12:56 +0100 | JeremyB99 | (~JeremyB99@dhcp-251-149.resnet.purdue.edu) |
2024-12-10 19:12:58 +0100 | JeremyB99 | (~JeremyB99@dhcp-251-149.resnet.purdue.edu) (Read error: Connection reset by peer) |
2024-12-10 19:16:22 +0100 | <BrokenClutch> | mari-estel: what's your favorite FRP lib? |
2024-12-10 19:16:26 +0100 | <BrokenClutch> | mine is Yampa |
2024-12-10 19:17:52 +0100 | <monochrom> | Reading library source code first may be the bad idea. |
2024-12-10 19:21:54 +0100 | <monochrom> | It works for libraries that merely capture repetitive idioms and chores. For example, foldl, foldr, take, map, id, ($). |
2024-12-10 19:22:52 +0100 | <monochrom> | But it totally backfires for real abstractions, e.g., pipes and conduits, FRP, even FIFO queues. |
2024-12-10 19:24:40 +0100 | danza | (~danza@user/danza) danza |
2024-12-10 19:25:39 +0100 | <monochrom> | For those, you learn the externally observable behaviour, aka user-facing use case stories. You don't actually want to know how such magical outcome can be achieved by all kinds of advanced techniques, tricks, and optimizations. |
2024-12-10 19:27:43 +0100 | ft | (~ft@p508db9c7.dip0.t-ipconnect.de) ft |
2024-12-10 19:29:29 +0100 | OftenFaded | (~OftenFade@user/tisktisk) OftenFaded |
2024-12-10 19:34:31 +0100 | bwerng | (~bwern@2405:201:5c16:894:a059:4458:a01:2a23) (Ping timeout: 252 seconds) |
2024-12-10 19:34:36 +0100 | merijn | (~merijn@77.242.116.146) merijn |
2024-12-10 19:36:59 +0100 | <BrokenClutch> | monochrom: How should I learn it? |
2024-12-10 19:38:10 +0100 | JeremyB99 | (~JeremyB99@2607:ac80:407:7:b23:6c48:4874:9aaa) |
2024-12-10 19:38:17 +0100 | <monochrom> | For an extreme case, even in C, consider https://stackoverflow.com/questions/57650895/why-does-glibcs-strlen-need-to-be-so-complicated-to-r… . If no one told you "this is strlen()", good luck reverse-engineering what is the purpose of the highly contrived code and what it means for the user. |
2024-12-10 19:39:06 +0100 | <monochrom> | How did you learn FIFO queues? It's the same. |
2024-12-10 19:42:21 +0100 | <monochrom> | Someone told you a user-facing story, a mental model, maybe in the form of a "naïve" implementation. An API and how you use it and what happens when you do. |
2024-12-10 19:44:21 +0100 | <monochrom> | No one actually expects the actual library code looks anything like the "naïve" model. It is expected to be hand-optimized beyond recognition, such that reading it (without knowing that the high level goal is merely FIFO) is missing the forest for the trees. |
2024-12-10 19:44:47 +0100 | <monochrom> | Hell, you can't even learn strlen() by reading its glibc code. |
2024-12-10 19:49:35 +0100 | merijn | (~merijn@77.242.116.146) (Ping timeout: 260 seconds) |
2024-12-10 19:53:51 +0100 | euphores | (~SASL_euph@user/euphores) (Quit: Leaving.) |
2024-12-10 19:55:40 +0100 | housemate | (~housemate@2405:6e00:243d:358a:b2e8:2b09:1ec8:e88e) housemate |
2024-12-10 19:59:54 +0100 | todi | (~todi@p57803331.dip0.t-ipconnect.de) (Quit: ZNC - https://znc.in) |
2024-12-10 20:01:06 +0100 | rvalue- | (~rvalue@user/rvalue) rvalue |
2024-12-10 20:01:42 +0100 | euphores | (~SASL_euph@user/euphores) euphores |
2024-12-10 20:02:02 +0100 | rvalue | (~rvalue@user/rvalue) (Ping timeout: 252 seconds) |
2024-12-10 20:09:06 +0100 | rvalue- | rvalue |
2024-12-10 20:13:03 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod |
2024-12-10 20:16:05 +0100 | dhil | (~dhil@2001:8e0:2014:3100:6003:9cb:6551:cba4) (Quit: Leaving) |
2024-12-10 20:16:39 +0100 | Digitteknohippie | (~user@user/digit) Digit |
2024-12-10 20:17:56 +0100 | Digit | (~user@user/digit) (Ping timeout: 244 seconds) |
2024-12-10 20:19:12 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 20:20:49 +0100 | jespada | (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Quit: My Mac has gone to sleep. ZZZzzz…) |
2024-12-10 20:23:28 +0100 | Square | (~Square@user/square) Square |
2024-12-10 20:23:40 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 20:24:36 +0100 | AlexZenon | (~alzenon@5.139.233.0) |
2024-12-10 20:25:31 +0100 | dpratt | (~dpratt@165.225.220.148) (Quit: Client closed) |
2024-12-10 20:25:35 +0100 | Guest58 | (~Guest58@46.240.130.155) |
2024-12-10 20:25:41 +0100 | notzmv | (~umar@user/notzmv) (Ping timeout: 244 seconds) |
2024-12-10 20:26:29 +0100 | AlexNoo | (~AlexNoo@5.139.233.0) |
2024-12-10 20:27:14 +0100 | Square2 | (~Square4@user/square) (Ping timeout: 244 seconds) |
2024-12-10 20:34:34 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 20:34:58 +0100 | dpratt | (~dpratt@165.225.220.148) dpratt |
2024-12-10 20:35:10 +0100 | Guest58 | (~Guest58@46.240.130.155) (Ping timeout: 240 seconds) |
2024-12-10 20:39:20 +0100 | housemate | (~housemate@2405:6e00:243d:358a:b2e8:2b09:1ec8:e88e) (Quit: Nothing to see here. I wasn't there. I take IRC seriously. https://files.catbox.moe/4e9k81.pdf) |
2024-12-10 20:39:42 +0100 | housemate | (~housemate@2405:6e00:243d:358a:b2e8:2b09:1ec8:e88e) housemate |
2024-12-10 20:39:49 +0100 | <geekosaur> | bouncing the bridge briefly |
2024-12-10 20:40:12 +0100 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection) |
2024-12-10 20:41:16 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 20:41:20 +0100 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) hackager |
2024-12-10 20:41:20 +0100 | ChanServ | +v haskellbridge |
2024-12-10 20:41:54 +0100 | lxsameer | (~lxsameer@Serene/lxsameer) (Ping timeout: 260 seconds) |
2024-12-10 20:43:16 +0100 | danza | (~danza@user/danza) () |
2024-12-10 20:45:10 +0100 | dpratt | (~dpratt@165.225.220.148) (Ping timeout: 240 seconds) |
2024-12-10 20:49:46 +0100 | nitrix | (~nitrix@user/meow/nitrix) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-12-10 20:50:51 +0100 | nitrix | (~nitrix@user/meow/nitrix) nitrix |
2024-12-10 20:51:17 +0100 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
2024-12-10 20:52:37 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 20:55:14 +0100 | Digitteknohippie | Digit |
2024-12-10 20:57:05 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-12-10 20:59:48 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj |
2024-12-10 21:00:03 +0100 | caconym | (~caconym@user/caconym) (Quit: bye) |
2024-12-10 21:00:41 +0100 | caconym | (~caconym@user/caconym) caconym |
2024-12-10 21:01:24 +0100 | nitrix | (~nitrix@user/meow/nitrix) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-12-10 21:03:01 +0100 | nitrix | (~nitrix@user/meow/nitrix) nitrix |
2024-12-10 21:03:27 +0100 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 276 seconds) |
2024-12-10 21:03:27 +0100 | ljdarj1 | ljdarj |
2024-12-10 21:04:52 +0100 | billchenchina | (~billchenc@2a0d:2580:ff0c:1:e3c9:c52b:a429:5bfe) (Quit: Leaving) |
2024-12-10 21:05:06 +0100 | euphores | (~SASL_euph@user/euphores) (Read error: Connection reset by peer) |
2024-12-10 21:08:01 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 21:13:12 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-12-10 21:14:11 +0100 | <BrokenClutch> | monochrom: So how should I learn how to implement something? |
2024-12-10 21:15:38 +0100 | visilii | (~visilii@213.24.132.203) |
2024-12-10 21:15:38 +0100 | euphores | (~SASL_euph@user/euphores) euphores |
2024-12-10 21:15:43 +0100 | visilii_ | (~visilii@94.25.68.206) (Ping timeout: 252 seconds) |
2024-12-10 21:15:49 +0100 | housemate | (~housemate@2405:6e00:243d:358a:b2e8:2b09:1ec8:e88e) (Read error: Connection reset by peer) |
2024-12-10 21:16:48 +0100 | korrykatti | (~korrykatt@user/korrykatti) korrykatti |
2024-12-10 21:17:19 +0100 | housemate | (~housemate@120.20.140.46) housemate |
2024-12-10 21:17:51 +0100 | housemate | (~housemate@120.20.140.46) (Remote host closed the connection) |
2024-12-10 21:18:10 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-12-10 21:18:56 +0100 | <monochrom> | That was not what I was addressing. I was only addressing how to learn to use FRP or any abstraction or any API. I am not interested right now in changing subject to how to learn to implement. |
2024-12-10 21:20:09 +0100 | Smiles | (uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2024-12-10 21:20:50 +0100 | fmira | (~user@user/fmira) fmira |
2024-12-10 21:23:26 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 21:24:53 +0100 | <BrokenClutch> | monochrom: ok, thanks |
2024-12-10 21:27:46 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 21:31:49 +0100 | sindu | (~sindu@176.75.224.1) (Ping timeout: 244 seconds) |
2024-12-10 21:33:40 +0100 | sindu | (~sindu@176.75.224.1) |
2024-12-10 21:35:04 +0100 | BrokenClutch | (~primeiro@200-222-219-238.user3p.veloxzone.com.br) (Remote host closed the connection) |
2024-12-10 21:36:36 +0100 | weary-traveler | (~user@user/user363627) user363627 |
2024-12-10 21:38:24 +0100 | sord937 | (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
2024-12-10 21:38:47 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 21:43:03 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-12-10 21:45:46 +0100 | bcksl | (~bcksl@user/bcksl) (Ping timeout: 244 seconds) |
2024-12-10 21:46:57 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 21:47:11 +0100 | end | (~end@user/end/x-0094621) (Ping timeout: 265 seconds) |
2024-12-10 21:47:32 +0100 | sus0 | (zero@user/zeromomentum) (Ping timeout: 264 seconds) |
2024-12-10 21:50:12 +0100 | foul_owl | (~kerry@185.219.141.161) (Ping timeout: 252 seconds) |
2024-12-10 21:50:36 +0100 | foul_owl | (~kerry@185.219.141.161) foul_owl |
2024-12-10 21:51:52 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds) |
2024-12-10 21:54:36 +0100 | pavonia | (~user@user/siracusa) siracusa |
2024-12-10 21:59:21 +0100 | briandaed | (~root@user/briandaed) (Remote host closed the connection) |
2024-12-10 22:00:21 +0100 | <sprotte24> | hi |
2024-12-10 22:00:31 +0100 | bcksl | (~bcksl@user/bcksl) bcksl |
2024-12-10 22:02:13 +0100 | <sprotte24> | my haskell getCahr buffer problem persits. |
2024-12-10 22:02:15 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 22:03:31 +0100 | end | (~end@user/end/x-0094621) end^ |
2024-12-10 22:04:16 +0100 | <sprotte24> | bing Copilot (AI) helpted me, about 20 tries. But not one try solved the problem using without enter key |
2024-12-10 22:05:19 +0100 | <glguy> | To getChar without enter you have to turn off buffering in stdin |
2024-12-10 22:06:56 +0100 | todi | (~todi@p57803331.dip0.t-ipconnect.de) todi |
2024-12-10 22:07:02 +0100 | <glguy> | LLMs are only really useful if you already know enough to recognize the right answer |
2024-12-10 22:07:06 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2024-12-10 22:07:19 +0100 | <glguy> | Or for asking questions that don't have right answers |
2024-12-10 22:09:16 +0100 | <OftenFaded> | so far* |
2024-12-10 22:09:36 +0100 | <OftenFaded> | claude is getting better i think |
2024-12-10 22:10:34 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-12-10 22:10:46 +0100 | <monochrom> | This again? Haven't we concluded that you should go to office hours and consult your instructor because only they know the actual testing environment and what it expects? |
2024-12-10 22:12:36 +0100 | <sprotte24> | gi, many tries, e.g. import System.IO (hSetEcho, hSetBuffering, BufferMode(NoBuffering), stdin, stdout, getChar |
2024-12-10 22:13:18 +0100 | <sprotte24> | or: cabal install haskeline |
2024-12-10 22:14:06 +0100 | <sprotte24> | cabal cabal uodate |
2024-12-10 22:14:14 +0100 | <sprotte24> | hflush ... |
2024-12-10 22:14:25 +0100 | <glguy> | It's just hSetBuffering stdin NoBuffering |
2024-12-10 22:14:26 +0100 | <sprotte24> | none works |
2024-12-10 22:14:28 +0100 | <glguy> | none of the rest of that |
2024-12-10 22:14:46 +0100 | <glguy> | If that doesn't work for you something is unique about your environment and you'll need to debug that |
2024-12-10 22:15:20 +0100 | <int-e> | <3 black box debugging over low-bandwidth, lossy channels. |
2024-12-10 22:15:49 +0100 | todi | (~todi@p57803331.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2024-12-10 22:16:12 +0100 | <monochrom> | Oh it gets better. Black box debugging over low-bandwidth lossy channel, and the other end of the channel is not even the black box. |
2024-12-10 22:16:21 +0100 | <sprotte24> | Parse error: module header, import declaration |
2024-12-10 22:16:21 +0100 | <sprotte24> | or top-level declaration expected. |
2024-12-10 22:16:41 +0100 | <monochrom> | In fact s/lossy/lousy/ works too. |
2024-12-10 22:16:41 +0100 | <int-e> | monochrom: that's included in the channel model :P |
2024-12-10 22:16:42 +0100 | Sgeo | (~Sgeo@user/sgeo) Sgeo |
2024-12-10 22:16:48 +0100 | <monochrom> | Oh haha OK! |
2024-12-10 22:16:59 +0100 | <probie> | sprotte24: make it the first line in the do block for your `main` |
2024-12-10 22:17:26 +0100 | <sprotte24> | ok, let me try |
2024-12-10 22:18:38 +0100 | housemate | (~housemate@2405:6e00:243d:358a:ddf0:5eda:a12a:410) housemate |
2024-12-10 22:19:10 +0100 | <sprotte24> | in main do block works, compiles. |
2024-12-10 22:19:26 +0100 | <sprotte24> | but waits for enter |
2024-12-10 22:20:05 +0100 | <sprotte24> | collects all characters and remembers them when keying enter |
2024-12-10 22:21:13 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 22:23:47 +0100 | homo | (~homo@user/homo) homo |
2024-12-10 22:23:53 +0100 | <probie> | If you've done `hSetBuffer stdin NoBuffering` and that still happens, something else is going on. Are you running a compiled program, or from within GHCi and what console/terminal emulator are you using? |
2024-12-10 22:26:05 +0100 | <int-e> | "The code ist[sic!] tested automatically." -- I believe this is why monochrom is so adamant about contacting the instructor. Because presumably they know how this is tested, and you don't, and we certainly don't. And it's quite possible that the test setup is broken! |
2024-12-10 22:26:20 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-12-10 22:27:10 +0100 | <monochrom> | You don't even know that anything you're doing right now is relevant to the testing environment at all. |
2024-12-10 22:27:12 +0100 | <int-e> | I also don't think that you've shared any code so obviously that can be wrong too, as far as we know. |
2024-12-10 22:27:14 +0100 | <glguy> | int-e: I don't think you have to [sic] German words |
2024-12-10 22:27:25 +0100 | <int-e> | glguy: :-P |
2024-12-10 22:28:36 +0100 | <int-e> | It felt like an appropriate channel for a bit of frustration. |
2024-12-10 22:29:03 +0100 | <monochrom> | If the test is not done by a human in front of a screen and keyboard, why are you even coding this for human comfort? |
2024-12-10 22:31:31 +0100 | notzmv | (~umar@user/notzmv) notzmv |
2024-12-10 22:32:46 +0100 | droideqa | (uid499291@user/droideqa) (Quit: Connection closed for inactivity) |
2024-12-10 22:33:54 +0100 | <sprotte24> | probie, I am using VSC and Terminal |
2024-12-10 22:36:45 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 22:37:44 +0100 | korrykatti | (~korrykatt@user/korrykatti) (Remote host closed the connection) |
2024-12-10 22:41:36 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-12-10 22:44:55 +0100 | simplystuart | (~simplystu@static-71-173-136-93.hrbgpa.fios.verizon.net) |
2024-12-10 22:46:50 +0100 | simplystuart | (~simplystu@static-71-173-136-93.hrbgpa.fios.verizon.net) (Remote host closed the connection) |
2024-12-10 22:47:00 +0100 | simplystuart | (~simplystu@static-71-173-136-93.hrbgpa.fios.verizon.net) |
2024-12-10 22:47:58 +0100 | simplystuart | (~simplystu@static-71-173-136-93.hrbgpa.fios.verizon.net) (Remote host closed the connection) |
2024-12-10 22:48:07 +0100 | simplystuart | (~simplystu@static-71-173-136-93.hrbgpa.fios.verizon.net) |
2024-12-10 22:48:52 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) Tuplanolla |
2024-12-10 22:48:58 +0100 | housemate | (~housemate@2405:6e00:243d:358a:ddf0:5eda:a12a:410) (Quit: Nothing to see here. I wasn't there. I take IRC seriously. https://files.catbox.moe/4e9k81.pdf) |
2024-12-10 22:50:42 +0100 | ash3en | (~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) ash3en |
2024-12-10 22:51:38 +0100 | housemate | (~housemate@2405:6e00:243d:358a:ddf0:5eda:a12a:410) housemate |
2024-12-10 22:56:31 +0100 | Square | (~Square@user/square) (Ping timeout: 264 seconds) |
2024-12-10 22:57:56 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 22:59:41 +0100 | homo | (~homo@user/homo) (Quit: homo) |
2024-12-10 23:02:14 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-10 23:04:43 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2024-12-10 23:05:48 +0100 | simplystuart | (~simplystu@static-71-173-136-93.hrbgpa.fios.verizon.net) (Remote host closed the connection) |
2024-12-10 23:08:39 +0100 | dpratt | (~dpratt@165.225.220.148) dpratt |
2024-12-10 23:10:00 +0100 | KicksonButt | (~quassel@187.21.173.221) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2024-12-10 23:10:05 +0100 | mreh | (~matthew@host86-146-138-50.range86-146.btcentralplus.com) (Quit: Lost terminal) |
2024-12-10 23:13:19 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 23:18:39 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-12-10 23:23:45 +0100 | housemate | (~housemate@2405:6e00:243d:358a:ddf0:5eda:a12a:410) (Ping timeout: 248 seconds) |
2024-12-10 23:24:21 +0100 | alp | (~alp@2001:861:8ca0:4940:d84b:e882:40b4:e34d) (Ping timeout: 248 seconds) |
2024-12-10 23:28:42 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 23:31:52 +0100 | michalz | (~michalz@185.246.207.200) (Remote host closed the connection) |
2024-12-10 23:35:26 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 23:37:02 +0100 | Smiles | (uid551636@id-551636.lymington.irccloud.com) Smiles |
2024-12-10 23:42:48 +0100 | <comonad> | sprotte24: hi, arch linux user here. i typed ghci and then getChar in my kitty terminal, getChar did not wait for enter. utf8 works too: ł'\322' |
2024-12-10 23:44:18 +0100 | <OftenFaded> | forgot the 'btw' |
2024-12-10 23:44:51 +0100 | <comonad> | sprotte24: might it be, that there is a line buffering program between your terminal and your haskell program? |
2024-12-10 23:45:03 +0100 | <comonad> | OftenFaded: thx, btw. |
2024-12-10 23:46:46 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-10 23:48:29 +0100 | sus0 | (zero@user/zeromomentum) zeromomentum |
2024-12-10 23:51:18 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-10 23:56:46 +0100 | homo | (~homo@37-33-168-21.bb.dnainternet.fi) |
2024-12-10 23:58:44 +0100 | dpratt | (~dpratt@165.225.220.148) (Quit: Client closed) |
2024-12-10 23:59:18 +0100 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj |