Newest at the top
2024-12-28 18:58:48 +0100 | <prsteele> | I'm trying to figure out if there's a reasonable way to annotate locally-bound functions in the ST monad. Examples at https://paste.tomsmeding.com/cjXBqns9 |
2024-12-28 18:57:08 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-12-28 18:57:00 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-12-28 18:55:52 +0100 | prsteele | (~prsteele@pool-173-48-172-223.bstnma.fios.verizon.net) |
2024-12-28 18:55:51 +0100 | tabemann__ | (~tabemann@2600:1700:7990:24e0:ada6:84a7:3e7e:966c) |
2024-12-28 18:52:36 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-28 18:52:06 +0100 | GdeVolpiano | (~GdeVolpia@user/GdeVolpiano) (Quit: WeeChat 4.4.2) |
2024-12-28 18:51:19 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
2024-12-28 18:49:28 +0100 | Xe | (~Xe@perl/impostor/xe) Xe |
2024-12-28 18:49:24 +0100 | tabemann__ | (~tabemann@2600:1700:7990:24e0:12b1:e4e1:19de:88e5) (Remote host closed the connection) |
2024-12-28 18:42:53 +0100 | rekahsoft | (~rekahsoft@bras-base-orllon1103w-grc-06-76-69-85-220.dsl.bell.ca) (Ping timeout: 245 seconds) |
2024-12-28 18:40:57 +0100 | lisbeths | (uid135845@id-135845.lymington.irccloud.com) lisbeths |
2024-12-28 18:40:18 +0100 | Xe | (~Xe@perl/impostor/xe) (Quit: ZNC 1.9.1 - https://znc.in) |
2024-12-28 18:40:12 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod |
2024-12-28 18:39:29 +0100 | Everything | (~Everythin@195.138.86.118) Everything |
2024-12-28 18:39:11 +0100 | ubert | (~Thunderbi@p200300ecdf117c91b816f4b90c54fbf2.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2024-12-28 18:39:11 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-28 18:34:34 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-28 18:31:07 +0100 | <enikar> | I'm just lazier than haskell. Where haskell says ok, I'll do it later and ends up evaluating everything to print results, I say ok, I'll print the result maybe another day and take a rest :D |
2024-12-28 18:30:43 +0100 | <plitter> | monochrom: I thought this already was lazy https://termbin.com/sz27 :) |
2024-12-28 18:26:18 +0100 | <plitter> | To be fair, it is not just laziness. (at least for me who is not yet used to haskell) More like working hard to hardly work! Investment in the future :P |
2024-12-28 18:23:45 +0100 | <enikar> | laziness is sometimes very usefull |
2024-12-28 18:22:49 +0100 | <enikar> | monochrom: nice, it's a good idea. I just wondered if i could let haskell do the job with lazy evaluation and recursive definition :) |
2024-12-28 18:22:20 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-12-28 18:20:55 +0100 | Xe | (~Xe@perl/impostor/xe) Xe |
2024-12-28 18:19:43 +0100 | <monochrom> | Similarly, you can let Haskell do dynamic programming for you by using a lazy array/vector! |
2024-12-28 18:19:21 +0100 | Xe | (~Xe@perl/impostor/xe) (Quit: ZNC 1.9.1 - https://znc.in) |
2024-12-28 18:18:49 +0100 | <monochrom> | i.e., it is OK to have resolvable self reference such as: m = Map.fromList [(1, "a"), (2, (m!1) ++ "b"] |
2024-12-28 18:17:53 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-28 18:17:37 +0100 | acidjnk_new3 | (~acidjnk@p200300d6e7283f42bc4ebb891d7561a4.dip0.t-ipconnect.de) acidjnk |
2024-12-28 18:17:37 +0100 | <monochrom> | If you use Data.Map.Lazy, lazy evaluation will figure out the dependency for you. >:) |
2024-12-28 18:17:02 +0100 | <enikar> | remain to solve the dependency graph |
2024-12-28 18:15:05 +0100 | <enikar> | plitter: to solve I'd probably use a Map. The key will be variable name, and the value just the value of this variable ;) |
2024-12-28 18:13:26 +0100 | <monochrom> | Hot take: You don't even need overloaded record dot, you can just write "myrecord & myfield". |
2024-12-28 18:12:35 +0100 | <plitter> | Thanks everyone! AoC solved! |
2024-12-28 18:12:31 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-28 18:10:31 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) stiell |
2024-12-28 18:05:46 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-28 18:01:40 +0100 | <monochrom> | (or actual record type system --- but I sneakily classify that as static semantics, therefore still covered haha) |
2024-12-28 18:00:30 +0100 | <monochrom> | I like record syntax, it is not a wart, and it is pretty much compatible with e.g. SML record syntax. The wart is in the semantics --- lacking actual record semantics. |
2024-12-28 17:52:49 +0100 | <monochrom> | loonycyborg: I have a hunch that the real cause is that indentation desugars to {foo ; bar; } but record syntax wants {foo , bar}, i.e., the {} part is fine, the issue is with ; vs , and also extra ; |
2024-12-28 17:36:34 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-12-28 17:35:16 +0100 | <plitter> | ok, I'll try to find the other keywords, fixing the amount of let and maybe outside of main :) thanks for the suggestions! |
2024-12-28 17:34:04 +0100 | lxsameer | (~lxsameer@Serene/lxsameer) (Quit: WeeChat 4.4.2) |
2024-12-28 17:33:11 +0100 | euleritian | (~euleritia@dynamic-176-006-135-074.176.6.pool.telefonica.de) |
2024-12-28 17:32:50 +0100 | euleritian | (~euleritia@dynamic-176-006-135-074.176.6.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-12-28 17:32:15 +0100 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-12-28 17:31:27 +0100 | <enikar> | maybe don't do all the stuff in main will help |
2024-12-28 17:31:14 +0100 | <int-e> | (and there are more keywords to find) |
2024-12-28 17:30:26 +0100 | <int-e> | plitter: but the error you're getting is because `if` is a keyword |