Home liberachat/#haskell: Logs Calendar

Logs on 2024-06-18 (liberachat/#haskell)

00:01:37 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
00:10:37 madhavanmiui joins (~madhavanm@2409:40f4:102d:54ba:8000::)
00:11:32 × madhavanmiui quits (~madhavanm@2409:40f4:102d:54ba:8000::) (Client Quit)
00:14:25 segfaultfizzbuzz joins (~segfaultf@23-93-189-95.fiber.dynamic.sonic.net)
00:18:29 × segfaultfizzbuzz quits (~segfaultf@23-93-189-95.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds)
00:24:15 × solaire quits (~solaire@syn-024-165-026-201.res.spectrum.com) (Ping timeout: 264 seconds)
00:25:38 zzz joins (~yin@user/zero)
00:28:40 solaire joins (~solaire@syn-024-165-026-201.res.spectrum.com)
00:33:17 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 240 seconds)
00:34:13 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 255 seconds)
00:34:24 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
00:34:30 segfaultfizzbuzz joins (~segfaultf@23-93-189-95.fiber.dynamic.sonic.net)
00:34:39 euleritian joins (~euleritia@dynamic-176-003-080-103.176.3.pool.telefonica.de)
00:36:11 × ystael quits (~ystael@user/ystael) (Ping timeout: 268 seconds)
00:37:23 × henry40408 quits (~henry4040@175.182.111.183) (Quit: Ping timeout (120 seconds))
00:37:51 henry40408 joins (~henry4040@175.182.111.183)
00:38:28 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
00:39:56 × euleritian quits (~euleritia@dynamic-176-003-080-103.176.3.pool.telefonica.de) (Read error: Connection reset by peer)
00:40:13 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
00:46:01 <cheater> what is currently the best way to get tags?
00:46:04 <cheater> ghc-tags seems broken
00:46:38 <Axman6> I feel like I've seen people use ctags recently... maybe Edsko on a Haskell Unfolder episode?
00:49:10 <cheater> universal-ctags (the best updated version of ctags) has kinda barebones haskell support
00:49:27 <cheater> like it will only identify functions, modules, types, and constructors
00:49:37 <cheater> eg if you want classes you're shit outta luck
00:49:44 <cheater> can hls generate tags? i have hls
00:53:27 × segfaultfizzbuzz quits (~segfaultf@23-93-189-95.fiber.dynamic.sonic.net) (Ping timeout: 268 seconds)
00:54:30 <geekosaur> @hackage hasktags
00:54:30 <lambdabot> https://hackage.haskell.org/package/hasktags
00:55:21 <geekosaur> I don't think HLS either generates or uses tags files, it does its own indexing
00:56:10 Square joins (~Square4@user/square)
00:57:51 <cheater> is hasktags better/worse than ghc-tags-plugin?
00:58:10 <cheater> my job uses ghc-tags-plugin but i actually do need an executable and not just the output
00:59:16 <geekosaur> I would suspect that ghc-tags-plugin is somewhat better, but something that works is necessarily better than something that got broken by a compiler update
01:00:25 <geekosaur> also, hasktags is maintained by the ghc team, so it's probably pretty decent
01:00:44 <geekosaur> (I don't have direct experience since I haven't used tags in a while)
01:00:51 <cheater> i'm asking because there's a ghc-tags fork that uses whatever ghc-tags-plugin uses, but it's on github and so i'd have to compile it ...
01:01:05 <cheater> yeah i'm trying to get taglist.vim to be useful for haskell
01:02:46 <geekosaur> ghc-tags normally uses the GHC API, ghc-tags-plugin is a ghc plugin that runs at compile time and introspects your program's AST
01:03:24 <geekosaur> they _should_ be the same, except that the plugin API is somewhat more stable than ghc-api
01:03:35 × solaire quits (~solaire@syn-024-165-026-201.res.spectrum.com) (Ping timeout: 264 seconds)
01:06:19 <cheater> lmao @ universal ctags thinks module Foo.Bar.Baz is just called "Foo"
01:06:29 <geekosaur> right, ghc-tags-plugin's description links to the ghc-tags fork you mentioned 🙂
01:06:40 <cheater> geekosaur: there u go
01:06:50 <geekosaur> and mentions that it uses the same ghc-tags-core library, unlike standard ghc-tags
01:06:51 × ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (Ping timeout: 264 seconds)
01:09:29 × raehik quits (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 268 seconds)
01:09:32 johnw_ joins (~johnw@69.62.242.138)
01:09:47 × johnw quits (~johnw@69.62.242.138) (Ping timeout: 268 seconds)
01:10:28 × Midjak quits (~MarciZ@82.66.147.146) (Quit: This computer has gone to sleep)
01:10:33 <cheater> yup
01:13:15 ezzieyguywuf joins (~Unknown@user/ezzieyguywuf)
01:13:52 <cheater> now if i could figure out what the different tag types mean in hasktags, and which types they have
01:14:42 <cheater> huh, marcweber is not on irc. that's funny, he's usually always everywhere at all times
01:18:12 solaire joins (~solaire@syn-024-165-026-201.res.spectrum.com)
01:22:47 × solaire quits (~solaire@syn-024-165-026-201.res.spectrum.com) (Ping timeout: 264 seconds)
01:22:49 × johnw_ quits (~johnw@69.62.242.138) (Ping timeout: 256 seconds)
01:22:49 johnw joins (~johnw@2601:204:dc00:1db0:c08c:648c:ac3:ce1f)
01:23:39 solaire joins (~solaire@syn-024-165-026-201.res.spectrum.com)
01:28:24 × solaire quits (~solaire@syn-024-165-026-201.res.spectrum.com) (Ping timeout: 256 seconds)
01:34:17 <cheater> ugh, fuck. i just noticed that hasktags has a bug.
01:34:56 segfaultfizzbuzz joins (~segfaultf@23-93-189-95.fiber.dynamic.sonic.net)
01:35:23 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds)
01:38:51 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
01:39:02 × xdminsy quits (~xdminsy@117.147.70.231) (Quit: Konversation terminated!)
01:43:47 × TactfulCitrus quits (~al@2a02:8012:87a6:0:fbe0:6116:6e30:e047) (Ping timeout: 256 seconds)
01:48:03 <cheater> yeah nah yeah i looked at the -x implementation and it's kind of half baked
01:48:11 <cheater> it's like he aborted working on it halfway through
01:49:00 <cheater> geekosaur: did you say marc weber is on the ghc team or something?
01:50:06 <geekosaur> no?
01:50:32 <cheater> you said hasktags is maintained by the ghc team
01:50:38 <cheater> hasktags is maintained by marc weber
01:50:56 <cheater> i guess andreas abel put in a patch recently
01:51:01 <geekosaur> got that slightly wrong, I see. it was _authored_ by the GHC team, it's apparently maintained by others now
01:51:10 <cheater> ahhh gotcha
01:51:22 <cheater> one of the classic blunders!
01:51:50 <cheater> the most famous of which is never engage in a land war in asia
01:53:10 Pixi` joins (~Pixi@user/pixi)
01:53:34 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds)
01:56:39 × Pixi quits (~Pixi@user/pixi) (Ping timeout: 268 seconds)
01:57:35 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
01:58:49 <cheater> ah, there's a workaround for the bug at least
02:00:10 × segfaultfizzbuzz quits (~segfaultf@23-93-189-95.fiber.dynamic.sonic.net) (Ping timeout: 255 seconds)
02:09:55 × xff0x quits (~xff0x@2405:6580:b080:900:a539:7039:59e2:58af) (Ping timeout: 268 seconds)
02:13:07 × zzz quits (~yin@user/zero) (Ping timeout: 246 seconds)
02:17:03 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
02:20:15 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
02:21:06 philopsos1 joins (~caecilius@user/philopsos)
02:22:43 × xigua quits (~xigua@user/xigua) (Remote host closed the connection)
02:22:48 madhavanmiui joins (~madhavanm@2409:40f4:101b:de3e:8000::)
02:23:06 × madhavanmiui quits (~madhavanm@2409:40f4:101b:de3e:8000::) (Remote host closed the connection)
02:24:36 xdminsy joins (~xdminsy@117.147.70.231)
02:33:25 × rvalue quits (~rvalue@user/rvalue) (Read error: Connection reset by peer)
02:33:55 rvalue joins (~rvalue@user/rvalue)
02:35:20 <cheater> ooooof....
02:43:05 solaire joins (~solaire@syn-024-165-026-201.res.spectrum.com)
02:47:39 × solaire quits (~solaire@syn-024-165-026-201.res.spectrum.com) (Ping timeout: 264 seconds)
02:47:49 solaire joins (~solaire@syn-024-165-026-201.res.spectrum.com)
02:50:34 × Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
02:51:52 srk joins (~sorki@user/srk)
02:52:46 × solaire quits (~solaire@syn-024-165-026-201.res.spectrum.com) (Ping timeout: 268 seconds)
02:52:54 solaire joins (~solaire@syn-024-165-026-201.res.spectrum.com)
02:55:45 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
02:56:18 × johnw quits (~johnw@2601:204:dc00:1db0:c08c:648c:ac3:ce1f) (Quit: ZNC - http://znc.in)
02:56:54 johnw joins (~johnw@2601:204:dc00:1db0:c08c:648c:ac3:ce1f)
02:57:19 × solaire quits (~solaire@syn-024-165-026-201.res.spectrum.com) (Ping timeout: 255 seconds)
02:57:19 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 255 seconds)
02:58:41 × td_ quits (~td@i53870910.versanet.de) (Ping timeout: 252 seconds)
03:00:21 td_ joins (~td@i53870936.versanet.de)
03:01:27 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
03:09:24 johnw_ joins (~johnw@69.62.242.138)
03:09:25 × johnw quits (~johnw@2601:204:dc00:1db0:c08c:648c:ac3:ce1f) (Ping timeout: 268 seconds)
03:14:12 segfaultfizzbuzz joins (~segfaultf@23-93-189-95.fiber.dynamic.sonic.net)
03:14:18 × johnw_ quits (~johnw@69.62.242.138) (Quit: ZNC - http://znc.in)
03:18:26 johnw joins (~johnw@69.62.242.138)
03:18:55 × k_hachig_ quits (~k_hachig@65.94.221.127) (Ping timeout: 255 seconds)
03:20:13 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
03:20:48 euleritian joins (~euleritia@dynamic-176-003-081-111.176.3.pool.telefonica.de)
03:36:27 × segfaultfizzbuzz quits (~segfaultf@23-93-189-95.fiber.dynamic.sonic.net) (Quit: segfaultfizzbuzz)
03:36:55 × philopsos1 quits (~caecilius@user/philopsos) (Ping timeout: 255 seconds)
03:39:49 aforemny joins (~aforemny@2001:9e8:6cd9:b400:dc6a:27f6:ff46:b676)
03:40:29 × aforemny_ quits (~aforemny@i59F516FA.versanet.de) (Ping timeout: 240 seconds)
03:44:26 k_hachig_ joins (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca)
03:54:46 TactfulCitrus joins (~al@2a02:8012:87a6:0:fbe0:6116:6e30:e047)
03:57:48 <cheater> can i somehow set a buffer or window to always refresh a file if it's modified, without asking?
03:58:47 × tessier quits (~treed@ec2-184-72-149-67.compute-1.amazonaws.com) (Ping timeout: 264 seconds)
04:00:13 tessier joins (~treed@ip72-220-57-194.sd.sd.cox.net)
04:02:55 <geekosaur> `:set autoread`, if you mean vim
04:03:08 <cheater> oh. wrong channel again lmao
04:03:12 <cheater> thanks geekosaur
04:03:33 <cheater> i'm trying to get hasktags to work with taglist
04:03:35 <cheater> and i'm almost there
04:03:55 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 255 seconds)
04:04:01 <cheater> the status bar display doesn't work yet. but the tag list shows up nicely and it's much richer than with u-ctags
04:05:23 <cheater> any clue what this is about? https://new.reddit.com/r/haskell/comments/1dhpieg/comment/l90zuut/?context=3
04:11:03 rosco joins (~rosco@175.136.155.137)
04:12:22 <monochrom> If it's emacs, look into auto-revert-mode
04:16:50 × euleritian quits (~euleritia@dynamic-176-003-081-111.176.3.pool.telefonica.de) (Read error: Connection reset by peer)
04:17:08 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
04:23:44 × nkatte quits (~nkatte@191.177.174.42) (Ping timeout: 268 seconds)
04:36:59 × tabemann quits (~tabemann@50.202.131.11) (Ping timeout: 268 seconds)
04:41:03 × Square quits (~Square4@user/square) (Ping timeout: 264 seconds)
04:41:20 takuan joins (~takuan@178-116-218-225.access.telenet.be)
04:45:00 × k_hachig_ quits (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca) (Ping timeout: 268 seconds)
05:01:28 k_hachig_ joins (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca)
05:02:21 × rosco quits (~rosco@175.136.155.137) (Quit: Lost terminal)
05:02:22 michalz joins (~michalz@185.246.207.218)
05:02:26 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
05:03:25 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
05:12:19 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds)
05:13:22 euleritian joins (~euleritia@dynamic-176-003-081-111.176.3.pool.telefonica.de)
05:13:27 danza joins (~francesco@151.35.166.104)
05:15:55 × euleritian quits (~euleritia@dynamic-176-003-081-111.176.3.pool.telefonica.de) (Read error: Connection reset by peer)
05:16:12 euleritian joins (~euleritia@77.22.252.56)
05:18:51 rosco joins (~rosco@175.136.155.137)
05:20:14 × michalz quits (~michalz@185.246.207.218) (Quit: ZNC 1.9.0 - https://znc.in)
05:22:59 michalz joins (~michalz@185.246.207.221)
05:27:33 andrei_n joins (~andrei_n@2a02:a03f:c091:a800:1810:3a75:2e9f:3729)
05:27:33 × andrei_n quits (~andrei_n@2a02:a03f:c091:a800:1810:3a75:2e9f:3729) (Changing host)
05:27:33 andrei_n joins (~andrei_n@user/andrei-n:62396)
05:28:11 philopsos1 joins (~caecilius@user/philopsos)
05:29:25 × euleritian quits (~euleritia@77.22.252.56) (Ping timeout: 255 seconds)
05:30:08 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
05:30:21 euleritian joins (~euleritia@dynamic-176-006-022-230.176.6.pool.telefonica.de)
05:39:55 acidjnk_new joins (~acidjnk@p200300d6e714dc44fcfbcb66e1510efc.dip0.t-ipconnect.de)
05:40:40 × TactfulCitrus quits (~al@2a02:8012:87a6:0:fbe0:6116:6e30:e047) (Ping timeout: 255 seconds)
05:45:18 <edwardk> cheater: have you tried fast-tags?
05:47:32 <edwardk> cheater: i've used it to pretty good effect, and it is by far the fastest haskell tag generator
05:47:48 <edwardk> (mainly because it cheats rather than use a full parser)
06:05:25 × joeyadams quits (~joeyadams@2603:6010:5100:2ed:381d:57ce:f49c:8828) (Quit: Leaving)
06:06:15 <Axman6> ^(module (.+) (\(.+\))? where|^[a-z][a-zA-Z0-9_']*)
06:06:23 <Axman6> (that definitely won't work)
06:07:57 <probie> cheater: Re the reddit post: Vincent wrote a bunch of widely used Haskell libraries like cryptonite. Vincent has decided he doesn't want to maintain them any longer, but also won't hand over maintainership to other people (which IMO is perfectly reasonable). You can find the modern community fork of most of those packages under the name crypton
06:27:35 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
06:29:31 × masterbuilder quits (~quassel@user/masterbuilder) (Read error: Connection reset by peer)
06:30:40 masterbuilder joins (~quassel@user/masterbuilder)
06:34:34 × Pixi` quits (~Pixi@user/pixi) (Quit: Leaving)
06:35:27 Pixi joins (~Pixi@user/pixi)
07:07:28 × anpad quits (~pandeyan@user/anpad) (Ping timeout: 246 seconds)
07:08:34 × euleritian quits (~euleritia@dynamic-176-006-022-230.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
07:09:11 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
07:09:20 anpad joins (~pandeyan@user/anpad)
07:10:37 × mmaruseacph2 quits (~mihai@mihai.page) (Ping timeout: 246 seconds)
07:12:19 mmaruseacph2 joins (~mihai@mihai.page)
07:15:09 × c_wraith quits (~c_wraith@adjoint.us) (Ping timeout: 256 seconds)
07:16:50 c_wraith joins (~c_wraith@adjoint.us)
07:18:19 × danza quits (~francesco@151.35.166.104) (Ping timeout: 255 seconds)
07:20:57 × emmanuelux quits (~emmanuelu@user/emmanuelux) (Quit: au revoir)
07:22:52 soverysour joins (~soverysou@user/soverysour)
07:25:15 sord937 joins (~sord937@gateway/tor-sasl/sord937)
07:27:35 × soverysour quits (~soverysou@user/soverysour) (Ping timeout: 264 seconds)
07:45:23 × philopsos1 quits (~caecilius@user/philopsos) (Ping timeout: 268 seconds)
07:49:13 × ft quits (~ft@p3e9bcb39.dip0.t-ipconnect.de) (Quit: leaving)
07:53:15 TactfulCitrus joins (~al@2a02:8012:87a6:0:fbe0:6116:6e30:e047)
07:58:23 machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net)
07:59:13 × andjjj23 quits (~irc@107.170.228.47) (Ping timeout: 272 seconds)
08:05:40 gmg joins (~user@user/gehmehgeh)
08:20:13 × k_hachig_ quits (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca) (Ping timeout: 268 seconds)
08:21:57 × ak-1 quits (~ak-1@149.50.189.14) (Quit: ak-1)
08:24:13 cfricke joins (~cfricke@user/cfricke)
08:28:57 × glguy quits (g@libera/staff/glguy) (Ping timeout: 612 seconds)
08:30:49 chele joins (~chele@user/chele)
08:53:05 Guest97 joins (~Guest97@2601:244:8401:b790:185:262d:4292:5aaf)
08:56:41 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
08:59:56 danse-nr3 joins (~danse-nr3@151.35.159.42)
09:08:58 × Guest97 quits (~Guest97@2601:244:8401:b790:185:262d:4292:5aaf) (Quit: Client closed)
09:11:43 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
09:13:11 ubert joins (~Thunderbi@2a02:8109:ab8a:5a00:f3c9:3256:4c54:e84a)
09:14:41 <cheater> lmao how does this even happen https://paste.tomsmeding.com/RB6UtcdQ
09:14:55 <cheater> i thought nix was supposed to be like. a good build system or something
09:15:28 × tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
09:16:23 lxsameer joins (~lxsameer@Serene/lxsameer)
09:16:54 × gmg quits (~user@user/gehmehgeh) (Ping timeout: 260 seconds)
09:17:26 <tomsmeding> however good a build system is, it's not any better than the packages that it is asked to build :)
09:18:05 tomsmeding doesn't know much about nix
09:18:05 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
09:18:19 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
09:19:06 gmg joins (~user@user/gehmehgeh)
09:23:00 <cheater> tomsmeding: so the problem with it is that a dependency for two packages is clashing
09:25:37 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
09:28:48 sawilagar joins (~sawilagar@user/sawilagar)
09:30:32 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
09:32:33 <danse-nr3> <monochrom> Denotational semantics focuses on whether there is a value and what the value is. It leaves open how (evaluation strategy) to get it, and therefore how much it costs
09:32:52 <danse-nr3> do you refer to haskell's den sem monochrom?
09:36:31 k_hachig_ joins (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca)
09:37:01 <cheater> danse-nr3: if you want evaluation strategy out of denotational semantics, you can generate operational semantics out of denotational semantics.
09:40:12 <danse-nr3> hmm interesting. I guess i had a misconception about what operational semantics mean. Cheers
09:41:49 × k_hachig_ quits (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca) (Ping timeout: 272 seconds)
09:45:42 <cheater> why do you think that?
09:45:54 <cheater> lmao there's no fucking way ghc-tags actually just wrote to a file called - on my disk
09:48:09 <Hecate> cheater: to be frank, if it was passed "-f -" it will absolutely write a file called "-"
09:48:23 <cheater> yeah, that's wrong
09:49:34 <Hecate> looks like your expectations are wrong, the program is only doing what you tell it to do
09:50:39 <cheater> i'm sorry, i'm not getting into that right now, my expectations aren't wrong and i'm not getting gaslit about it or whatever
09:51:22 <danse-nr3> because i thought evaluation strategy was to be understood by a notation, while operational semantics was more about implementations. But probably i was wrong
09:51:31 <cheater> every single other tags generator understands -f - or -o - to be "output to stdout" as do a bunch of text editors
09:52:11 <cheater> danse-nr3: oh. well, if you're thinking in those terms, then neither of them are about evaluation strategy
09:52:29 <cheater> but, once you have operational semantics, you have *some* evaluation strategy
09:53:01 <danse-nr3> i see thanks
09:55:23 <cheater> ok so i don't really know what to make of the output of coot/ghc-tags. (i'm guessing it's the same as normal ghc-tags but just to make sure). some things are tagged as kind:lambda or kind:^ or kind:triple-equals and idk what those are supposed to mean
09:57:45 <Hecate> cheater: every single other tag generator does, until you find one that doesn't because nobody asked for it.
09:58:02 <cheater> why are you arguing about this? what's in it for you?
09:58:15 <cheater> idk why this conversation is hapening
09:58:20 <cheater> +p
10:00:29 <Hecate> cheater: well you literally started complaining, and also you accused me of gaslighting :))
10:02:03 <cheater> right. take a step back and figure that one out rather than continue on the path of most resistance
10:03:54 <Hecate> it's alright, I've been using ghc-tags for a couple of years without feeling the needs to be sour on IRC, life's pretty good to me right now
10:04:31 <cheater> cool
10:05:58 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 246 seconds)
10:06:05 andjjj23 joins (~irc@107.170.228.47)
10:06:49 __monty__ joins (~toonn@user/toonn)
10:08:45 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 268 seconds)
10:17:02 k_hachig_ joins (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca)
10:18:32 <haskellbridge> <sm> how's haddock maintainership treating you Hecate ?
10:21:35 × k_hachig_ quits (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca) (Ping timeout: 264 seconds)
10:24:15 zmt00 joins (~zmt00@user/zmt00)
10:25:51 × zmt01 quits (~zmt00@user/zmt00) (Ping timeout: 260 seconds)
10:26:19 <Hecate> sm: not bad, thank you. Lots of cruft to remove, but also new people to onboard
10:28:30 <haskellbridge> <sm> excellent
10:28:48 <haskellbridge> <sm> thanks haddock hackers
10:40:36 noumenon joins (~noumenon@2a01:799:cd8:e700:aa7e:eaff:fede:ff94)
10:43:36 × m5zs7k quits (aquares@web10.mydevil.net) (Ping timeout: 268 seconds)
10:44:42 m5zs7k joins (aquares@web10.mydevil.net)
10:45:13 Digitteknohippie joins (~user@user/digit)
10:46:59 × Digit quits (~user@user/digit) (Ping timeout: 268 seconds)
10:47:00 verde joins (~user@user/verde)
10:49:01 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
10:49:42 ec joins (~ec@gateway/tor-sasl/ec)
10:52:10 <danse-nr3> right it moved to the ghci repo recently, correct? Has that helped?
10:52:17 <danse-nr3> ghc sorry
10:52:23 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
10:56:45 Digitteknohippie is now known as Digit
10:57:06 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
10:57:10 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Quit: WeeChat 4.1.2)
11:01:19 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
11:01:29 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
11:06:54 × TactfulCitrus quits (~al@2a02:8012:87a6:0:fbe0:6116:6e30:e047) (Ping timeout: 255 seconds)
11:08:56 <Hecate> danse-nr3: yep
11:09:20 xff0x joins (~xff0x@2405:6580:b080:900:fd6a:2265:c425:f820)
11:09:30 CiaoSen joins (~Jura@2a05:5800:2d9:7200:e6b9:7aff:fe80:3d03)
11:13:39 × danse-nr3 quits (~danse-nr3@151.35.159.42) (Ping timeout: 255 seconds)
11:16:19 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
11:18:01 k_hachig_ joins (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca)
11:22:50 × k_hachig_ quits (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca) (Ping timeout: 256 seconds)
11:23:51 TactfulCitrus joins (al@gateway/vpn/protonvpn/tactfulcitrus)
11:25:28 glguy joins (g@libera/staff/glguy)
11:28:39 JamesMowery4 joins (~JamesMowe@ip98-167-207-182.ph.ph.cox.net)
11:29:17 nschoe- joins (~nschoe@2a01:e0a:8e:a190:e2d2:7213:77e6:ad6)
11:30:26 Roy_Mustang joins (A_D@libera/staff/dragon)
11:30:28 todi_away joins (~todi@p57803331.dip0.t-ipconnect.de)
11:30:33 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
11:30:58 teesquare_ joins (~teesquare@user/teesquare)
11:31:27 srk- joins (~sorki@user/srk)
11:31:39 bairyn_ joins (~bairyn@50.250.232.19)
11:31:55 dumptruckman_ joins (~dumptruck@69-164-210-35.ip.linodeusercontent.com)
11:31:58 ezzieygu1wuf joins (~Unknown@user/ezzieyguywuf)
11:32:27 flounders_ joins (~flounders@24.246.176.178)
11:32:41 rosco_ joins (~rosco@175.136.155.137)
11:33:25 meooow_ joins (~meooow@2400:6180:100:d0::ad9:e001)
11:36:41 × verde quits (~user@user/verde) (*.net *.split)
11:36:41 × rosco quits (~rosco@175.136.155.137) (*.net *.split)
11:36:41 × srk quits (~sorki@user/srk) (*.net *.split)
11:36:41 × ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (*.net *.split)
11:36:41 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (*.net *.split)
11:36:41 × dumptruckman quits (~dumptruck@69-164-210-35.ip.linodeusercontent.com) (*.net *.split)
11:36:41 × brett303 quits (~brett@cpc91312-watf11-2-0-cust1213.15-2.cable.virginm.net) (*.net *.split)
11:36:41 × flounders quits (~flounders@24.246.176.178) (*.net *.split)
11:36:41 × JamesMowery quits (~JamesMowe@ip98-167-207-182.ph.ph.cox.net) (*.net *.split)
11:36:41 × nschoe quits (~nschoe@82-65-202-30.subs.proxad.net) (*.net *.split)
11:36:41 × TimWolla quits (~timwolla@2a01:4f8:150:6153:beef::6667) (*.net *.split)
11:36:41 × gorignak quits (~gorignak@user/gorignak) (*.net *.split)
11:36:41 × op_4 quits (~tslil@user/op-4/x-9116473) (*.net *.split)
11:36:41 × todi quits (~todi@p57803331.dip0.t-ipconnect.de) (*.net *.split)
11:36:41 × smalltalkman quits (uid545680@id-545680.hampstead.irccloud.com) (*.net *.split)
11:36:41 × vizimajac quits (vizimajac@shell.xshellz.com) (*.net *.split)
11:36:42 × remmie quits (ianremsen@tilde.team) (*.net *.split)
11:36:42 × bairyn quits (~bairyn@50.250.232.19) (*.net *.split)
11:36:42 × tapas quits (sid467876@id-467876.ilkley.irccloud.com) (*.net *.split)
11:36:42 × davean quits (~davean@davean.sciesnet.net) (*.net *.split)
11:36:42 × A_Dragon quits (A_D@libera/staff/dragon) (*.net *.split)
11:36:42 × hamishmack quits (sid389057@id-389057.hampstead.irccloud.com) (*.net *.split)
11:36:42 × T_S_____ quits (sid501726@id-501726.uxbridge.irccloud.com) (*.net *.split)
11:36:42 × Kamuela quits (sid111576@id-111576.tinside.irccloud.com) (*.net *.split)
11:36:42 × nisstyre quits (wes@user/nisstyre) (*.net *.split)
11:36:42 × jakesyl_____ quits (sid56879@id-56879.hampstead.irccloud.com) (*.net *.split)
11:36:42 × liskin quits (~liskin@xmonad/liskin) (*.net *.split)
11:36:42 × mrvdb quits (~mrvdb@2001:19f0:5000:8582:5400:ff:fe07:3df5) (*.net *.split)
11:36:42 × lexi-lambda quits (sid92601@id-92601.hampstead.irccloud.com) (*.net *.split)
11:36:42 × SanchayanMaity quits (sid478177@id-478177.hampstead.irccloud.com) (*.net *.split)
11:36:42 × gmc quits (sid58314@id-58314.ilkley.irccloud.com) (*.net *.split)
11:36:42 × mankyKitty quits (sid31287@id-31287.helmsley.irccloud.com) (*.net *.split)
11:36:42 × astra quits (sid289983@id-289983.hampstead.irccloud.com) (*.net *.split)
11:36:42 × caasih quits (sid13241@id-13241.ilkley.irccloud.com) (*.net *.split)
11:36:42 × SrPx quits (sid108780@id-108780.uxbridge.irccloud.com) (*.net *.split)
11:36:42 × teesquare quits (~teesquare@user/teesquare) (*.net *.split)
11:36:42 × xacktm quits (xacktm@user/xacktm) (*.net *.split)
11:36:42 × nrr_______ quits (sid20938@id-20938.lymington.irccloud.com) (*.net *.split)
11:36:42 × meooow quits (~meooow@165.232.184.169) (*.net *.split)
11:36:42 × haasn quits (sid579015@id-579015.hampstead.irccloud.com) (*.net *.split)
11:36:42 × codedmart quits (codedmart@2600:3c01::f03c:92ff:fefe:8511) (*.net *.split)
11:36:42 × nicole quits (ilbelkyr@libera/staff/ilbelkyr) (*.net *.split)
11:36:42 Lord_of_Life_ is now known as Lord_of_Life
11:36:45 dumptruckman_ is now known as dumptruckman
11:36:45 srk- is now known as srk
11:36:45 JamesMowery4 is now known as JamesMowery
11:37:38 gorignak joins (~gorignak@user/gorignak)
11:38:43 × andrei_n quits (~andrei_n@user/andrei-n:62396) (Quit: Leaving)
11:44:15 davean joins (~davean@davean.sciesnet.net)
11:44:22 × d34df00d quits (~d34df00d@2600:1702:4f1b:7c10::43) (Excess Flood)
11:44:22 verde joins (~user@user/verde)
11:44:22 TimWolla joins (~timwolla@2a01:4f8:150:6153:beef::6667)
11:44:22 op_4 joins (~tslil@user/op-4/x-9116473)
11:44:22 smalltalkman joins (uid545680@id-545680.hampstead.irccloud.com)
11:44:22 vizimajac joins (vizimajac@shell.xshellz.com)
11:44:22 remmie joins (ianremsen@tilde.team)
11:44:22 tapas joins (sid467876@id-467876.ilkley.irccloud.com)
11:44:22 hamishmack joins (sid389057@id-389057.hampstead.irccloud.com)
11:44:22 T_S_____ joins (sid501726@id-501726.uxbridge.irccloud.com)
11:44:22 Kamuela joins (sid111576@id-111576.tinside.irccloud.com)
11:44:22 nisstyre joins (wes@user/nisstyre)
11:44:22 jakesyl_____ joins (sid56879@id-56879.hampstead.irccloud.com)
11:44:22 liskin joins (~liskin@xmonad/liskin)
11:44:22 mrvdb joins (~mrvdb@2001:19f0:5000:8582:5400:ff:fe07:3df5)
11:44:22 lexi-lambda joins (sid92601@id-92601.hampstead.irccloud.com)
11:44:22 SanchayanMaity joins (sid478177@id-478177.hampstead.irccloud.com)
11:44:22 gmc joins (sid58314@id-58314.ilkley.irccloud.com)
11:44:22 astra joins (sid289983@id-289983.hampstead.irccloud.com)
11:44:22 mankyKitty joins (sid31287@id-31287.helmsley.irccloud.com)
11:44:22 caasih joins (sid13241@id-13241.ilkley.irccloud.com)
11:44:22 SrPx joins (sid108780@id-108780.uxbridge.irccloud.com)
11:44:22 xacktm joins (xacktm@user/xacktm)
11:44:22 nrr_______ joins (sid20938@id-20938.lymington.irccloud.com)
11:44:22 haasn joins (sid579015@id-579015.hampstead.irccloud.com)
11:44:22 codedmart joins (codedmart@2600:3c01::f03c:92ff:fefe:8511)
11:44:22 nicole joins (ilbelkyr@libera/staff/ilbelkyr)
11:46:30 × noumenon quits (~noumenon@2a01:799:cd8:e700:aa7e:eaff:fede:ff94) (Quit: Leaving)
11:48:55 Roy_Mustang is now known as A_Dragon
11:55:42 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
11:58:52 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
12:01:54 danse-nr3 joins (~danse-nr3@151.35.159.42)
12:03:28 barthandelous01 joins (~calebbrze@216.158.140.68)
12:08:05 × CalimeroTeknik quits (~calimero@ctkarch.org) (Changing host)
12:08:05 CalimeroTeknik joins (~calimero@user/calimeroteknik)
12:08:20 aforemny_ joins (~aforemny@2001:9e8:6cdf:6100:2338:8f16:3564:eee6)
12:09:00 × aforemny quits (~aforemny@2001:9e8:6cd9:b400:dc6a:27f6:ff46:b676) (Ping timeout: 268 seconds)
12:15:39 × verde quits (~user@user/verde) (*.net *.split)
12:15:39 × TimWolla quits (~timwolla@2a01:4f8:150:6153:beef::6667) (*.net *.split)
12:15:39 × op_4 quits (~tslil@user/op-4/x-9116473) (*.net *.split)
12:15:39 × smalltalkman quits (uid545680@id-545680.hampstead.irccloud.com) (*.net *.split)
12:15:39 × vizimajac quits (vizimajac@shell.xshellz.com) (*.net *.split)
12:15:39 × remmie quits (ianremsen@tilde.team) (*.net *.split)
12:15:39 × tapas quits (sid467876@id-467876.ilkley.irccloud.com) (*.net *.split)
12:15:39 × hamishmack quits (sid389057@id-389057.hampstead.irccloud.com) (*.net *.split)
12:15:39 × T_S_____ quits (sid501726@id-501726.uxbridge.irccloud.com) (*.net *.split)
12:15:39 × Kamuela quits (sid111576@id-111576.tinside.irccloud.com) (*.net *.split)
12:15:39 × nisstyre quits (wes@user/nisstyre) (*.net *.split)
12:15:39 × jakesyl_____ quits (sid56879@id-56879.hampstead.irccloud.com) (*.net *.split)
12:15:39 × liskin quits (~liskin@xmonad/liskin) (*.net *.split)
12:15:39 × mrvdb quits (~mrvdb@2001:19f0:5000:8582:5400:ff:fe07:3df5) (*.net *.split)
12:15:39 × lexi-lambda quits (sid92601@id-92601.hampstead.irccloud.com) (*.net *.split)
12:15:39 × SanchayanMaity quits (sid478177@id-478177.hampstead.irccloud.com) (*.net *.split)
12:15:39 × gmc quits (sid58314@id-58314.ilkley.irccloud.com) (*.net *.split)
12:15:39 × mankyKitty quits (sid31287@id-31287.helmsley.irccloud.com) (*.net *.split)
12:15:39 × caasih quits (sid13241@id-13241.ilkley.irccloud.com) (*.net *.split)
12:15:39 × astra quits (sid289983@id-289983.hampstead.irccloud.com) (*.net *.split)
12:15:39 × SrPx quits (sid108780@id-108780.uxbridge.irccloud.com) (*.net *.split)
12:15:39 × xacktm quits (xacktm@user/xacktm) (*.net *.split)
12:15:39 × nrr_______ quits (sid20938@id-20938.lymington.irccloud.com) (*.net *.split)
12:15:39 × haasn quits (sid579015@id-579015.hampstead.irccloud.com) (*.net *.split)
12:15:39 × codedmart quits (codedmart@2600:3c01::f03c:92ff:fefe:8511) (*.net *.split)
12:15:39 × nicole quits (ilbelkyr@libera/staff/ilbelkyr) (*.net *.split)
12:17:07 verde joins (~user@user/verde)
12:17:07 TimWolla joins (~timwolla@2a01:4f8:150:6153:beef::6667)
12:17:07 op_4 joins (~tslil@user/op-4/x-9116473)
12:17:07 smalltalkman joins (uid545680@id-545680.hampstead.irccloud.com)
12:17:07 vizimajac joins (vizimajac@shell.xshellz.com)
12:17:07 remmie joins (ianremsen@tilde.team)
12:17:07 tapas joins (sid467876@id-467876.ilkley.irccloud.com)
12:17:07 hamishmack joins (sid389057@id-389057.hampstead.irccloud.com)
12:17:07 T_S_____ joins (sid501726@id-501726.uxbridge.irccloud.com)
12:17:07 Kamuela joins (sid111576@id-111576.tinside.irccloud.com)
12:17:07 nisstyre joins (wes@user/nisstyre)
12:17:07 jakesyl_____ joins (sid56879@id-56879.hampstead.irccloud.com)
12:17:07 liskin joins (~liskin@xmonad/liskin)
12:17:07 mrvdb joins (~mrvdb@2001:19f0:5000:8582:5400:ff:fe07:3df5)
12:17:07 lexi-lambda joins (sid92601@id-92601.hampstead.irccloud.com)
12:17:07 SanchayanMaity joins (sid478177@id-478177.hampstead.irccloud.com)
12:17:07 gmc joins (sid58314@id-58314.ilkley.irccloud.com)
12:17:07 astra joins (sid289983@id-289983.hampstead.irccloud.com)
12:17:07 mankyKitty joins (sid31287@id-31287.helmsley.irccloud.com)
12:17:07 caasih joins (sid13241@id-13241.ilkley.irccloud.com)
12:17:07 SrPx joins (sid108780@id-108780.uxbridge.irccloud.com)
12:17:07 xacktm joins (xacktm@user/xacktm)
12:17:07 nrr_______ joins (sid20938@id-20938.lymington.irccloud.com)
12:17:07 haasn joins (sid579015@id-579015.hampstead.irccloud.com)
12:17:07 codedmart joins (codedmart@2600:3c01::f03c:92ff:fefe:8511)
12:17:07 nicole joins (ilbelkyr@libera/staff/ilbelkyr)
12:17:46 × SrPx quits (sid108780@id-108780.uxbridge.irccloud.com) (Max SendQ exceeded)
12:19:15 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 260 seconds)
12:20:10 SrPx joins (sid108780@id-108780.uxbridge.irccloud.com)
12:21:09 ocra8 joins (~ocra8@user/ocra8)
12:31:58 × ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 260 seconds)
12:32:43 × califax quits (~califax@user/califx) (Quit: ZNC 1.8.2 - https://znc.in)
12:33:40 califax joins (~califax@user/califx)
12:33:44 ec joins (~ec@gateway/tor-sasl/ec)
12:37:40 cfricke joins (~cfricke@user/cfricke)
12:37:52 raehik joins (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
12:43:40 <edwardk> cheater: the irony here is evan, the author of fast-tags is the guy who maintained nix for us when i was at groq. ;)
12:44:14 <cheater> thank you for mentioning you were at groq. i had no idea
12:45:10 zzz joins (~yin@user/zero)
12:45:38 <edwardk> i was their head of software for a couple of years, (then moved on to head of technology & architecture because they needed more help on the chip design side) then left about a year ago to form my own company
12:46:28 <edwardk> now my business partner and i have https://www.positron.ai/
12:48:27 nkatte joins (~nkatte@191.177.174.42)
12:53:23 cheater_ joins (~Username@user/cheater)
12:53:43 × cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds)
12:53:48 cheater_ is now known as cheater
12:54:09 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 256 seconds)
12:56:31 × danse-nr3 quits (~danse-nr3@151.35.159.42) (Remote host closed the connection)
12:56:55 danse-nr3 joins (~danse-nr3@151.35.159.42)
12:59:03 <hadronized> monochrom: hm, I checked a bit on Koka (installed it, played a bit with it), and even Roc-lang
12:59:12 <hadronized> I’m not sure it will ever become something as serious as Haskell though
12:59:36 <hadronized> their Perceus idea looks interesting though
13:00:25 × danse-nr3 quits (~danse-nr3@151.35.159.42) (Read error: Connection reset by peer)
13:00:36 danse-nr3 joins (~danse-nr3@151.37.172.249)
13:05:25 <cheater> hm
13:07:05 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
13:08:22 × dcoutts_ quits (~duncan@oxfd-27-b2-v4wan-164228-cust163.vm42.cable.virginm.net) (Remote host closed the connection)
13:08:27 <hadronized> cheater: hm?
13:08:33 × Noinia quits (~Frank@77-162-168-71.fixed.kpn.net) (Read error: Connection reset by peer)
13:08:40 dcoutts_ joins (~duncan@oxfd-27-b2-v4wan-164228-cust163.vm42.cable.virginm.net)
13:08:48 Noinia joins (~Frank@77-162-168-71.fixed.kpn.net)
13:09:04 <cheater> my internet died
13:16:13 × danse-nr3 quits (~danse-nr3@151.37.172.249) (Ping timeout: 268 seconds)
13:21:31 <hadronized> hm, also, koka not having typeclasses and suggesting to either do the dict-passing manually, or use effects, is redflag to me
13:21:43 <hadronized> it feels like typeclasses + implicit params is stronger
13:22:15 cfricke joins (~cfricke@user/cfricke)
13:24:54 ystael joins (~ystael@user/ystael)
13:25:41 × td_ quits (~td@i53870936.versanet.de) (Quit: waking up from the american dream ...)
13:27:04 rvalue- joins (~rvalue@user/rvalue)
13:27:22 <edwardk> "koka"?
13:27:38 × rvalue quits (~rvalue@user/rvalue) (Ping timeout: 268 seconds)
13:27:45 <edwardk> ah found it
13:27:49 <yushyin> https://koka-lang.github.io
13:28:33 <edwardk> ref counting, effect systems, uniqueness internals
13:29:29 <hadronized> yeah, the effect systems is something I’m not completely sure about
13:29:37 <hadronized> their reuse analysis thing sounds great though
13:29:45 <hadronized> it looks like it compiles down to C
13:29:59 <edwardk> yeah. i love uniqueness style updating
13:30:21 td_ joins (~td@i53870936.versanet.de)
13:30:23 <edwardk> easy enough to do with 1-bit ref counting in all pointers, or if like in this case you go to global ref counting
13:30:57 <hadronized> I wonder whether Haskell could benefit from that Perceus thing
13:31:04 rvalue- is now known as rvalue
13:31:24 <hadronized> also, how are you doing edwardk? it’s been a super long time I haven’t heard or read anything from you (probably a Zurihack a long time ago)
13:31:32 <hadronized> (my old nickname was phaazon back then)
13:32:06 <hadronized> I’m hanging around here to try and convince myself to switch back from Rust to Haskell again, at least on my spare time projects (at least I can do a bit of Rust at work…)
13:32:27 <hadronized> the more I see how Rust becomes (async/await, etc.) the more I feel something is going wrong with it haha
13:32:57 <sprout> rm -rf
13:33:00 <edwardk> i'm doing pretty well. went to zurihac recently and recharged my haskell batteries
13:35:04 <edwardk> re uniqueness style updates in a haskell like language, there's a lot one could do with a fully substructural heap subsystem and a lazy language. e.g. thunks convert uniqueness style updates to (optionally) regular ones and can hold unique resources, because they only get evaluated once. but you need to be a bit careful, if the resource is linear/relevant/strict you should evaluate it now, if its affine/unrestricted/lazy you want to keep
13:35:04 <edwardk> building up thunks.
13:35:21 <edwardk> this means that you wind up building up thunk chains when things are lazy rather than directly applying updates
13:35:43 <edwardk> so the uniqueness wins mostly add up in a language that has a strong strict sublanguage.
13:35:50 <sprout> I think you just described Clean
13:36:14 <edwardk> clean has uniqueness, but linearity, affinity, etc. are still useful. they are sort of opposite facing temporal modalities.
13:36:35 <edwardk> uniqueness says you haven't contracted a thing yet, linearity says you won't contract or weaken in the future
13:36:59 <edwardk> i want uniqueness _in addition_ to all the rest
13:37:38 <edwardk> and the problem with clean is its notion of uniqueness is purely is too weak. its based on compile time information. i want to recover it when other references to the object go away. the koka style rc based version get you that.
13:38:08 <edwardk> run-time uniqueness fires more often than the conservative over-approximation that is 'everything you can prove unique purely at compile time'
13:38:54 <edwardk> hence using refcounting, or polluting pointers with 1-bit tags indicating uniqueness that get recovered during GC like we do with dynamic pointer tagging
13:39:12 <edwardk> (its a bit of a different algorithm, but the idea of gaining missing info during gc is key)
13:39:54 <cheater> runtime uniqueness is like stm in C#
13:40:01 myme joins (~myme@2a01:799:d5c:5f00:9cc0:d0d4:9529:99cc)
13:40:49 <edwardk> nah. STM in C# has to interact with everything outside the system's control, which is why it basically died. runtime uniqueness is still locally contained to the process and just requires tracking a bit or so per pointer
13:41:12 dmj` joins (uid72307@id-72307.hampstead.irccloud.com)
13:42:04 <mauke> speaking of GC, is it normal for a GC to allocate while it runs?
13:42:36 <edwardk> well, if you are in a copying collector you may have to allocate the to-space for instance.
13:42:50 <mauke> I've been thinking about implementing refcounting + cycle collection, and the latter involves traversing the object graph multiple times
13:42:58 <mauke> which I don't know how to do without a stack or something
13:43:15 <edwardk> usually you grow the heap by doubling each time for instance (unless you read the membalancer paper, then you grow by sqrt n)
13:44:11 <edwardk> you can go all-scheme like and do in place tree traversal via pointer reversal, but using a stack for mark/sweep or mark/compact, etc. is pretty normal
13:45:31 × raehik quits (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 268 seconds)
13:55:49 × myme quits (~myme@2a01:799:d5c:5f00:9cc0:d0d4:9529:99cc) (Quit: WeeChat 4.2.2)
13:58:00 <dmj`> anyone familiar with attempts to implement the haskell type system using minikanren or CHR (constraint handling rules) for unification - sort of like the french approach
13:59:54 × diagprov quits (sid348783@user/diagprov) (Quit: Connection closed for inactivity)
14:02:41 <edwardk> question, the 'deep' or 'more' constructor in a fingertree needs to be lazy in order to get correct asymptotics. but the koka FP^2 paper just uses it as a strict field, lying and using ephemeral amortization in a functional setting. that doesn't seem correct. https://www.microsoft.com/en-us/research/uploads/prod/2023/05/fip-tr-v2.pdf i guess maybe one can assert that in the _fip_ case you only have one ref to the finger tree and it is
14:02:41 <edwardk> okay, but the general structure isn't a fingertree when you with O(1) cons when you drop it into their full language that opportunistically applies fip
14:03:22 <edwardk> dmj`: have you read adam gundry's dissertation?
14:03:48 <edwardk> dmj`: it gives you the shape of the environments you need to use to approach it 'french style'
14:04:13 raehik joins (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
14:07:26 <hadronized> edwardk: I think you understand all of that way more than me :D
14:07:45 <hadronized> I was just interested after monochrom’s comment mentioning it, and because it doesn’t have a GC and compiles down to C
14:07:56 <hadronized> which could mean using it for more realtime applications
14:08:11 <hadronized> (I still want to use Haskell / Haskell-like language to do intensive graphics / animation programming)
14:09:28 <EvanR> there's something which compiles to GPU
14:09:46 <EvanR> but something which effectively uses 16 cores would be nice
14:09:52 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
14:10:13 <tomsmeding> futhark compiles to GPU _or_ multicore CPU
14:10:22 <EvanR> duuuude
14:10:28 <tomsmeding> Accelerate also does
14:11:07 <tomsmeding> futhark has a bit more development effort behind it, and is a separate language that compiles to C that you can FFI into haskell; accelerate is embedded in haskell and maintained-ish
14:12:51 × jcarpenter2 quits (~lol@96.78.87.198) (Ping timeout: 264 seconds)
14:13:03 <dmj`> edwardk: i'll take another look, "inch" adding dependent types etc. probably didn't consider it since I'm only looking to implement haskell98. THIH is pretty messy imo, french is better, but still messy in ghc at least (zonking, etc). I like the idea of expressing typing rules as constraints, and having a solver handle unification. Closest thing I've seen is chameleon https://gitlab.com/tony-fu/chameleon
14:13:44 <dmj`> which encodes typeclasses as CHR rules, and then solves them, lots of papers on it too
14:14:10 <dmj`> https://arxiv.org/pdf/cs/0006034
14:14:59 × itaipu quits (~itaipu@168.121.99.8) (Ping timeout: 264 seconds)
14:15:37 <dmj`> a version of THIH that used CHR rules would be pretty cool imo
14:15:46 <int-e> . o O ( s/pdf/abs/ )
14:15:48 × rosco_ quits (~rosco@175.136.155.137) (Quit: Lost terminal)
14:19:43 × raehik quits (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 256 seconds)
14:20:09 × ezzieygu1wuf quits (~Unknown@user/ezzieyguywuf) (Quit: Lost terminal)
14:20:23 <cheater> int-e: risky click of the day
14:21:27 <dmj`> http://constraint-handling-rules.org/
14:21:30 <int-e> it's not even that, I want the meta data before looking at the paper
14:21:43 <edwardk> thih is missing all the witness/code generation side of things
14:23:58 <EvanR> Try and Download Constraint Handling Rules
14:24:10 <EvanR> Just Go Ahead and Try
14:24:14 <dmj`> https://github.com/atzedijkstra/chr
14:24:41 todi_away is now known as todi
14:26:32 <edwardk> dmj`: ghc zonking is because of the pointer-based manipulation of environments and substitution. the thing i like about gundry's dissertation is it makes clear where you are "committing" to using the environment in a non-reversible way.
14:27:47 itaipu joins (~itaipu@168.121.98.114)
14:30:05 <dmj`> edwardk: I admit I didn't full grok his dissertation, but will take a second look now. I'd like to separate the hairy details of substitution from expressing the logic / constraints of the type system, if possible. Pretty sure ghc still applies substitutions during constraint generation though.
14:30:51 × Xe quits (~cadey@perl/impostor/xe) (Ping timeout: 260 seconds)
14:31:09 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 268 seconds)
14:31:39 <dmj`> edwardk: re:witness codegen is missing yea, was thinking to not include existentials because haskell98 doesn't have them (pretty sure?), and then just do static monomorphization (inline + specialize all typeclasses), and polymorphic recursion would try to be done statically
14:32:45 <dmj`> should cut down on indirections a lot
14:32:47 Xe joins (~cadey@bras-base-orlnon0609w-grc-21-184-145-123-58.dsl.bell.ca)
14:33:04 <edwardk> gundry's dissertation is basically 'cleave apart type checking into precise manipulation of explicit environments' and then 'solve those environments using the least amount of cheating possible'. he starts with a base haskell 98ish type system, then does inch and dependent types. normally the former is just a preamble, making distinctions you don't need yet, but which pay out in the latter two sections, but if what you want is precisely
14:33:04 <edwardk> that environment, then you're all set
14:34:09 <edwardk> for me i want it because something like skalpel where you use those rules to give provenance tracking to each type error means you get fixup information that can better inform backtracking.
14:35:57 <edwardk> e.g. if what i was doing was converting fair coin flips into probabilistically weighted syntax trees (guanxi-style). then i run a bunch of variants through the typechecker after rejection using the skalpel style type error slicer to minimize the size of the provenance set, then i could restrict the local 'fix up' search to the region skalpel would color in red. these local changes can be mapped back into coinflip space as i go
14:36:46 <edwardk> in that way the logic programming framework can be informed by the structure of the typechecker in a way it otherwise can't see
14:40:52 ezzieyguywuf joins (~Unknown@user/ezzieyguywuf)
14:47:54 <dmj`> edwardk: wow, so are you using this for program synthesis? also does guanxi have an implementation of skalpel
14:49:16 <edwardk> guanxi isnt there yet, but it is directionally where i'd like to go
14:49:45 <edwardk> my experiments with guanxi lately have mostly been about using LLMs to squish out entropy from the program search
14:50:17 × _xor quits (~xor@ip-208-102-243-175.dynamic.fuse.net) (Read error: Connection reset by peer)
14:50:18 rosco joins (~rosco@175.136.155.137)
14:51:29 oneeyedalien joins (~oneeyedal@user/oneeyedalien)
14:51:29 _xor joins (~xor@ip-208-102-243-175.dynamic.fuse.net)
14:51:51 <edwardk> and that then invites me to consider how to do more interesting backtracking strategies because how i got there wasn't so exhaustive
14:52:09 <edwardk> keeping track of the guanxi bit-tree means it's still theoretically complete
14:53:03 <edwardk> you have to be careful with the language model. top p, top k, etc. all censor part of the search space, so you can at best do a 'soft top p'
14:55:45 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
14:56:48 quantumish joins (~user@user/quantumish)
14:57:52 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
14:59:00 loirit0 joins (~loirit0@gw-eduroam-alunos-134.fc.up.pt)
14:59:06 × Pixi quits (~Pixi@user/pixi) (Ping timeout: 255 seconds)
14:59:21 <dmj`> so this prunes the state space for LLMs and increases accuracy of the next choice by informing them of the semantics of what they're searching via integrating on the incremental "inch" type checking
15:00:48 <dmj`> ok I'll try his thesis again
15:02:43 × itaipu quits (~itaipu@168.121.98.114) (Read error: Connection reset by peer)
15:04:17 <edwardk> i don't use any of the inch stuff, just kind of the chapter before
15:04:37 <edwardk> and i'm still debating about "french vs. american (english?)" style
15:04:52 <edwardk> but if i want to integrate dependent types the french style seems sensible
15:05:09 <edwardk> i do have backtrackable references though
15:05:13 <edwardk> so i could go full on ghc style
15:05:41 <__monty__> Does French refer to something INRIA is doing or something?
15:06:40 × loirit0 quits (~loirit0@gw-eduroam-alunos-134.fc.up.pt) (Changing host)
15:06:40 loirit0 joins (~loirit0@user/loirit0)
15:07:33 danse-nr3 joins (~danse-nr3@151.37.172.249)
15:10:24 soverysour joins (~soverysou@user/soverysour)
15:11:14 <dmj`> __monty__: yea it's an approach ocaml used to do its inference (called HM(x)), basically inference is split up into two phases one for constraint generation and the other for constraint solving. GHC was inspired by this later w/ OutsideIn(x).
15:12:05 <edwardk> i think its mostly just that the first time i started seeing explicit environments of substitutions done that way it was there. there's a longish tradition of it. e.g. explicit substitutions https://www.irif.fr/~curien/ExplicitSub.pdf tons of CHR papers, etc. https://radar.inria.fr/report/2011/contraintes/uid50.html ocaml inference, etc.
15:16:19 <dmj`> edwardk: I was watching some of the guanxi talk from Poznan other day, you did mention reasoned schemer / minikanren, if you did mention CHR I missed it, but was curious your thoughts on that (CHR) for its use in type inference, if any.
15:16:36 <dmj`> edwardk: this paper in particular seemed really interesting https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=49e8ed4e9ac9a98959c9b2d3a0585d874a9f835a
15:17:33 erty joins (~user@user/aeroplane)
15:20:02 echelon joins (~echelon@gateway/tor-sasl/steerpike)
15:20:05 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
15:20:15 echelon parts (~echelon@gateway/tor-sasl/steerpike) ()
15:20:59 itaipu joins (~itaipu@168.121.98.114)
15:23:29 <edwardk> i tend to default to writing type checkers with zonking and pointer-based structures
15:24:11 joeyadams joins (~joeyadams@2603:6010:5100:2ed:6c6a:2720:15ae:2197)
15:24:15 × CiaoSen quits (~Jura@2a05:5800:2d9:7200:e6b9:7aff:fe80:3d03) (Ping timeout: 264 seconds)
15:26:01 <edwardk> compare even generating like a million or a billion guesses a second in a kanren search vs. a thousand with an LLM based search. kanren forces you to warp your probability distribution to fit its 'sort of fair' geometric series of attention. so if it would diverge it only diverges by halves
15:26:23 <edwardk> but for a million vs a thousand that's only 10 wrong guesses, 20 for a billion vs. a thousand
15:26:46 <edwardk> where those guesses would lead to divergence (e.g. exploring a lambda where you now have a big open explration space)
15:27:52 <edwardk> so under the assumption you are going to find the answer, the fact that a kanren style search incurs something that looks like O(2^KL_divergence(kanren search strategy, actual probability distribution)) means i should probably do the LLM-based search anyways
15:28:22 <edwardk> and if every guess is so damn expensive through the LLM i should wring everything i can out of a not-quite-right LLM guess
15:29:19 <edwardk> this make large assumptions that the space is large enough i'll probably not exhaust it and that the LLM distribution helps
15:29:25 noumenon joins (~noumenon@2a01:799:cd8:e700:aa7e:eaff:fede:ff94)
15:29:37 Pixi joins (~Pixi@user/pixi)
15:30:21 k_hachig_ joins (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca)
15:31:02 <edwardk> it also forces a left to right tree expansion/variable selection order, but a guanxi search was going to force something like that anyways
15:32:50 <edwardk> beam searches can help a ton with kv cache utilization as well
15:33:31 <edwardk> and mostly correspond to playing in 'almost identical' typing contexts, so if you have an incremental programming framework in place for evaluating those branches in your logic program those can really speed things up
15:35:54 × Pixi quits (~Pixi@user/pixi) (Ping timeout: 268 seconds)
15:36:12 <danse-nr3> i am not familiar with these terms. Did not find many references about "kanren search" online
15:36:29 <__monty__> What's the motivation for LLM's specifically over other simpler ML techniques?
15:36:31 <edwardk> minikanren is a logic programming framework written in scheme
15:36:49 <edwardk> neurokanren was written, and kinda sucked
15:36:53 <__monty__> It's also an essential tool in the kit for Advent of Code participants : )
15:37:32 <edwardk> and basically devolved to 'hey we have this sort of forced on us geometric series worth of attention being paid to our goals' please use a neural network to select variable expansion order and to choose goal reordering.
15:37:52 <edwardk> but if you look at the goal reordering it really did no better than just giving you the superpower to be able to specify the probability distribution to draw from!
15:39:00 <edwardk> so for guanxi i switched things over to that. feed random bits into an arithmetic decoder. decode whatever symbols you want out. then when you accept (or reject), make sure to mark off the entire interval of the numberline that was going to decode to the same thing. this separates generation which now is many to one with testing, but at least keeps stuff adjacent
15:39:14 <edwardk> now, i just need a good source of those probabilities
15:39:44 <edwardk> an LLM is a pretty damn good source, because after the softmax the logits become a bunch of numbers assigned to next tokens that are between 0 and 1 that sum to 1
15:39:47 × ocra8 quits (~ocra8@user/ocra8) (Quit: WeeChat 4.3.2)
15:39:57 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2)
15:40:04 <danse-nr3> thanks. Probabilistic logic programming? Had not expected that. I guess it's a specific part of logic programming
15:40:06 <edwardk> and i can bring back into my LLM-token selector information from the lexer to reject anything that wouldn't yield a lexically correct program
15:40:35 <danse-nr3> huh over my head ^^;
15:40:36 <edwardk> kanren is non-probabilistic logic programming. guanxi is probabilistic logic programming with drawing without replacement
15:40:56 <edwardk> danse-nr3: sorry half that answer was for __monty__
15:41:09 <danse-nr3> oh right i see
15:41:35 <edwardk> __monty__: another reason for LLMs is i have a whole company making hardware that is good at generating tokens from them ;)
15:43:22 <edwardk> and i can sort of double dip on them in another way re: squishing out entropy
15:43:50 <edwardk> consider an environment, now ask the LLM to describe the environment, and ask it to generate terms in the target language using that description
15:44:32 <edwardk> "i want a program to .... <plain text>" along with a bunch of unit tests and laws.
15:44:50 <__monty__> I saw positron.ai, wasn't entirely clear on whether it's dedicated hardware or software to intelligently utilize general/semi-specialized hardware.
15:45:20 <edwardk> so you can squish out more entropy from that 2^KL(p,q) term than just 'make the program look like it was written by a human'
15:45:48 <edwardk> positron.ai is a pure dedicated hardware play. we sell you boxes that get you 4-10x the performance per $ of nvidia today
15:46:16 <edwardk> that you can install in your data center, today, without waiting 28 weeks for nvidia to deign to ship you something
15:46:42 <edwardk> there's absolutely some cleverness in the software, but its not this stuff i'm talking here
15:47:13 <dmj`> edwardk: where do I buy stock :P
15:47:25 <dmj`> edwardk: also, if guanxi operates on the reals, could it be used to mimic solvers like gurobi, and do optimization of functions w/ nonlinear constraints (quadratic programming, etc)
15:47:34 <__monty__> Is Haskell secretly involved through Clash or something to program FPGA's?
15:47:49 × rosco quits (~rosco@175.136.155.137) (Quit: Lost terminal)
15:47:57 <edwardk> __monty__: no clash is used. no haskell even in the tech stack right now (shockingly enough) it was there early on though
15:48:33 <edwardk> clever algorithms and data structures, clever verilog, a whole bunch of supply chain optimization
15:49:17 <edwardk> we do a large chunk of our place and route ourselves though
15:50:04 <__monty__> Going up against NVidia does seem daring but I like the work smarter, not harder approach.
15:50:35 <__monty__> Is Guanxi a new name for Coda or is that a different project altogether?
15:51:14 <edwardk> guanxi is an old name for a logic programming framework i was working on back when i was at MIRI
15:51:19 × k_hachig_ quits (~k_hachig@bras-base-mtrlpq42zf4-grc-08-65-94-221-127.dsl.bell.ca) (Ping timeout: 268 seconds)
15:51:34 <edwardk> guanxi is _basically_ designed as the tactic search engine for coda
15:51:52 Pixi joins (~Pixi@user/pixi)
15:51:57 <edwardk> instead of going too eagerly depth first, lets be clever
15:52:36 <edwardk> coda is split into syntax directed and extensional layers, and the search through the extensional parts would need to be managed by guanxi
15:53:26 <edwardk> for handling things like side-conditions about quotient type case analysis or non-trivial judgmental type equality checks that don't automatically resolve syntactically.
15:55:16 <__monty__> Can't say I understand all of it but it does sound interesting.
15:55:48 × xal quits (~xal@mx1.xal.systems) ()
15:56:23 xal joins (~xal@mx1.xal.systems)
15:56:25 <__monty__> Would Guanxi be a lab-bound kinda thing until most devices have dedicated LLM hardware?
15:56:54 <edwardk> well, most of it doesn't care about the LLM thing.
15:57:02 <edwardk> the LLM thing is a recent experiment
15:57:14 <edwardk> basically its me trying to unmothball the project
15:58:43 × zzz quits (~yin@user/zero) (Ping timeout: 268 seconds)
15:59:44 <__monty__> Is positron.ai designing ASICs or using FPGAs? Kinda wondering whether the process node you get to use is close to whatever TSMC's latest and greatest is or whether these are even more impressive efficiency results.
16:01:28 lbseale joins (~quassel@user/ep1ctetus)
16:02:23 Midjak joins (~MarciZ@82.66.147.146)
16:05:10 × nkatte quits (~nkatte@191.177.174.42) (Quit: nkatte)
16:05:38 × chele quits (~chele@user/chele) (Remote host closed the connection)
16:06:07 × barthandelous01 quits (~calebbrze@216.158.140.68) (Ping timeout: 246 seconds)
16:07:24 <edwardk> yes, and yes.
16:07:38 <edwardk> the current results are shown off an FPGA based system
16:08:05 <edwardk> but longer term ASICs are part of our cost reduction and performance improvement strategy
16:08:34 <edwardk> the FPGAs we use are on a 7nm process even
16:08:52 <edwardk> the trick is performance / $
16:10:05 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 240 seconds)
16:11:14 × absence quits (torgeihe@hildring.pvv.ntnu.no) (Ping timeout: 252 seconds)
16:12:39 absence joins (torgeihe@hildring.pvv.ntnu.no)
16:13:50 × loirit0 quits (~loirit0@user/loirit0) (Ping timeout: 250 seconds)
16:13:55 myme joins (~myme@2a01:799:d5c:5f00:9cc0:d0d4:9529:99cc)
16:14:19 × myme quits (~myme@2a01:799:d5c:5f00:9cc0:d0d4:9529:99cc) (Client Quit)
16:14:44 myme joins (~myme@2a01:799:d5c:5f00:9cc0:d0d4:9529:99cc)
16:16:26 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 260 seconds)
16:16:45 <__monty__> Very cool.
16:19:05 barthandelous01 joins (~calebbrze@216.158.140.68)
16:22:11 Square joins (~Square@user/square)
16:23:42 × barthandelous01 quits (~calebbrze@216.158.140.68) (Ping timeout: 255 seconds)
16:24:44 × myme quits (~myme@2a01:799:d5c:5f00:9cc0:d0d4:9529:99cc) (Quit: WeeChat 4.2.2)
16:28:08 × ubert quits (~Thunderbi@2a02:8109:ab8a:5a00:f3c9:3256:4c54:e84a) (Remote host closed the connection)
16:31:48 madhavanmiui joins (~madhavanm@2409:40f4:1d:7cf9:8000::)
16:31:51 × madhavanmiui quits (~madhavanm@2409:40f4:1d:7cf9:8000::) (Remote host closed the connection)
16:31:52 × xdminsy quits (~xdminsy@117.147.70.231) (Read error: Connection reset by peer)
16:33:00 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
16:39:06 barthandelous01 joins (~calebbrze@216.158.140.68)
16:43:01 kyborg2011 joins (~kyborg201@178.249.209.165)
16:46:37 × joeyadams quits (~joeyadams@2603:6010:5100:2ed:6c6a:2720:15ae:2197) (Quit: Leaving)
16:52:11 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
16:52:47 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
16:54:37 Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
16:59:39 × danse-nr3 quits (~danse-nr3@151.37.172.249) (Read error: Connection reset by peer)
17:00:23 danse-nr3 joins (~danse-nr3@151.35.137.63)
17:08:52 × xal quits (~xal@mx1.xal.systems) ()
17:09:26 xal joins (~xal@mx1.xal.systems)
17:10:15 econo_ joins (uid147250@id-147250.tinside.irccloud.com)
17:12:21 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
17:13:16 segfaultfizzbuzz joins (~segfaultf@23-93-189-95.fiber.dynamic.sonic.net)
17:14:57 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
17:18:35 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
17:21:35 × tessier quits (~treed@ip72-220-57-194.sd.sd.cox.net) (Ping timeout: 264 seconds)
17:23:04 tessier joins (~treed@ec2-184-72-149-67.compute-1.amazonaws.com)
17:23:36 × causal quits (~eric@50.35.88.207) (Quit: WeeChat 4.3.1)
17:27:12 × soverysour quits (~soverysou@user/soverysour) (Ping timeout: 268 seconds)
17:28:38 oyraa^ joins (~cd@c-98-242-74-66.hsd1.ga.comcast.net)
17:28:47 × oneeyedalien quits (~oneeyedal@user/oneeyedalien) (Quit: Leaving)
17:33:41 tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net)
17:37:27 ChaiTRex joins (~ChaiTRex@user/chaitrex)
17:38:29 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds)
17:42:35 × quantumish quits (~user@user/quantumish) (Read error: Connection reset by peer)
17:43:06 soverysour joins (~soverysou@86.122.85.40)
17:43:06 × soverysour quits (~soverysou@86.122.85.40) (Changing host)
17:43:06 soverysour joins (~soverysou@user/soverysour)
17:43:30 euleritian joins (~euleritia@dynamic-176-006-027-049.176.6.pool.telefonica.de)
17:44:26 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
17:46:31 <cheater> fpgas are fun
17:46:38 <cheater> i made some semiconductors at home
17:46:42 <cheater> that was fun too
17:47:22 <cheater> can't wait for amd to get their shit together and put fpgas on their apus
17:48:25 myme joins (~myme@2a01:799:d5c:5f00:9cc0:d0d4:9529:99cc)
17:49:36 × myme quits (~myme@2a01:799:d5c:5f00:9cc0:d0d4:9529:99cc) (Client Quit)
17:50:23 <cheater> handheld gaming devices will get soooo much better this way
17:50:38 × euleritian quits (~euleritia@dynamic-176-006-027-049.176.6.pool.telefonica.de) (Ping timeout: 268 seconds)
17:50:48 <cheater> both fpga and apu in one box would kill everything else
17:50:52 cfricke joins (~cfricke@user/cfricke)
17:51:55 × CrunchyFlakes quits (~CrunchyFl@146.52.130.128) (Read error: Connection reset by peer)
17:52:20 euleritian joins (~euleritia@dynamic-176-003-083-064.176.3.pool.telefonica.de)
17:52:41 × euleritian quits (~euleritia@dynamic-176-003-083-064.176.3.pool.telefonica.de) (Read error: Connection reset by peer)
17:52:59 euleritian joins (~euleritia@77.22.252.56)
17:53:30 <dmj`> EvanR: do you have any experience w/ CHR as it relates to type inference
17:54:16 CrunchyFlakes joins (~CrunchyFl@146.52.130.128)
17:57:25 × euleritian quits (~euleritia@77.22.252.56) (Ping timeout: 268 seconds)
17:58:02 euleritian joins (~euleritia@77.22.252.56)
17:58:29 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 252 seconds)
17:59:59 × danse-nr3 quits (~danse-nr3@151.35.137.63) (Ping timeout: 264 seconds)
18:07:14 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
18:07:41 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds)
18:10:10 Lord_of_Life_ is now known as Lord_of_Life
18:11:25 × notzmv quits (~daniel@user/notzmv) (Read error: Connection reset by peer)
18:14:50 target_i joins (~target_i@user/target-i/x-6023099)
18:22:28 <lxsameer> hey folks, what property testing library do you recommend beside quickcheck?
18:22:39 <cheater> hedgehog
18:23:13 notzmv joins (~daniel@user/notzmv)
18:23:20 <lxsameer> thank you
18:23:58 <cheater> yw
18:24:07 <cheater> there's also smallcheck
18:24:12 <cheater> or smartcheck or whatever
18:25:20 <lxsameer> cheers
18:29:07 <geekosaur> it's smallcheck
18:29:38 <geekosaur> for things those don't handle there's hspec or tasty
18:29:48 × soverysour quits (~soverysou@user/soverysour) (Ping timeout: 268 seconds)
18:30:20 <geekosaur> and you can integrate both quickcheck and smallcheck into both of those
18:32:02 <lxsameer> geekosaur: cheers, I'm using tasty already
18:32:13 <lxsameer> but to run my hunit tests
18:36:45 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
18:37:24 <haskellbridge> <sm> there's really a lot of testing-related packages, they need an overview
18:40:05 <monochrom> Someone probably already wrote it somewhere.
18:41:15 <EvanR> dmj`, no I just learned about it today thanks to you guys
18:41:39 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
18:42:02 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 260 seconds)
18:45:45 ChaiTRex joins (~ChaiTRex@user/chaitrex)
18:46:25 <dmj`> EvanR: seems like a cleaner way to do type inference
18:50:38 × noumenon quits (~noumenon@2a01:799:cd8:e700:aa7e:eaff:fede:ff94) (Quit: Leaving)
18:55:00 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
18:57:10 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
19:17:10 JamesMowery7 joins (~JamesMowe@ip98-167-207-182.ph.ph.cox.net)
19:18:50 × JamesMowery quits (~JamesMowe@ip98-167-207-182.ph.ph.cox.net) (Ping timeout: 256 seconds)
19:18:50 JamesMowery7 is now known as JamesMowery
19:25:54 × califax quits (~califax@user/califx) (Ping timeout: 260 seconds)
19:26:00 califax_ joins (~califax@user/califx)
19:27:17 califax_ is now known as califax
19:33:11 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 4.2.2)
19:47:39 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
19:54:14 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
20:03:19 × verde quits (~user@user/verde) (Quit: Leaving)
20:09:18 tronchy joins (~tronchy@lfbn-ren-1-1444-34.w90-27.abo.wanadoo.fr)
20:12:08 dcoutts__ joins (~duncan@oxfd-27-b2-v4wan-164228-cust163.vm42.cable.virginm.net)
20:12:10 × dcoutts_ quits (~duncan@oxfd-27-b2-v4wan-164228-cust163.vm42.cable.virginm.net) (Ping timeout: 246 seconds)
20:12:18 machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net)
20:12:19 × Midjak quits (~MarciZ@82.66.147.146) (Quit: This computer has gone to sleep)
20:12:44 × kyborg2011 quits (~kyborg201@178.249.209.165) (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:18:02 × tronchy quits (~tronchy@lfbn-ren-1-1444-34.w90-27.abo.wanadoo.fr) (Quit: leaving)
20:18:07 × dcoutts__ quits (~duncan@oxfd-27-b2-v4wan-164228-cust163.vm42.cable.virginm.net) (Remote host closed the connection)
20:18:32 dcoutts__ joins (~duncan@oxfd-27-b2-v4wan-164228-cust163.vm42.cable.virginm.net)
20:20:43 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:21:25 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
20:31:48 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:33:20 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
20:35:31 siw5ohs0 joins (~aiw5ohs0@user/aiw5ohs0)
20:35:55 siw5ohs0 parts (~aiw5ohs0@user/aiw5ohs0) (Leaving)
20:40:11 × juri_ quits (~juri@implicitcad.org) (Ping timeout: 252 seconds)
20:41:22 juri_ joins (~juri@implicitcad.org)
20:49:28 × lxsameer quits (~lxsameer@Serene/lxsameer) (Ping timeout: 268 seconds)
20:49:46 <dmj`> monochrom: I wonder if koka could express its type system with CHRs
20:51:13 CiaoSen joins (~Jura@2a05:5800:2d9:7200:e6b9:7aff:fe80:3d03)
20:57:22 <dmj`> wonder what Daan Leijen thinks about CHRs
21:02:22 <monochrom> I haven't learned CHR so I don't know either. :)
21:03:40 × oyraa^ quits (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Remote host closed the connection)
21:04:11 × euleritian quits (~euleritia@77.22.252.56) (Ping timeout: 264 seconds)
21:06:15 × target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving)
21:07:21 euleritian joins (~euleritia@dynamic-176-003-069-120.176.3.pool.telefonica.de)
21:09:08 SteelBlueSilk joins (~SteelBlue@c-98-42-249-36.hsd1.ca.comcast.net)
21:09:08 × SteelBlueSilk quits (~SteelBlue@c-98-42-249-36.hsd1.ca.comcast.net) (Changing host)
21:09:08 SteelBlueSilk joins (~SteelBlue@user/SteelBlueSilk)
21:10:06 × michalz quits (~michalz@185.246.207.221) (Quit: ZNC 1.9.0 - https://znc.in)
21:18:09 erty` joins (~user@122.161.50.232)
21:20:18 × erty quits (~user@user/aeroplane) (Ping timeout: 268 seconds)
21:25:18 emmanuelux joins (~emmanuelu@user/emmanuelux)
21:26:36 tok joins (da65c7b04b@user/tok)
21:30:13 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
21:32:15 × Leary quits (~Leary@user/Leary/x-0910699) (Remote host closed the connection)
21:33:15 × zlqrvx quits (~zlqrvx@user/zlqrvx) (Quit: %quit%)
21:33:35 zlqrvx joins (~zlqrvx@user/zlqrvx)
21:38:55 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:40:09 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
21:43:25 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
21:47:17 kyborg2011 joins (~kyborg201@178.249.209.165)
21:54:13 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds)
21:54:37 kyborg2011_ joins (~kyborg201@host-176-36-215-61.b024.la.net.ua)
21:56:03 × kyborg2011 quits (~kyborg201@178.249.209.165) (Ping timeout: 264 seconds)
21:58:43 × tessier quits (~treed@ec2-184-72-149-67.compute-1.amazonaws.com) (Ping timeout: 256 seconds)
22:10:09 Roc joins (~Roc@ip-213-49-101-14.dsl.scarlet.be)
22:10:43 <Roc> I'm reading the learnyouahaskel book. I'm on linux and i have installed haskell tools using ghcup. I can follow everything in the book but now it seems that don' t have System.Random installed. Can i install this using ghcup or do i have to use cabal as shown in most search results?
22:11:31 <monochrom> Yes you will need cabal. System.Random doesn't come with GHC any more.
22:12:07 <monochrom> The easiest way is https://cabal.readthedocs.io/en/stable/getting-started.html#running-a-single-file-haskell-script
22:12:45 <Roc> I'll follow that guide. Thanks!
22:12:56 <monochrom> You can also have "cabal repl" on that file. So basically s/ghci foo.hs/cabal repl foo.hs/ , s/runghc foo.hs/cabal run foo.hs/
22:13:36 myme joins (~myme@2a01:799:d5c:5f00:33d4:3d73:88f6:3af4)
22:15:35 Sgeo joins (~Sgeo@user/sgeo)
22:16:28 × CiaoSen quits (~Jura@2a05:5800:2d9:7200:e6b9:7aff:fe80:3d03) (Quit: CiaoSen)
22:18:31 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
22:25:27 ft joins (~ft@p3e9bcb39.dip0.t-ipconnect.de)
22:27:45 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
22:36:07 × sawilagar quits (~sawilagar@user/sawilagar) (Ping timeout: 256 seconds)
22:40:57 Square2 joins (~Square4@user/square)
22:42:05 × acidjnk_new quits (~acidjnk@p200300d6e714dc44fcfbcb66e1510efc.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
22:42:24 <EvanR> haskell doesn't come with an RNG anymore? nice
22:44:29 <glguy> Anymore?
22:45:24 × Square quits (~Square@user/square) (Ping timeout: 268 seconds)
22:48:02 pavonia joins (~user@user/siracusa)
22:48:12 <EvanR> how long have I been asleep
22:49:00 noumenon joins (~noumenon@113.51-175-156.customer.lyse.net)
22:49:34 <monochrom> Don't worry, these things change all the time. :)
22:49:38 × noumenon quits (~noumenon@113.51-175-156.customer.lyse.net) (Remote host closed the connection)
22:50:21 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
22:54:55 tessier joins (~treed@ec2-184-72-149-67.compute-1.amazonaws.com)
22:55:50 joeyadams joins (~joeyadams@2603:6010:5100:2ed:674f:8bcc:dd31:934b)
23:01:05 × forell quits (~forell@user/forell) (Ping timeout: 272 seconds)
23:06:19 forell joins (~forell@user/forell)
23:19:38 ChaiTRex joins (~ChaiTRex@user/chaitrex)
23:20:37 × dmj` quits (uid72307@id-72307.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
23:27:56 × Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
23:35:48 xdminsy joins (~xdminsy@117.147.70.231)
23:39:10 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
23:39:51 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 264 seconds)
23:41:31 <cheater> i can't believe i spent a whole ass day working on getting taglist working and tagbar just works out of the box
23:41:38 <cheater> and it's great for haskell
23:41:42 <cheater> uses hasktags
23:41:51 <cheater> has actual support (not me hacking it in)
23:41:58 <cheater> etc

All times are in UTC on 2024-06-18.