Home liberachat/#haskell: Logs Calendar

Logs on 2026-02-04 (liberachat/#haskell)

00:03:29 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
00:06:55 karenw joins (~karenw@user/karenw)
00:08:07 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
00:08:43 × ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 260 seconds)
00:17:13 × xff0x quits (~xff0x@2405:6580:b080:900:e10b:1e35:aa5b:abb9) (Ping timeout: 246 seconds)
00:19:16 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
00:20:09 Tuplanolla joins (~Tuplanoll@85-156-32-207.elisa-laajakaista.fi)
00:26:07 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
00:30:01 xff0x joins (~xff0x@2405:6580:b080:900:e10b:1e35:aa5b:abb9)
00:31:09 × Googulator quits (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu) (Quit: Client closed)
00:31:16 Googulator61 joins (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu)
00:34:45 Sgeo joins (~Sgeo@user/sgeo)
00:37:18 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
00:38:35 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
00:42:13 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds)
00:47:06 wickedjargon joins (~user@24.83.46.194)
00:50:30 × wickedjargon quits (~user@24.83.46.194) (Remote host closed the connection)
00:50:36 × xff0x quits (~xff0x@2405:6580:b080:900:e10b:1e35:aa5b:abb9) (Ping timeout: 252 seconds)
00:50:48 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
00:51:13 wickedjargon joins (~user@24.83.46.194)
00:55:59 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
00:59:11 Digitteknohippie joins (~user@user/digit)
00:59:29 × Digit quits (~user@user/digit) (Ping timeout: 260 seconds)
01:00:56 × paddymahoney quits (~paddymaho@pool-99-250-10-137.cpe.net.cable.rogers.com) (Remote host closed the connection)
01:06:39 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
01:09:18 × otto_s quits (~user@p4ff273b1.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
01:10:52 otto_s joins (~user@p5de2f01c.dip0.t-ipconnect.de)
01:10:59 paddymahoney joins (~paddymaho@pool-99-250-10-137.cpe.net.cable.rogers.com)
01:11:43 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
01:16:06 × wickedjargon quits (~user@24.83.46.194) (Remote host closed the connection)
01:16:45 <yin> > mempty :: Maybe Char
01:16:46 <lambdabot> No instance for ‘Semigroup Char’ arising from a use of ‘mempty’
01:16:46 <lambdabot> In the expression: mempty :: Maybe Char
01:16:51 <yin> isn't this weird?
01:21:28 mvk joins (~mvk@2607:fea8:5c9d:ee00::5716)
01:21:31 × mvk quits (~mvk@2607:fea8:5c9d:ee00::5716) (Client Quit)
01:22:20 × Square2 quits (~Square@user/square) (Remote host closed the connection)
01:22:23 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
01:23:20 <ncf> that there's no Semigroup instance for Char? not particularly, no
01:23:47 <ncf> or that Monoid (Maybe a) requires Semigroup a? that one might be up for debate
01:26:53 <yin> the latter yeah, but i get it
01:27:18 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
01:29:13 Digitteknohippie is now known as Digit
01:29:14 <EvanR> maybe you're thinking of First
01:29:49 omidmash6 joins (~omidmash@user/omidmash)
01:29:56 <EvanR> > mempty :: First (Maybe Char)
01:29:57 <lambdabot> First {getFirst = Nothing}
01:31:02 <EvanR> > mempty :: Maybe (NonEmpty Char)
01:31:03 <lambdabot> Nothing
01:31:25 trickard_ is now known as trickard
01:31:42 × omidmash quits (~omidmash@user/omidmash) (Ping timeout: 244 seconds)
01:31:42 omidmash6 is now known as omidmash
01:32:55 Square2 joins (~Square@user/square)
01:32:59 <EvanR> > First (Just 'a') <> First (Just 'b')
01:33:00 <lambdabot> First {getFirst = Just 'a'}
01:33:26 <EvanR> > Just 'a' <> Just 'b' -- what should happen
01:33:27 <lambdabot> No instance for ‘Semigroup Char’ arising from a use of ‘<>’
01:33:27 <lambdabot> In the expression: Just 'a' <> Just 'b'
01:33:48 <EvanR> Just ('a' <> 'b')
01:38:12 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
01:42:35 <probie> I propose Just ('a' <> 'b') should be Just (chr ((ord 'a' + ord 'b') `mod` (ord maxBound))). It's a lawful instance
01:42:50 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
01:43:21 <EvanR> a C programmer would be impressed... except the modulo is by some oddball number 1114112 ?
01:43:52 <EvanR> to me it seems like adding the note B to the note F... makes sense if you assume MIDI but...
01:44:26 <EvanR> just seems like defining things for the sake of it so "they do something" (js style)
01:50:10 xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
01:53:55 <geekosaur> we already do that (see `Foldable` and `Traversable` instances on tuples)
01:54:21 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
01:55:40 <probie> > sum (3,4)
01:55:41 <lambdabot> 4
01:56:04 <probie> makes sense to me :p
01:56:33 <probie> embarrassing when trying to explain to someone just learning Haskell who expects 7
01:59:19 × rainbyte quits (~rainbyte@186.22.19.214) (Remote host closed the connection)
01:59:39 <EvanR> insofaras Functor works on pairs, it makes sense
02:00:12 <EvanR> kind of a if it's a functor then it can be folded for better or worse
02:01:13 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
02:01:22 <EvanR> as it stands somebody can define a Semigroup for Char to carry out their version of great justice, whatever it is
02:01:49 <probie> Sure, but at that point why don't we add https://hackage.haskell.org/package/acme-default to base
02:01:49 <EvanR> without inflicting it on us... hopefully
02:02:04 <EvanR> how is that related
02:02:21 × prdak quits (~Thunderbi@user/prdak) (Remote host closed the connection)
02:02:26 <EvanR> defining stuff in your program means it should be in base?
02:02:48 prdak joins (~Thunderbi@user/prdak)
02:03:04 <EvanR> and I'm wrong about functor to foldable
02:03:28 <EvanR> in general
02:04:36 <probie> Since we'd moved to talking about Foldable/Traversable for tuples, I interpreted your Semigroup for Char to be implying it should be added to base (after all, it has to be, or it's an orphan instance)
02:06:19 × Tuplanolla quits (~Tuplanoll@85-156-32-207.elisa-laajakaista.fi) (Ping timeout: 264 seconds)
02:12:25 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
02:17:30 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
02:29:45 × pavonia quits (~user@user/siracusa) (Read error: Connection reset by peer)
02:30:07 pavonia joins (~user@user/siracusa)
02:44:41 × infinity0 quits (~infinity0@pwned.gg) (Ping timeout: 265 seconds)
02:53:06 × omidmash quits (~omidmash@user/omidmash) (Quit: The Lounge - https://thelounge.chat)
02:56:32 omidmash joins (~omidmash@user/omidmash)
02:56:49 × karenw quits (~karenw@user/karenw) (Ping timeout: 246 seconds)
03:18:42 <EvanR> I heard orphans are impossible, then we have packages on hackage specifically advertising orphan instances
03:19:20 <EvanR> that it would be an Orphan is good, so that might go a ways to stop it from getting out of hand
03:31:05 × notzmv quits (~umar@user/notzmv) (Ping timeout: 265 seconds)
03:31:44 × trickard quits (~trickard@cpe-85-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
03:31:58 trickard_ joins (~trickard@cpe-85-98-47-163.wireline.com.au)
03:37:19 × machinedgod quits (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 240 seconds)
03:41:39 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
03:43:52 jmcantrell_ is now known as jmcantrell
03:47:07 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
03:49:59 × DragonMaus quits (~DragonMau@user/dragonmaus) (Remote host closed the connection)
03:50:26 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
03:50:35 DragonMaus joins (~DragonMau@user/dragonmaus)
03:55:03 peterbecich joins (~Thunderbi@71.84.33.135)
03:55:31 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
04:05:59 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
04:11:03 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds)
04:11:27 × Googulator61 quits (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu) (Quit: Client closed)
04:11:44 Googulator61 joins (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu)
04:21:45 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
04:21:48 × DragonMaus quits (~DragonMau@user/dragonmaus) (Remote host closed the connection)
04:21:52 × peterbecich quits (~Thunderbi@71.84.33.135) (Ping timeout: 246 seconds)
04:22:03 DragonMaus joins (~DragonMau@user/dragonmaus)
04:27:01 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
04:28:56 × DragonMaus quits (~DragonMau@user/dragonmaus) (Remote host closed the connection)
04:29:32 DragonMaus joins (~DragonMau@user/dragonmaus)
04:37:33 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
04:42:37 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
04:46:13 × emaczen quits (~user@user/emaczen) (Ping timeout: 264 seconds)
04:53:20 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
05:00:23 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
05:01:34 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
05:04:44 chexum joins (~quassel@gateway/tor-sasl/chexum)
05:05:48 × jmcantrell quits (~weechat@user/jmcantrell) (Ping timeout: 252 seconds)
05:11:21 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
05:16:07 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
05:27:08 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
05:31:17 × jle` quits (~jle`@23.240.67.73) (Quit: WeeChat 4.8.1)
05:31:19 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
05:41:15 Square joins (~Square4@user/square)
05:42:31 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
05:43:56 × Square2 quits (~Square@user/square) (Ping timeout: 244 seconds)
05:47:52 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
05:51:21 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
05:52:35 trickard__ joins (~trickard@cpe-55-98-47-163.wireline.com.au)
05:53:13 × trickard_ quits (~trickard@cpe-85-98-47-163.wireline.com.au) (Ping timeout: 246 seconds)
05:53:40 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 245 seconds)
05:55:44 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
05:56:24 × mange quits (~mange@user/mange) (Ping timeout: 260 seconds)
06:03:18 mange joins (~mange@user/mange)
06:05:53 takuan joins (~takuan@d8D86B9E9.access.telenet.be)
06:06:48 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
06:11:46 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
06:21:24 × califax quits (~califax@user/califx) (Remote host closed the connection)
06:21:24 × marinelli quits (~weechat@gateway/tor-sasl/marinelli) (Remote host closed the connection)
06:21:24 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
06:21:24 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Read error: Connection reset by peer)
06:21:36 × gmg quits (~user@user/gehmehgeh) (Remote host closed the connection)
06:21:38 chexum joins (~quassel@gateway/tor-sasl/chexum)
06:21:43 marinelli joins (~weechat@gateway/tor-sasl/marinelli)
06:21:46 califax joins (~califax@user/califx)
06:21:47 ChaiTRex joins (~ChaiTRex@user/chaitrex)
06:22:18 gmg joins (~user@user/gehmehgeh)
06:22:35 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
06:24:02 × mfc_kbs quits (~keibisoft@2a06:1fc0:0:1::1cd) (Quit: ZNC 1.9.0+deb2build3 - https://znc.in)
06:24:22 mfc_kbs joins (~keibisoft@2a06:1fc0:0:1::1cd)
06:24:53 xff0x_ joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
06:26:25 × xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 264 seconds)
06:26:28 xff0x_ is now known as xff0x
06:27:44 michalz joins (~michalz@185.246.207.215)
06:29:39 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
06:31:12 haritz joins (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8)
06:31:12 × haritz quits (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) (Changing host)
06:31:12 haritz joins (~hrtz@user/haritz)
06:32:28 chromoblob joins (~chromoblo@user/chromob1ot1c)
06:32:35 × igemnace quits (~igemnace@user/igemnace) (Quit: ZNC 1.9.0+deb2build3 - https://znc.in)
06:34:07 igemnace joins (~igemnace@user/igemnace)
06:35:37 × attlin quits (~user@user/attlin) (Quit: Leaving)
06:37:00 jle` joins (~jle`@2603:8001:3b00:11:ceae:40d3:5f9b:7e4d)
06:37:49 × trickard__ quits (~trickard@cpe-55-98-47-163.wireline.com.au) (Ping timeout: 264 seconds)
06:37:55 trickard___ joins (~trickard@cpe-61-98-47-163.wireline.com.au)
06:38:32 peterbecich joins (~Thunderbi@71.84.33.135)
06:38:42 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 244 seconds)
06:39:01 trickard___ is now known as trickard
06:39:13 attlin joins (~user@user/attlin)
06:40:38 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
06:42:12 chromoblob joins (~chromoblo@user/chromob1ot1c)
06:45:19 × trickard quits (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
06:45:21 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
06:48:42 trickard_ joins (~trickard@cpe-61-98-47-163.wireline.com.au)
06:49:12 × michalz quits (~michalz@185.246.207.215) (Ping timeout: 252 seconds)
06:50:11 × hakutaku quits (~textual@chen.yukari.eu.org) (Quit: Textual IRC Client: www.textualapp.com)
06:50:25 hakutaku joins (~textual@chen.yukari.eu.org)
06:50:25 × hakutaku quits (~textual@chen.yukari.eu.org) (Changing host)
06:50:25 hakutaku joins (~textual@user/hakutaku)
06:50:38 × hakutaku quits (~textual@user/hakutaku) (Client Quit)
06:51:01 hakutaku joins (~textual@user/hakutaku)
06:52:21 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
06:57:37 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
06:57:37 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer)
07:02:43 michalz joins (~michalz@185.246.207.217)
07:05:20 chromoblob joins (~chromoblo@user/chromob1ot1c)
07:08:09 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
07:09:19 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 240 seconds)
07:11:14 chromoblob joins (~chromoblo@user/chromob1ot1c)
07:12:31 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
07:12:43 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer)
07:14:10 × ft quits (~ft@p508db4c0.dip0.t-ipconnect.de) (Quit: leaving)
07:23:09 × jle` quits (~jle`@2603:8001:3b00:11:ceae:40d3:5f9b:7e4d) (Quit: WeeChat 4.8.1)
07:23:37 <gentauro> tomsmeding: got it. Thx for explanation
07:23:48 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
07:24:31 × michalz quits (~michalz@185.246.207.217) (Ping timeout: 255 seconds)
07:25:55 <[exa]> is there some way to get an operation that would take a list (or so) of MVars and wait until any of them can be taken? Or do I generally have to do this with another synchronization tool (Chan)?
07:26:56 michalz joins (~michalz@185.246.207.218)
07:28:22 × ar3ph quits (~ar3ph@user/ar3ph) (Quit: Ping timeout (120 seconds))
07:28:33 ar3ph joins (~ar3ph@user/ar3ph)
07:29:09 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
07:30:38 <gentauro> I've recently been following this persons task on removing F# from the boundries of the .NET platform to become trully native on bare metal: https://speakez.tech/blog/
07:30:55 <gentauro> the blog post are really enjoyable to read
07:31:04 gentauro And I'm not the guy xD
07:31:38 <gentauro> however, as I understand it, it's a single person doing all the work (perhaps with the help of AI-tools?)
07:32:38 <Leary> [exa]: In principle you can `race` `takeMVar` across the list, but I suggest you just use `TMVar`s instead.
07:34:22 <[exa]> Leary: oh TMVars, that would work too
07:35:06 emmanuelux joins (~em@user/emmanuelux)
07:35:37 <[exa]> I'm currently thinking about just going with TChan, will see
07:36:56 fp joins (~Thunderbi@2001:708:150:10::9d7e)
07:38:12 × YuutaW quits (~YuutaW@2404:f4c0:f9c3:502::100:6eef) (Read error: Connection reset by peer)
07:38:24 yuuta joins (~YuutaW@infornography.yta.moe)
07:39:08 × emmanuelux quits (~em@user/emmanuelux) (Read error: Connection reset by peer)
07:39:34 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
07:40:12 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
07:43:08 <[exa]> gentauro: the lookings of the blog don't spawn much confidence indeed
07:43:38 emmanuelux joins (~em@user/emmanuelux)
07:44:53 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
07:45:16 × emmanuelux quits (~em@user/emmanuelux) (Read error: Connection reset by peer)
07:45:37 vanishingideal joins (~vanishing@user/vanishingideal)
07:45:46 × xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Quit: xff0x)
07:47:26 × monochrom quits (trebla@216.138.220.146) (Quit: ZNC 1.9.1+deb2build5 - https://znc.in)
07:49:20 xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
07:52:22 emmanuelux joins (~em@user/emmanuelux)
07:53:21 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
07:53:30 monochrom joins (trebla@216.138.220.146)
07:57:47 Enrico63 joins (~Enrico63@148.252.128.12)
08:00:09 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
08:01:10 × fp quits (~Thunderbi@2001:708:150:10::9d7e) (Ping timeout: 245 seconds)
08:01:57 × tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
08:10:33 kuribas joins (~user@2a02-1810-2825-6000-16d8-7b7e-1bcd-b36.ip6.access.telenet.be)
08:11:24 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
08:13:43 × vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 240 seconds)
08:16:19 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds)
08:17:19 × peterbecich quits (~Thunderbi@71.84.33.135) (Ping timeout: 240 seconds)
08:19:16 sord937 joins (~sord937@gateway/tor-sasl/sord937)
08:20:39 <[exa]> hm I guess better ask about the original problem.. I have a few concurrent helpers for Streaming, and I want to have a parallel unfolding function. Example here: https://paste.tomsmeding.com/y8PLkSYh -- mapMForkNIO works, unfoldStream works, and I'd love to them combined, but I can't see a good data structure that would hold the temporary data for it together. Having a list queue there doesn't
08:20:41 <[exa]> sound very good to me (I'll have to scan it quite often to find new work items, so it might get quite slow)
08:21:52 <[exa]> (duck effect: I realized I might just place a limit on the queue size instead of the thread count, which would probably also limit the possible amount of stupid work done over the queue)
08:22:05 <[exa]> anyway any ideas welcome. :D
08:22:31 × _JusSx_ quits (~jussx@78.210.76.107) (Ping timeout: 240 seconds)
08:23:36 _JusSx_ joins (~jussx@78.210.76.107)
08:30:36 × xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Quit: xff0x)
08:32:55 xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
08:40:29 × emmanuelux quits (~em@user/emmanuelux) (Quit: bye)
08:40:42 chele joins (~chele@user/chele)
08:52:28 × prdak quits (~Thunderbi@user/prdak) (Quit: prdak)
08:53:05 × housemate quits (~housemate@202.7.248.67) (Quit: https://ineedsomeacidtocalmmedown.space/)
08:57:29 merijn joins (~merijn@77.242.116.146)
09:02:21 ljdarj joins (~Thunderbi@user/ljdarj)
09:05:27 fp joins (~Thunderbi@wireless-86-50-140-153.open.aalto.fi)
09:05:53 × trickard_ quits (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
09:06:07 trickard_ joins (~trickard@cpe-61-98-47-163.wireline.com.au)
09:09:34 × fp quits (~Thunderbi@wireless-86-50-140-153.open.aalto.fi) (Ping timeout: 246 seconds)
09:15:19 × xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 264 seconds)
09:18:26 lucabtz joins (~lucabtz@user/lucabtz)
09:19:01 × ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 246 seconds)
09:20:01 housemate joins (~housemate@202.7.248.67)
09:21:43 × trickard_ quits (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
09:21:56 trickard_ joins (~trickard@cpe-61-98-47-163.wireline.com.au)
09:29:45 qqq joins (~qqq@185.54.21.178)
09:31:53 × trickard_ quits (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
09:32:04 fp joins (~Thunderbi@wireless-86-50-140-153.open.aalto.fi)
09:32:34 trickard_ joins (~trickard@cpe-61-98-47-163.wireline.com.au)
09:37:02 weary-traveler joins (~user@user/user363627)
09:51:40 × fp quits (~Thunderbi@wireless-86-50-140-153.open.aalto.fi) (Ping timeout: 255 seconds)
09:59:39 AlexNoo_ joins (~AlexNoo@85.174.181.199)
10:00:25 AlexNoo__ joins (~AlexNoo@85.174.181.199)
10:01:49 × AlexZenon quits (~alzenon@178.34.150.239) (Ping timeout: 264 seconds)
10:03:07 × AlexNoo quits (~AlexNoo@178.34.150.239) (Ping timeout: 246 seconds)
10:03:33 AlexNoo joins (~AlexNoo@85.174.181.199)
10:04:19 × AlexNoo_ quits (~AlexNoo@85.174.181.199) (Ping timeout: 260 seconds)
10:04:54 × AlexNoo__ quits (~AlexNoo@85.174.181.199) (Ping timeout: 260 seconds)
10:05:16 AlexZenon joins (~alzenon@85.174.181.199)
10:05:18 AlexNoo_ joins (~AlexNoo@85.174.181.199)
10:07:49 × AlexNoo quits (~AlexNoo@85.174.181.199) (Ping timeout: 260 seconds)
10:14:25 × housemate quits (~housemate@202.7.248.67) (Quit: https://ineedsomeacidtocalmmedown.space/)
10:21:32 <gentauro> [exa]: if you search for "// F* specification for verified memory operation" it seems that he also will add somekind of `liquid F#/F*` support? https://speakez.tech/blog/doubling-down/
10:22:05 <gentauro> I mean, all the things that he mentions are "extremely hard" to do on its own.
10:25:29 <[exa]> gentauro: given the amount of "complete" code they have on githubs I'd say this might be a case for poc||gtfo
10:31:43 × qqq quits (~qqq@185.54.21.178) (Ping timeout: 244 seconds)
10:32:04 AlexNoo_ is now known as AlexNoo
10:37:18 vanishingideal joins (~vanishing@user/vanishingideal)
10:38:57 trickard_ is now known as trickard
10:39:50 qqq joins (~qqq@185.54.21.178)
10:43:43 × pavonia quits (~user@user/siracusa) (Read error: Connection reset by peer)
10:44:01 pavonia joins (~user@user/siracusa)
10:54:06 fp joins (~Thunderbi@2001:708:20:1406::1370)
10:55:14 <gentauro> [exa]: could be. However, I would love to see F# removing all dependencies to MS, a bit like Java did with the openJDK
10:59:26 <gentauro> … and Oracle :)
11:06:26 <[exa]> doesn't it kinda become haskell by then?
11:08:34 <[exa]> (or ocaml, depending on which direction you take)
11:11:40 <gentauro> [exa]: but both Haskell and OCaml have garbage collectors. They seem to go the `C/C++/Rust` way -> https://speakez.tech/blog/gaining-closure/
11:12:44 <gentauro> like I say, they are so many "complex and hard" topics that I really would like this to succeed, just to see the outcome :o
11:12:55 × vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 240 seconds)
11:13:25 gentauro anyway, back to "old-school" coding
11:14:56 <[exa]> gentauro: I was trying to do similar some 10 years ago, the outcome is that converting any existing functional programming system to this behavior is either impossible or basically you end up with something like the compiled schemes or Rust
11:16:16 <[exa]> there was also quite a bit of research on related things back in 90s, maybe some stuff moved but my main takeaway was that it's not practical
11:17:42 <mesaoptimizer> what is the current recommended setup for emacs with haskell? if you have a robust configuration, please link it to me.
11:18:30 <mesaoptimizer> I think `haskell-mode` is unable to do stuff like open a `cabal repl` on a file that has an in-built set of dependencies declared
11:20:22 <haskellbridge> <magic_rb> thats more of a cabal problem i seem to recal
11:22:52 [exa] hides behind his zero lines of vim config
11:30:44 <gentauro> mesaoptimizer: my current setup doesn't work as expected, so I just "go with it" (no intellisense) xD
11:31:07 <gentauro> I'm going to give a talk in March. I should probably begin to look into how to solve it
11:31:10 × fp quits (~Thunderbi@2001:708:20:1406::1370) (Ping timeout: 245 seconds)
11:31:16 <gentauro> but you know, we are "lazy" after all xD
11:31:20 fp1 joins (~Thunderbi@2001:708:150:10::9d7e)
11:31:59 <gentauro> [exa]: yeah, it sounds to good to be true. But I like how they go to academia to get knowledge.
11:32:31 <gentauro> but, that sometimes come with the downside of not being "industry friendly" as you mention
11:33:32 <[exa]> wait how do they get knowledge from academia? (I probably missed that part, looks super industrial to me tbh)
11:34:30 fp joins (~Thunderbi@130.233.70.158)
11:34:59 × fp1 quits (~Thunderbi@2001:708:150:10::9d7e) (Client Quit)
11:36:48 <gentauro> [exa]: MLKit comes from academia -> https://www.itu.dk/research/mlkit (and the reserach page doesn't even work, so yeah, 100% academia xD)
11:37:29 <gentauro> The F* "thingy" is a 100% copied from Liquid Haskell -> https://software.imdea.org/careers/2022-02-intern-liquid/
11:38:41 <gentauro> so this core components are mental. Then they are also opting for creating all the environment tools https://speakez.tech/blog/leveling-up-with-lattice/
11:38:46 <gentauro> seems too much
11:41:33 <[exa]> seems a bit too much like the "works by MAGIC!!!!" 100% better FP compiler that we had here like 1 year ago (what was the name btw)
11:41:34 × _JusSx_ quits (~jussx@78.210.76.107) (Ping timeout: 256 seconds)
11:41:41 <[exa]> with extra LLM flavor on top
11:42:05 × trickard quits (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
11:42:18 trickard_ joins (~trickard@cpe-61-98-47-163.wireline.com.au)
11:43:29 _JusSx_ joins (~jussx@37.161.247.165)
11:44:17 <gentauro> the one that spawned from Elm?
11:44:59 <gentauro> https://www.roc-lang.org/examples/ElmWebApp/README <- this one?
11:45:23 <gentauro> not to confuse with https://en.wikipedia.org/wiki/Rocq (rename of Coq)
11:46:05 <gentauro> https://www.roc-lang.org/ <- this link instead
11:46:10 <mesaoptimizer> gentauro: MLton and Poly/ML are rock solid though
11:46:16 <tomsmeding> gentauro: do you mean this? https://elsman.com/mlkit/
11:46:25 <mesaoptimizer> I think the MLkit links are broken but IIRC they still have a github
11:46:44 <mesaoptimizer> tomsmeding: yes. https://github.com/melsman/mlkit
11:47:20 <[exa]> gentauro: nah it was some weirder one, unrelated to elm, it claimed it has waaaaaay better evaluation method than stg
11:47:54 <gentauro> xD
11:48:03 <tomsmeding> I know which you mean but names
11:48:12 <gentauro> tomsmeding: yes
11:48:27 <[exa]> yes
11:48:37 <tomsmeding> lol
11:48:39 trickard_ is now known as trickard
11:48:52 <[exa]> kinda looks like it disappeared from the internets, I'd say that confirms a hypothesis
11:48:58 <tomsmeding> Formality by Maia Victor
11:49:00 <tomsmeding> memory worked
11:49:44 <gentauro> «Mads Tofte (Main architect of adding region support to the MLKit, co-developer of MLKit version 1)»
11:49:53 <gentauro> I know him :)
11:50:11 <tomsmeding> oh right it was renamed, I guess HVM now
11:51:07 <gentauro> Victor Maia is the guy doing crazy lambda calculus right?
11:51:25 <tomsmeding> yeah graph reduction evaluation strategies for asymptotic performance improvements of standard evaluation
11:51:31 <tomsmeding> *over
11:52:16 <gentauro> tomsmeding: yeah, that's who I'm thinking of
11:52:49 <[exa]> but where's the explanation with the MAGIC gif
11:52:58 <tomsmeding> I dunno
11:53:15 × qqq quits (~qqq@185.54.21.178) (Ping timeout: 244 seconds)
11:53:32 <tomsmeding> but this does fancy evaluation strategies + had a hype cycle a few years back, so fits your description
11:53:41 <mesaoptimizer> https://xcancel.com/VictorTaelin/ do you mean this guy?
11:53:48 vanishingideal joins (~vanishing@user/vanishingideal)
11:53:56 <tomsmeding> name matches, in any case
11:53:58 <mesaoptimizer> he's gotten very distracted rewriting his interaction nets compiler
11:54:11 <tomsmeding> well interaction nets is what it was all about anyway from the start
11:54:12 <mesaoptimizer> went from Haskell to Rust to C IIRC
12:04:48 comerijn joins (~merijn@77.242.116.146)
12:06:08 × merijn quits (~merijn@77.242.116.146) (Ping timeout: 240 seconds)
12:06:20 <gentauro> tomsmeding: it's the same person -> https://github.com/maiavictor (
12:06:25 <gentauro> Account renamed to VictorTaelin.)
12:07:02 <tomsmeding> yeah
12:13:35 × Pozyomka quits (~pyon@user/pyon) (Quit: brb)
12:15:55 Pozyomka joins (~pyon@user/pyon)
12:16:05 × lucabtz quits (~lucabtz@user/lucabtz) (Ping timeout: 244 seconds)
12:20:52 <[exa]> I love how github gists serve as primary research communication vessel there
12:25:32 × wbrawner quits (~wbrawner@129.146.105.153) (Remote host closed the connection)
12:25:33 <tomsmeding> I've seen worse
12:25:39 <tomsmeding> at least gists have a unique ID
12:26:41 <int-e> Better than Discord.
12:26:58 <tomsmeding> ^
12:27:14 <tomsmeding> right, gists also have the obvious (?) advantage of being public
12:28:59 <[exa]> int-e: <3 <3 <3 publishing on a non-public chat <3 <3 <3 never thought about the advantages
12:31:51 wbrawner joins (~wbrawner@129.146.105.153)
12:32:32 <int-e> [exa]: you can always cits such things as "personal communcation" :P
12:32:34 <tomsmeding> [exa]: also gists have public edit history
12:32:42 machinedgod joins (~machinedg@d75-159-126-101.abhsia.telus.net)
12:32:46 tomsmeding now wonders if you can force-push to gists
12:33:53 lucabtz joins (~lucabtz@user/lucabtz)
12:34:20 <opqdonut> I'm pretty sure I've done it
12:37:24 <haskellbridge> <Morj> Yes you can, github gists are just a repository with a weird interface
12:37:25 × lucabtz quits (~lucabtz@user/lucabtz) (Client Quit)
12:37:27 humasect joins (~humasect@dyn-192-249-132-90.nexicom.net)
12:37:35 lucabtz joins (~lucabtz@user/lucabtz)
12:37:38 <haskellbridge> <Morj> And a restriction on having directories which is annoying
12:38:18 <tomsmeding> [exa]: here, the first weakness over arxiv spotted
12:38:30 <tomsmeding> /s
12:44:44 × vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 260 seconds)
12:45:50 <int-e> [exa]: there's also this 4chan story: https://en.wikipedia.org/wiki/Superpermutation#Lower_bounds,_or_the_Haruhi_problem
12:48:53 <[exa]> lovely
12:48:59 <mesaoptimizer> btw, did the FP complete people create Stack, and then move on to Rust?
12:49:13 <[exa]> (I'm busy starting Lecture Gists in Computer Science)
12:50:43 <int-e> [exa]: sorry I can't pay attention unless it's a 30 second performative dance in 9:16 format
12:54:52 × AlexZenon quits (~alzenon@85.174.181.199) (Quit: ;-)
12:56:37 chromoblob joins (~chromoblo@user/chromob1ot1c)
12:56:46 × AlexNoo quits (~AlexNoo@85.174.181.199) (Quit: Leaving)
12:56:57 qqq joins (~qqq@185.54.21.178)
12:58:19 <gentauro> mesaoptimizer: yeah, it seems like Snoyman did that :(
12:59:41 <gentauro> https://www.snoyman.com/ -> «With a deep passion for Rust and functional programming, …»
12:59:52 gentauro Rust before FP :'(
13:00:56 × chromoblob quits (~chromoblo@user/chromob1ot1c) (Ping timeout: 240 seconds)
13:04:04 × mange quits (~mange@user/mange) (Ping timeout: 246 seconds)
13:15:39 × comerijn quits (~merijn@77.242.116.146) (Ping timeout: 260 seconds)
13:16:53 merijn joins (~merijn@77.242.116.146)
13:18:29 xff0x joins (~xff0x@2405:6580:b080:900:5e48:b86:53c8:1c87)
13:20:37 AlexZenon joins (~alzenon@85.174.181.199)
13:22:22 AlexNoo joins (~AlexNoo@85.174.181.199)
13:23:09 AlexNoo_ joins (~AlexNoo@85.174.181.199)
13:23:25 × qqq quits (~qqq@185.54.21.178) (Ping timeout: 264 seconds)
13:23:53 AlexNoo__ joins (~AlexNoo@85.174.181.199)
13:24:55 × AlexZenon quits (~alzenon@85.174.181.199) (Ping timeout: 240 seconds)
13:26:46 × AlexNoo quits (~AlexNoo@85.174.181.199) (Ping timeout: 255 seconds)
13:26:54 zenstoic joins (uid461840@id-461840.hampstead.irccloud.com)
13:27:40 × AlexNoo_ quits (~AlexNoo@85.174.181.199) (Ping timeout: 255 seconds)
13:28:07 × AlexNoo__ quits (~AlexNoo@85.174.181.199) (Ping timeout: 255 seconds)
13:28:52 chromoblob joins (~chromoblo@user/chromob1ot1c)
13:29:09 AlexZenon joins (~alzenon@85.174.181.199)
13:29:23 Alex_delenda_est joins (~al_test@85.174.181.199)
13:31:45 AlexNoo joins (~AlexNoo@85.174.181.199)
13:32:43 emaczen joins (~user@user/emaczen)
13:37:49 × mjacob quits (~mjacob@adrastea.uberspace.de) (Ping timeout: 264 seconds)
13:42:01 <mesaoptimizer> wonder why
13:42:30 <mesaoptimizer> perhaps their target customer base changed
13:44:33 <gentauro> mesaoptimizer: I recall that Snoyman is educated in Actuarial sciences. Perhaps Rust is a better tool for solving those kind of problems?
13:54:57 infinity0 joins (~infinity0@pwned.gg)
13:56:00 poscat0x04 joins (~poscat@user/poscat)
13:57:58 × poscat quits (~poscat@user/poscat) (Ping timeout: 265 seconds)
14:01:31 × infinity0 quits (~infinity0@pwned.gg) (Ping timeout: 264 seconds)
14:02:07 × merijn quits (~merijn@77.242.116.146) (Ping timeout: 240 seconds)
14:03:48 __monty__ joins (~toonn@user/toonn)
14:04:30 akegalj joins (~akegalj@141-136-251-118.dsl.iskon.hr)
14:06:43 × Enrico63 quits (~Enrico63@148.252.128.12) (Ping timeout: 272 seconds)
14:07:28 merijn joins (~merijn@77.242.116.146)
14:08:33 tremon joins (~tremon@83.80.159.219)
14:09:00 × lucabtz quits (~lucabtz@user/lucabtz) (Quit: leaving)
14:09:10 lucabtz joins (~lucabtz@user/lucabtz)
14:13:02 wickedjargon joins (~user@2605:8d80:5431:33ac:d84d:2363:57fe:412)
14:13:29 <mesaoptimizer> well, I haven't tried Rust yet, but I do understand that it has a surprising number of ML-family features I appreciate, such as ADTs and exhaustive pattern matching
14:21:02 <haskellbridge> <magic_rb> and it lacks a substantial amount of features that make using it a pain :P
14:21:34 infinity0 joins (~infinity0@pwned.gg)
14:23:39 <lucabtz> magic_rb what features would you like to see in rust?
14:23:47 <merijn> It's more like "Rust pays a (fairly heavy) price, to attain something hard to achieve" (i.e. memory safety without GC)
14:24:03 <merijn> So Rust is supercool. IFF you cannot afford/accept a GC
14:24:18 <haskellbridge> <magic_rb> lucabtz: monads, more type magic, GC
14:24:38 <merijn> Now, personally I think the vast majority of code is perfectly fine with a GC. In which case you pay the price for nothing
14:24:45 <lucabtz> it kinda has do notation, but only for Option and Result
14:25:03 <merijn> If you can afford GC then something like Haskell, Scala, any ML will give you essentially all the stuff you want
14:25:03 <lucabtz> and for future
14:25:07 <haskellbridge> <magic_rb> in 99% of cases i dont give a rats ass about not having a GC and having to fight the borrow checker or sprinkle Arc<> absolutely everywhere is not what i want to be doing
14:25:23 <haskellbridge> <magic_rb> not having actual do notation with Monads is to me a deal breaker
14:25:43 <haskellbridge> <magic_rb> things get so much more awkward with those imo
14:25:58 <lucabtz> yeah they missed a chance with do notation maybe
14:29:12 <haskellbridge> <Morj> «what features would you like to see in rust» I want `pub fn append_byte<const N: usize>(array: [u8; N], b: u8) -> [u8; N + 1]` to compile
14:29:39 <haskellbridge> <Morj> And monad readers
14:29:50 <haskellbridge> <magic_rb> and a GC
14:29:57 <haskellbridge> <magic_rb> just, give me haskell thank you very much
14:30:11 <haskellbridge> <Morj> I'm partial to the RIO approach of having only one monad, but you parameterize the context you read from it
14:30:22 Enrico63 joins (~Enrico63@148.252.128.12)
14:30:29 <haskellbridge> <Morj> If this were in rust, some problems of async runtimes would be removed
14:30:41 <haskellbridge> <magic_rb> honestly the only reason i may personally choose rust over haskell is due to the library ecosystem. for embedded i would try microhs, though idk how well that would work
14:31:06 <haskellbridge> <Morj> «just, give me haskell thank you very much» yeh. Except I currently have to write a thing without gc or a large runtime at all
14:31:12 <haskellbridge> <magic_rb> :(
14:31:27 <haskellbridge> <Morj> Hm, actually microhs might fit there, need to evaluate
14:32:17 <haskellbridge> <Morj> Although, performance..
14:32:26 <haskellbridge> <magic_rb> microhs still does gc no?
14:32:33 <haskellbridge> <magic_rb> or does it do refcounting
14:33:18 <haskellbridge> <Morj> I think it's gc. I was rather talking about not having a big runtime, the environment is rather memory constrained
14:33:26 <haskellbridge> <Morj> «I have a [Word8] that I would like to convert to a Word32 in big endian. How can I do that?» - type shit that I have to deal with haskell
14:33:43 <haskellbridge> <Morj> *with in haskell
14:38:20 <haskellbridge> <magic_rb> my condolences
14:38:32 <haskellbridge> <magic_rb> i wrote a fat32 filesystem driver in haskell for my thesis, it was an experience
14:39:55 <merijn> I mean, that's kinda easy, just turn into ByteString and use attoparsec and/or binary :p
14:49:04 × noctux quits (~noctux@user/noctux) (Ping timeout: 246 seconds)
14:49:05 <akegalj> magic_rb: found this https://mail.haskell.org/pipermail/beginners/2010-October/005571.html
14:54:54 <gentauro> Morj: I noticed myself that Rust needs to know (statically) the size of arrays. Don't you end up by using a fixed buffer size and then just iterate?
14:55:35 <gentauro> And you end up padding/populating non-used array items with some value.
14:55:57 <haskellbridge> <Morj> In rust you can have a choice between statically and dynamically known sizes, roughly [u8; N] and Box<[u8]>
14:56:33 <haskellbridge> <Morj> I wanted to write this function because I have arrays of different sizes (for XOF seeding), and the algorithm wants to append one or two bytes to the seeds sometimes
14:57:19 <haskellbridge> <Morj> If it were just Box<[u8]>, this could be achieved very simply. If it were [u8; 32] to append a byte and get [u8; 33] - also very simple. But I wanted to write one function for several N sizes
14:59:58 <haskellbridge> <Morj> I could create an array of size 33 padded with zeroes, true, but it's even less convenient to use - there is no simple conversion from size 33 to size 32
15:00:40 <dutchie> why can I never remember which way the numbers go in fixity declarations
15:01:30 <dutchie> i always have to :i $ in ghci to see whether low number is tight binding or not
15:01:55 <haskellbridge> <Morj> I wanted to suggest memorizing that ($) is zero and using that as a mnemonic =)
15:04:28 <gentauro> Morj: Got it
15:06:59 noctux joins (~noctux@user/noctux)
15:09:17 × trickard quits (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
15:09:31 trickard_ joins (~trickard@cpe-61-98-47-163.wireline.com.au)
15:09:57 <mesaoptimizer> microhs + mcabal cannot yet install / build most hackage packages
15:10:23 <mesaoptimizer> IIRC it couldn't build aeson for example, because that relied on ghc-prim
15:10:35 <mesaoptimizer> any package that depends on ghc-prim cannot be installed via mcabal
15:10:50 <mesaoptimizer> also any package that involves networking seems to throw an error
15:17:34 tydes joins (~tydes@user/ttydes)
15:19:54 × petrichor quits (~jez@user/petrichor) (Quit: ZNC 1.10.1 - https://znc.in)
15:24:24 <haskellbridge> <Morj> But can I build using ghc with mcabal?
15:25:13 × Inline quits (~User@2a02:908:1246:26e0:e780:60f2:d5f3:ea13) (Quit: KVIrc 5.2.6 Quasar http://www.kvirc.net/)
15:30:59 <mesaoptimizer> you mean the `--ghc` switch? yeah I have troubles with using cabal for effectively anything. If you have a working cabal setup for your GHC then I guess that works. I don't think that strategy is tenable for someone who wants to use only microhs + mcabal though
15:31:15 × pavonia quits (~user@user/siracusa) (Ping timeout: 265 seconds)
15:31:21 <mesaoptimizer> also I'm unsure what happens when you use the `--ghc` switch with mcabal
15:32:51 <haskellbridge> <Morj> I meant building packages using ghc as the compiler and mcabal as the build system (mcabal calling ghc instead of microhs)
15:33:15 × wickedjargon quits (~user@2605:8d80:5431:33ac:d84d:2363:57fe:412) (Remote host closed the connection)
15:33:33 × fp quits (~Thunderbi@130.233.70.158) (Ping timeout: 250 seconds)
15:33:51 <mesaoptimizer> I see. I think that is what the switch that I recall may have been doing.
15:34:15 mesaoptimizer sighs and reinstalls microhs again to double check
15:34:38 <haskellbridge> <Morj> Oh cool. I should install and try it myself (=
15:35:08 <mesaoptimizer> its lovely to have a very tiny haskell implementation, to be honest
15:35:29 <haskellbridge> <Morj> The worst part is that I get an urge to write one myself too
15:35:34 <mesaoptimizer> the obvious downside is that almost the entire hackage system is inaccessible
15:36:12 <mesaoptimizer> I think it is a fun idea :)
15:36:31 <mesaoptimizer> I've thought about a call-by-push-value lambda calculus compiler for haskell
15:48:01 × Enrico63 quits (~Enrico63@148.252.128.12) (Quit: Client closed)
15:49:12 × lucabtz quits (~lucabtz@user/lucabtz) (Quit: Lost terminal)
15:53:44 trickard_ is now known as trickard
15:56:31 × weary-traveler quits (~user@user/user363627) (Remote host closed the connection)
16:00:13 × Square quits (~Square4@user/square) (Ping timeout: 244 seconds)
16:01:21 edwardk awakens from his long slumber.
16:01:53 × edwardk quits (sid47016@id-47016.ilkley.irccloud.com) (Changing host)
16:01:53 edwardk joins (sid47016@haskell/developer/edwardk)
16:04:32 × Googulator61 quits (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu) (Quit: Client closed)
16:04:48 Googulator61 joins (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu)
16:07:59 × _JusSx_ quits (~jussx@37.161.247.165) (Ping timeout: 265 seconds)
16:08:32 <merijn> edwardk: Like an eldritch horror ready to melt the minds of man?
16:11:33 petrichor joins (~jez@user/petrichor)
16:11:42 <tomsmeding> magic_rb: you can't suffice with refcounting for haskell, you get cycles all over the place that you have to collect with some kind of tracing GC
16:12:10 <tomsmeding> (python is known for its refcounting system but it has a tracing GC too that runs occasionally, because of cycles)
16:21:58 Enrico63 joins (~Enrico63@148.252.128.12)
16:29:06 × Googulator61 quits (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu) (Quit: Client closed)
16:29:10 Googulator27 joins (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu)
16:32:43 <edwardk> merijn: precisely
16:33:51 × Enrico63 quits (~Enrico63@148.252.128.12) (Quit: Client closed)
16:33:55 × ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (Quit: leaving)
16:34:15 ezzieyguywuf joins (~Unknown@user/ezzieyguywuf)
16:39:43 × bggd_ quits (~bgg@2a01:e0a:fd5:f510:ffc1:9b0f:82de:9e53) (Remote host closed the connection)
16:40:27 <merijn> tomsmeding: Additionally that just doesn't jive well with the garbage profile of most haskell programs
16:40:46 <merijn> Refcounting is great when you have few mostly long lived big things
16:40:53 <merijn> Not for "bazillions of short-lived tiny things"
16:52:03 <gentauro> greetings edwardk
16:53:22 gentauro lucky enough to have experienced edwardk coding-live at Poznan at a river while everybody else were partying <3
16:53:47 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
16:57:58 <edwardk> gentauro: =)
16:58:25 <edwardk> Most of my coding lately has been in systemverilog
16:58:28 × merijn quits (~merijn@77.242.116.146) (Ping timeout: 260 seconds)
16:58:40 <edwardk> That said, we are starting to use Haskell again at Positron!
17:00:08 <edwardk> I think that was an inevitable consequence of hiring johnw and bgamari.
17:08:47 acidjnk joins (~acidjnk@p200300d6e700e57835d41376842fa308.dip0.t-ipconnect.de)
17:11:51 × humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...)
17:13:11 × akegalj quits (~akegalj@141-136-251-118.dsl.iskon.hr) (Remote host closed the connection)
17:14:47 <gentauro> I recall bgamari from working on GHC paid by MS right? (Simon Marlow mentioned this)
17:15:34 tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net)
17:16:58 <geekosaur> dunno about that but more recently he was working for Well-Typed which I think took on ghc after MSR dropped it?
17:19:55 <gentauro> geekosaur: I guess the wording should have been "sponsored" by MS.
17:20:12 <gentauro> I guess also since Marlow left FB/Meta, they dropped Haskell right?
17:21:16 × Googulator27 quits (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu) (Quit: Client closed)
17:21:24 Googulator27 joins (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu)
17:24:41 <edwardk> gentauro, geekosaur: correct on both accounts
17:25:02 <edwardk> re fb/meta not sure if _all_ haskell inside meta is gone, but a lot of it is
17:25:11 jmcantrell_ joins (~weechat@user/jmcantrell)
17:25:17 jmcantrell_ is now known as jmcantrell
17:29:40 <gentauro> edwardk: :'(
17:30:45 <gentauro> and when Mathieu Boespflug sold Tweag, both Haskell and OCaml was "somehow" abandoned :'(
17:30:55 <gentauro> not good time for FP tbh :-\
17:31:35 gentauro what if we rename the awesome tools to: hAIskell and ocAIml xD
17:31:43 × mniip quits (mniip@libera/staff-emeritus/mniip) (Ping timeout: 612 seconds)
17:31:48 gentauro we would probably down in funding xD
17:33:48 <gentauro> down = drown
17:36:48 mniip joins (mniip@libera/staff-emeritus/mniip)
17:46:31 <int-e> gentAIuro: Be caireful whait you wish for.
17:49:11 <gentauro> AInt-e: roger that
17:54:53 wickedjargon joins (~user@24.83.46.194)
17:57:35 ft joins (~ft@p508db4c0.dip0.t-ipconnect.de)
17:59:24 ljdarj joins (~Thunderbi@user/ljdarj)
18:02:56 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Ping timeout: 256 seconds)
18:03:25 <apache> tomsmeding: thanks for dealing with that :)
18:03:38 <apache> the lycurgus situation I mean
18:03:44 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
18:04:02 <apache> gentauro: you don't need to rename ocaML
18:04:03 <edwardk> gentauro: i mean, positron is still hiring haskell folks
18:04:25 <apache> haskeLLM - fixed
18:04:54 <edwardk> haskLLM has a nice ring to it
18:13:45 × divlamir quits (~divlamir@user/divlamir) (Read error: Connection reset by peer)
18:14:00 divlamir joins (~divlamir@user/divlamir)
18:14:08 × wickedjargon quits (~user@24.83.46.194) (Remote host closed the connection)
18:16:58 × trickard quits (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
18:17:11 trickard_ joins (~trickard@cpe-61-98-47-163.wireline.com.au)
18:27:23 <gentauro> edwardk: that's pretty nice :)
18:28:24 <gentauro> and I'm guessing Galois is also still hiring haskells right?
18:30:10 <edwardk> i haven't checked galois' pulse in a while. i'd presume so
18:30:40 <edwardk> topos institute is working with aria on some category theory ish stuff, but its all over in rust these days
18:31:19 <gentauro> iirc teh LEAN project also hired a few prominent haskellers
18:32:37 × arandombit quits (~arandombi@user/arandombit) (Remote host closed the connection)
18:37:20 kilolympus joins (~kilolympu@vmi1102682.contaboserver.net)
18:43:54 × chele quits (~chele@user/chele) (Remote host closed the connection)
19:01:31 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Ping timeout: 264 seconds)
19:02:23 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
19:04:32 vanishingideal joins (~vanishing@user/vanishingideal)
19:06:35 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Ping timeout: 245 seconds)
19:07:10 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
19:09:19 spew joins (~spew@user/spew)
19:10:45 × spew quits (~spew@user/spew) (Client Quit)
19:19:55 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Ping timeout: 245 seconds)
19:21:59 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
19:23:19 trickard_ is now known as trickard
19:25:49 × zenstoic quits (uid461840@id-461840.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
19:39:32 target_i joins (~target_i@user/target-i/x-6023099)
19:43:00 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
19:43:14 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds)
19:44:17 Lord_of_Life_ is now known as Lord_of_Life
19:44:55 × vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 245 seconds)
19:47:03 Tuplanolla joins (~Tuplanoll@85-156-32-207.elisa-laajakaista.fi)
19:47:57 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Quit: ZNC 1.7.5 - https://znc.in)
19:48:13 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
19:49:25 × Googulator27 quits (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu) (Quit: Client closed)
19:49:40 Googulator27 joins (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu)
19:50:03 spew joins (~spew@user/spew)
19:51:15 × polykernel quits (~polykerne@user/polykernel) (Remote host closed the connection)
19:53:09 vanishingideal joins (~vanishing@user/vanishingideal)
19:57:37 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Ping timeout: 264 seconds)
19:58:35 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
20:01:20 polykernel joins (~polykerne@user/polykernel)
20:02:22 × kuribas quits (~user@2a02-1810-2825-6000-16d8-7b7e-1bcd-b36.ip6.access.telenet.be) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.3))
20:11:47 × spew quits (~spew@user/spew) (Read error: Connection reset by peer)
20:12:56 tromp joins (~textual@2001:1c00:3487:1b00:10a6:5d4a:b26:4065)
20:25:59 <__monty__> Isn't Lean academic?
20:28:25 Googulator2 joins (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu)
20:28:29 × Googulator27 quits (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu) (Quit: Client closed)
20:36:13 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
20:36:14 × vidak quits (~vidak@2407:e400:7800:2c01:d0be:76f8:cc84:bd4a) (Ping timeout: 265 seconds)
20:43:00 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
20:43:13 <tomsmeding> systems for formalising mathematics are not very attractive to industry, I'd wager
20:44:15 <tomsmeding> perhaps that's overly reductive. But maybe the same holds for proof systems in general; industry use of formal methods seems to saturate around the point of model checking
20:44:56 Googulator2 is now known as Googulator
20:54:17 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
20:58:11 housemate joins (~housemate@202.7.248.67)
20:58:51 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
21:02:34 × AlexZenon quits (~alzenon@85.174.181.199) (Ping timeout: 256 seconds)
21:04:42 pavonia joins (~user@user/siracusa)
21:05:26 AlexZenon joins (~alzenon@85.174.181.199)
21:07:47 AlexZenon_2 joins (~alzenon@85.174.181.199)
21:10:05 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
21:10:28 × AlexZenon quits (~alzenon@85.174.181.199) (Ping timeout: 260 seconds)
21:12:11 AlexZenon joins (~alzenon@85.174.181.199)
21:12:13 × AlexZenon_2 quits (~alzenon@85.174.181.199) (Ping timeout: 260 seconds)
21:14:10 × trickard quits (~trickard@cpe-61-98-47-163.wireline.com.au) (Read error: Connection reset by peer)
21:14:13 AlexZenon_2 joins (~alzenon@85.174.181.199)
21:14:23 trickard_ joins (~trickard@cpe-61-98-47-163.wireline.com.au)
21:15:19 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
21:16:31 × AlexZenon quits (~alzenon@85.174.181.199) (Ping timeout: 240 seconds)
21:22:33 × acidjnk quits (~acidjnk@p200300d6e700e57835d41376842fa308.dip0.t-ipconnect.de) (Remote host closed the connection)
21:22:56 acidjnk joins (~acidjnk@p200300d6e700e57835d41376842fa308.dip0.t-ipconnect.de)
21:25:51 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
21:27:37 <jreicher> mesaoptimizer: I don't do Haskell heavily in Emacs, but based on my experience with other languages and what I'm seeing out there I would strongly recommend eglot, regardless of the major mode you choose, and then do your own comparison of haskell-mode vs haskell-ts-mode. (My hunch is the latter is better.)
21:31:13 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
21:37:46 × Googulator quits (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu) (Quit: Client closed)
21:38:02 Googulator joins (~Googulato@2a01-036d-0106-216f-0081-f2ad-9e0f-9d89.pool6.digikabel.hu)
21:38:51 <monochrom> Industry wants to minimize proofs-by-humans. So they will take automated checks, or more recently, proofs-by-AI.
21:39:48 <monochrom> Well, in the limit, minimize both verification by humans and synthesis by humans. We're getting there!
21:39:51 × michalz quits (~michalz@185.246.207.218) (Remote host closed the connection)
21:41:40 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
21:44:31 × takuan quits (~takuan@d8D86B9E9.access.telenet.be) (Ping timeout: 246 seconds)
21:46:19 × cyphase quits (~cyphase@user/cyphase) (Ping timeout: 265 seconds)
21:46:29 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
21:48:43 × marinelli quits (~weechat@gateway/tor-sasl/marinelli) (Quit: marinelli)
21:48:53 × tromp quits (~textual@2001:1c00:3487:1b00:10a6:5d4a:b26:4065) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:51:21 <jreicher> Verification by humans will never completely go away. When people die, there's general agreement the software might have done the wrong thing.
21:51:56 <jreicher> Better not to test in prod though, of course.
21:52:19 × hakutaku quits (~textual@user/hakutaku) (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:52:46 hakutaku joins (~textual@user/hakutaku)
21:52:46 marinelli joins (~weechat@gateway/tor-sasl/marinelli)
21:54:37 × target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving)
21:55:54 tromp joins (~textual@2001:1c00:3487:1b00:10a6:5d4a:b26:4065)
21:57:25 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
22:02:01 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
22:05:05 × vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 244 seconds)
22:06:47 <gentauro> with regard to LEAN, I like the following explanation from Charles Hoskinson: https://www.youtube.com/watch?v=3snIzhjqsk0 (academic papers tend to loose insights, so by providing a more formal framework, we might have better insights)
22:14:43 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
22:18:59 × xff0x quits (~xff0x@2405:6580:b080:900:5e48:b86:53c8:1c87) (Quit: xff0x)
22:21:20 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
22:21:50 peterbecich joins (~Thunderbi@71.84.33.135)
22:29:32 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
22:29:37 chexum_ joins (~quassel@gateway/tor-sasl/chexum)
22:32:45 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
22:34:49 <EvanR> jreicher, sure... blame the computer!
22:35:36 <EvanR> technology, industrialization absolving people of accountability
22:37:22 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
22:39:48 <jreicher> EvanR: I know you're joking, but in all seriousness I "lecture" to every non-techy I meet that when a bug hits it's not a computer malfunction. The computer did exactly what it was told to do. It's the developers who malfunctioned.
22:41:15 <EvanR> (except for surface level consumer hardware does experience random errors for reasons... though that's just another instance of the same point)
22:42:45 <EvanR> one of these esolangs has your code devolving as it runs, due to "entropy"... annoying until you accept this is happening to your real computer all the time xD
22:43:16 <EvanR> at a much slower pace
22:43:37 <jreicher> Yeah, this is specific to "bugs"
22:45:54 × skum quits (~skum@user/skum) (Quit: WeeChat 4.8.1)
22:46:29 <EvanR> this code is provided without any warranty or even an implied warranty of merchantability or fitness for a particular purpose!
22:48:18 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
22:48:48 vanishingideal joins (~vanishing@user/vanishingideal)
22:52:55 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
22:54:03 skum joins (~skum@user/skum)
22:56:22 xff0x joins (~xff0x@2405:6580:b080:900:d171:1c19:51a5:d6b5)
23:01:34 × tromp quits (~textual@2001:1c00:3487:1b00:10a6:5d4a:b26:4065) (Quit: My iMac has gone to sleep. ZZZzzz…)
23:04:09 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
23:08:56 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
23:15:24 mange joins (~mange@user/mange)
23:18:37 × paddymahoney quits (~paddymaho@pool-99-250-10-137.cpe.net.cable.rogers.com) (Remote host closed the connection)
23:19:53 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
23:24:13 paddymahoney joins (~paddymaho@pool-99-250-10-137.cpe.net.cable.rogers.com)
23:24:55 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
23:28:55 × vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 240 seconds)
23:33:40 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
23:38:15 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
23:40:50 <haskellbridge> <loonycyborg> There still are actual malfunctions out there, like faulty ram modules that flip some bits.
23:41:26 <haskellbridge> <loonycyborg> good luck figuring out what is because of such a malfunction and what comes from programmer brainfarts :P
23:44:07 × peterbecich quits (~Thunderbi@71.84.33.135) (Ping timeout: 264 seconds)
23:49:23 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
23:50:38 <EvanR> not just faulty ram, unless it's by definition, even space grade chips will be giving a rating in terms of probability
23:51:48 <lantti> isn't it still a programmers decision if it is acceptable that such malfunctions cause a program to fail (considering severity and probability etc.)?
23:52:39 <lantti> if it is not then the programmer must take that into consideration and have reduncancy and whatnot
23:52:43 <EvanR> that's the esolang I was talking about
23:52:55 <jreicher> I wish my workplace tested with chaosmonkey
23:52:57 <EvanR> where code is deterioriating around you, and it's up to the programmer to somehow deal with it
23:53:20 <lantti> oh, sorry I didn't read back far enough
23:53:23 <EvanR> instead of assuming we have this luxurious ideal computer
23:53:38 qqq joins (~qqq@185.54.21.178)
23:54:00 <haskellbridge> <loonycyborg> I remember random flips from alpha particles were actual problem for some ram chips
23:54:01 <haskellbridge> <loonycyborg> but there's some possibility that space radiation could flip a bit in any chip
23:54:24 <EvanR> I need to find this page by superkuh, which lists all the reasons the bits could flip
23:54:27 <haskellbridge> <loonycyborg> and probably many other sources of bad things that could happem..
23:54:54 <EvanR> space radiation over here, the material your chip is made of has a % of radioactive material in it, ...
23:56:03 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
23:56:17 <EvanR> https://esolangs.org/wiki/Entropy
23:56:28 <haskellbridge> <loonycyborg> maybe even just above average thermal fluctuation, given how small chips are now
23:56:40 <haskellbridge> <loonycyborg> dense that is

All times are in UTC on 2026-02-04.