2022/05/13

2022-05-13 00:02:08 +0200 <mshiraeeshi> tomsmeding: "clone the aeson git repo in a subdirectory, check out the 1.5.6.0 version, add that subdirectory to your cabal.project 'packages' line, build the main project, and then manually remove all the Option instances from aeson"
2022-05-13 00:02:34 +0200noteness_(~noteness@user/noteness) (Ping timeout: 240 seconds)
2022-05-13 00:02:42 +0200 <mshiraeeshi> I did that, I didn't even have to remove Option instances for some reason, now it gives me other errors
2022-05-13 00:03:22 +0200 <mshiraeeshi> cannot build attoparsec: expects Word8# but gets Word# https://paste.tomsmeding.com/UBdsvfbw
2022-05-13 00:03:25 +0200noteness(~noteness@user/noteness)
2022-05-13 00:03:34 +0200gehmehgeh(~user@user/gehmehgeh) (Ping timeout: 240 seconds)
2022-05-13 00:03:34 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds)
2022-05-13 00:04:00 +0200 <mshiraeeshi> cannot build base-compat: 'Option' is not in scope https://paste.tomsmeding.com/Yz5oO5rk
2022-05-13 00:04:04 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 240 seconds)
2022-05-13 00:04:04 +0200tusko(~yeurt@user/tusko) (Ping timeout: 240 seconds)
2022-05-13 00:04:20 +0200MoC(~moc@user/moc) (Quit: Konversation terminated!)
2022-05-13 00:04:32 +0200odnes(~odnes@5-203-160-39.pat.nym.cosmote.net) (Remote host closed the connection)
2022-05-13 00:04:34 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
2022-05-13 00:04:35 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-05-13 00:04:50 +0200alx741(~alx741@host-181-198-243-150.netlife.ec) (Ping timeout: 240 seconds)
2022-05-13 00:05:34 +0200tusko(~yeurt@user/tusko)
2022-05-13 00:05:43 +0200michalz(~michalz@185.246.204.125) (Remote host closed the connection)
2022-05-13 00:05:46 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-05-13 00:05:59 +0200gehmehgeh(~user@user/gehmehgeh)
2022-05-13 00:07:09 +0200romesrf(~romes@185.5.8.134) (Quit: WeeChat 3.4.1)
2022-05-13 00:07:21 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2022-05-13 00:09:49 +0200alx741(~alx741@host-181-198-243-150.netlife.ec)
2022-05-13 00:11:06 +0200AlexNoo_(~AlexNoo@178.34.163.35)
2022-05-13 00:11:23 +0200 <mshiraeeshi> but attoparsec and base-compat are already commented out in "constraints" section in cabal.project
2022-05-13 00:11:23 +0200 <mshiraeeshi> so I don't know what to do about it
2022-05-13 00:11:24 +0200mshiraeeshi(~shiraeesh@109.166.56.211) (Remote host closed the connection)
2022-05-13 00:11:41 +0200mshiraeeshi(~shiraeesh@109.166.56.211)
2022-05-13 00:12:53 +0200Henson(~kvirc@107-179-133-201.cpe.teksavvy.com)
2022-05-13 00:13:19 +0200 <sclv> i think you should strip out the allow-newers
2022-05-13 00:13:41 +0200 <mshiraeeshi> I tried that, cabal couldn't resolve dependencies
2022-05-13 00:13:41 +0200 <sclv> they're letting bad plans go thru (and were there to allow patched versions of existing libs from head.hackage work)
2022-05-13 00:13:44 +0200 <sclv> right
2022-05-13 00:13:53 +0200 <sclv> it is correct that cabal can't resolve dependencies
2022-05-13 00:14:04 +0200 <sclv> that's a problem thats often solvable
2022-05-13 00:14:10 +0200AlexNoo(~AlexNoo@178.34.163.35) (Ping timeout: 240 seconds)
2022-05-13 00:14:26 +0200 <sclv> the allow-newers allow it to "resolve" deps in a way that doesn't actually build, as you've witnessed
2022-05-13 00:16:14 +0200 <sclv> i'm sorry you're running into so much trouble here. its really clearly something that was intended as a snapshot to work on a very specific state of the world in dev, not as a "timeless" stable repo :-/
2022-05-13 00:16:23 +0200 <mshiraeeshi> there's a conflict between aeson and base
2022-05-13 00:16:45 +0200 <mshiraeeshi> https://paste.tomsmeding.com/nTHzWOGU
2022-05-13 00:17:25 +0200 <mshiraeeshi> you mean it was only intended to work at the day of the presentation?
2022-05-13 00:17:32 +0200 <mshiraeeshi> that's too bad
2022-05-13 00:17:41 +0200 <sclv> basically -- it involves the innately unstable head.hackage
2022-05-13 00:17:52 +0200 <sclv> and a specific snapshot of a development version of ghc
2022-05-13 00:18:09 +0200 <sclv> i'm sure its salvagable but it wasn't done in such a way that it makes it easy for you or anyone else to do so
2022-05-13 00:19:02 +0200 <zzz> how can i make an instance of show that prints lazily like List does?
2022-05-13 00:19:51 +0200 <zzz> s/show/Show
2022-05-13 00:20:03 +0200 <sclv> the fact that aeson chose to not have compat releases between the old stuff and the new stuff doesn't help
2022-05-13 00:20:46 +0200 <sclv> you _might_ be able to get somewhere with "allow-newer: aeson:base" but who knows
2022-05-13 00:21:21 +0200 <sclv> you definitely don't want "allow-newer: base" in general
2022-05-13 00:22:19 +0200 <mshiraeeshi> still the conflict between aeson and base even with "allow-newer: aeson:base"
2022-05-13 00:22:33 +0200 <yushyin> you could try an older toolchain with older base and older ghc-prim
2022-05-13 00:23:25 +0200 <mshiraeeshi> you mean trying with older ghc?
2022-05-13 00:23:32 +0200 <yushyin> yup
2022-05-13 00:23:59 +0200 <yushyin> e.g. 8.10.7
2022-05-13 00:24:09 +0200 <sclv> i think that this demo is specifically designed for features of the latest ghc
2022-05-13 00:24:15 +0200 <mshiraeeshi> tried with ghc-9.0.2, there's a conflict between base, cereal, chatter
2022-05-13 00:24:20 +0200 <sclv> https://github.com/well-typed/memory-usage-zurihac-2021
2022-05-13 00:24:38 +0200 <mshiraeeshi> same with 8.10.7
2022-05-13 00:25:01 +0200 <sclv> mshiraeeshi: you could try to vendor aeson i suppose and change its base constraint manually
2022-05-13 00:25:24 +0200 <mshiraeeshi> oh yeah, I forgot about that, they mention in the readme that it requires ghc-9.2
2022-05-13 00:25:51 +0200alx741(~alx741@host-181-198-243-150.netlife.ec) (Ping timeout: 276 seconds)
2022-05-13 00:26:38 +0200 <maerwald> https://cabal.readthedocs.io/en/3.6/cabal-project.html?highlight=optional-packages#cfg-field-optio…
2022-05-13 00:27:40 +0200zebrag(~chris@user/zebrag)
2022-05-13 00:28:02 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2022-05-13 00:28:35 +0200 <geekosaur> zzz, a user-defined list type Show-s lazily for me. are you trying to lazily show a strict type? I suspect that's doomed
2022-05-13 00:30:47 +0200 <yushyin> how did that even work? ghc-9.2.1 ships ghc-prim 8.0 but the project wants aeson ==1.5.6.0 which has dep on ghc-prim with (>=0.2 && <0.8)?
2022-05-13 00:31:25 +0200 <geekosaur> if I recall the start of this conversation, it was actually using alpha4
2022-05-13 00:31:39 +0200 <geekosaur> which may mean ghc-prim hadn't been bumped yet
2022-05-13 00:32:28 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 00:33:03 +0200 <yushyin> ah yes, that could be it
2022-05-13 00:33:27 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 00:36:17 +0200ub1(~Thunderbi@p548c8d44.dip0.t-ipconnect.de)
2022-05-13 00:37:13 +0200 <zzz> geekosaur: data List a = a ::: List deriving Show ; list x = x ::: list x -- print $ list ()
2022-05-13 00:37:20 +0200ub(~Thunderbi@p200300ecdf15880b09d618bc8a498343.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-05-13 00:37:21 +0200 <zzz> what am i doing wrong geekosaur?
2022-05-13 00:37:48 +0200 <zzz> aside from missing an a in there
2022-05-13 00:37:52 +0200 <geekosaur> you have no base case
2022-05-13 00:38:05 +0200 <geekosaur> or equivently no end of list marker
2022-05-13 00:38:22 +0200 <zzz> i ommited it, but does that make a difference?
2022-05-13 00:38:35 +0200ub1ub
2022-05-13 00:38:39 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 265 seconds)
2022-05-13 00:38:40 +0200 <geekosaur> a list with no end is a stream, not a list
2022-05-13 00:39:11 +0200 <geekosaur> > Cons 5 (Cons 3 (Cons 2 undefined)) -- lazy
2022-05-13 00:39:12 +0200 <lambdabot> Cons 5 (Cons 3 (Cons 2 *Exception: Prelude.undefined
2022-05-13 00:39:30 +0200 <geekosaur> > SCons 5 (SCons 3 (SCons 2 undefined))
2022-05-13 00:39:32 +0200 <lambdabot> *Exception: Prelude.undefined
2022-05-13 00:39:50 +0200 <geekosaur> that was the "same" List but with a strict spine
2022-05-13 00:39:59 +0200 <zzz> ok
2022-05-13 00:40:02 +0200 <zzz> still
2022-05-13 00:40:20 +0200 <zzz> data List a = a ::: List a | Nil deriving Show
2022-05-13 00:40:28 +0200 <zzz> still doesn't print lazily
2022-05-13 00:40:33 +0200 <geekosaur> ( data List a = Nil | Cons a (List a), vs. data SList a = SNil | SCons a !(SList a) )
2022-05-13 00:41:04 +0200 <geekosaur> @undef
2022-05-13 00:41:05 +0200 <lambdabot> Undefined.
2022-05-13 00:41:28 +0200 <geekosaur> @let data List a = Nil | a ::: List a deriving Show
2022-05-13 00:41:29 +0200 <lambdabot> Defined.
2022-05-13 00:41:43 +0200 <geekosaur> @undef
2022-05-13 00:41:43 +0200 <lambdabot> Undefined.
2022-05-13 00:41:58 +0200 <geekosaur> @let data List a = Nil | a ::: List a deriving Show; infixr 6 :::
2022-05-13 00:41:59 +0200 <lambdabot> Defined.
2022-05-13 00:42:11 +0200 <geekosaur> > 5 ::: 3 ::: 2 ::: undefined
2022-05-13 00:42:14 +0200 <lambdabot> 5 ::: (3 ::: (2 ::: *Exception: Prelude.undefined
2022-05-13 00:42:19 +0200 <geekosaur> looks lazy to me
2022-05-13 00:42:24 +0200 <zzz> hmm
2022-05-13 00:49:35 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 00:52:10 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-05-13 00:52:20 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 00:52:54 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 00:53:22 +0200stackdroid18(14094@user/stackdroid)
2022-05-13 00:54:25 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
2022-05-13 00:55:27 +0200 <zzz> > [1,2,undefined]
2022-05-13 00:55:29 +0200 <lambdabot> [1,2,*Exception: Prelude.undefined
2022-05-13 00:55:41 +0200 <zzz> ok something's wrong with my ghci
2022-05-13 00:56:01 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-05-13 00:57:29 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
2022-05-13 00:58:43 +0200 <zzz> *facepalm* i had -XOverloadedLists on my .ghci
2022-05-13 00:58:57 +0200 <zzz> i think that was it
2022-05-13 01:00:50 +0200xaotuk(~sasha@net137-36-245-109.mbb.telenor.rs) (Ping timeout: 240 seconds)
2022-05-13 01:01:59 +0200 <texasmynsted> Anybody created or know of some examples of _small_ standalone Haskell executables that use pandoc as a module/lib. A filter feels too big for a single tag.
2022-05-13 01:02:56 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
2022-05-13 01:04:39 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-05-13 01:11:47 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 252 seconds)
2022-05-13 01:14:00 +0200 <sm> texasmynsted: how do you mean small ? like hakyll ?
2022-05-13 01:14:45 +0200Hash(~Hash@hey.howstoned.ru) (Quit: ZNC - https://znc.in)
2022-05-13 01:14:48 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-05-13 01:15:32 +0200 <sm> pandoc is such a heavy dependency, I go out of my way to use the binary (and maybe lua plugins) if at all possible
2022-05-13 01:16:51 +0200andrey(~andrey@p200300dbcf003200efdd83e940d7d35b.dip0.t-ipconnect.de)
2022-05-13 01:17:37 +0200 <geekosaur> hm. we used to have one but it's been rewritten
2022-05-13 01:19:02 +0200AlexNoo_AlexNoo
2022-05-13 01:19:48 +0200andrey__(~andrey@p200300dbcf15e00051e3a882b5958800.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-05-13 01:21:08 +0200alp_(~alp@user/alp)
2022-05-13 01:22:11 +0200 <geekosaur> https://github.com/xmonad/xmonad/blob/66d22417035c1e7e9ca9c9f7692b9ce5ba2991b4/util/GenerateManpag…
2022-05-13 01:22:57 +0200jargon(~jargon@174-22-206-112.phnx.qwest.net)
2022-05-13 01:24:28 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 260 seconds)
2022-05-13 01:26:40 +0200Hash(~Hash@hey.howstoned.ru)
2022-05-13 01:31:00 +0200Hash(~Hash@hey.howstoned.ru) (Client Quit)
2022-05-13 01:34:10 +0200dhil(~dhil@cpc103052-sgyl39-2-0-cust260.18-2.cable.virginm.net) (Ping timeout: 240 seconds)
2022-05-13 01:38:38 +0200 <texasmynsted> like MUCH smaller than hakyll. I love hakyll but it is not small.
2022-05-13 01:40:14 +0200 <texasmynsted> I mean small like maybe it would be a good project for me to just build a parsec parser to parse the markdown image tag, and transform it to an HTML tag directly, leaving pandoc out.
2022-05-13 01:40:19 +0200machinedgod(~machinedg@24.105.81.50) (Ping timeout: 260 seconds)
2022-05-13 01:41:06 +0200 <texasmynsted> geekosaur: ooh that is neat.
2022-05-13 01:42:20 +0200 <texasmynsted> I have so much to learn, but I just want to direct my efforts to result in the smallest _haskell_ solution possible.
2022-05-13 01:43:33 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2022-05-13 01:44:09 +0200 <texasmynsted> Here is a gist https://github.com/xmonad/xmonad/blob/66d22417035c1e7e9ca9c9f7692b9ce5ba2991b4/util/GenerateManpag…
2022-05-13 01:44:25 +0200 <texasmynsted> sigh. Sorry pastebord did not update
2022-05-13 01:44:33 +0200 <texasmynsted> https://gist.github.com/mmynsted/4478021ce828979c8a4d016dd6dff609
2022-05-13 01:45:23 +0200 <texasmynsted> sometimes writing stuff out like that leads me to a solution. shrug
2022-05-13 01:47:15 +0200kitty1(~kitty@096-039-147-043.res.spectrum.com)
2022-05-13 01:48:06 +0200 <sm> I'm not quite clear on the question/problem in the paste.. you could package it as an easy shell script ?
2022-05-13 01:49:57 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-05-13 01:52:02 +0200 <dibblego> I wrote my own "trimmed down syntax tree" once. I wrote practice exams in it, then went out to different formats. Quick hack.
2022-05-13 01:55:59 +0200 <texasmynsted> shell script would work sure.
2022-05-13 01:56:33 +0200Hash(~Hash@hey.howstoned.ru)
2022-05-13 01:56:39 +0200 <texasmynsted> I plan to call it from a vim key binding and also a hammerspoon or other binding so I can do the same from outside vim.
2022-05-13 01:57:35 +0200 <texasmynsted> My goal is to make something small and learn how to be comfortable with small haskell things. I am trying to replace bash/regex with haskell.
2022-05-13 01:57:58 +0200 <sm> ah, cool
2022-05-13 01:58:11 +0200 <sm> have you considered a stack script ?
2022-05-13 01:58:11 +0200 <texasmynsted> quick hack for you dibblego Hehe
2022-05-13 01:58:23 +0200 <sm> that's haskell, but a single file
2022-05-13 01:58:42 +0200 <texasmynsted> Can I do that with cabal?
2022-05-13 01:58:48 +0200 <texasmynsted> I am not sure what a stack script is.
2022-05-13 01:59:00 +0200 <EvanR> cabal scripts are cool
2022-05-13 01:59:03 +0200 <sm> yes, it's not quite as good.but the same idea
2022-05-13 01:59:11 +0200 <texasmynsted> I know what stack is, but I use cabal rather than stack.
2022-05-13 01:59:20 +0200 <dibblego> yeah I needed to study, not write code
2022-05-13 02:00:00 +0200 <texasmynsted> Isn't that when the code gets written, when you are _supposed_ to be doing something else?
2022-05-13 02:00:25 +0200 <sm> yeah!
2022-05-13 02:00:55 +0200 <texasmynsted> Like "grr. this is the bazillionth time I have done XYZ. I have had it. I am writing something to do this"
2022-05-13 02:01:02 +0200 <dibblego> I had an exam coming up, or something, can't remember, I've just kept using since
2022-05-13 02:01:25 +0200 <dibblego> and the pandoc syntax tree is not quite right
2022-05-13 02:01:25 +0200 <texasmynsted> :-) Nice!
2022-05-13 02:01:40 +0200Hash(~Hash@hey.howstoned.ru) (Quit: ZNC - https://znc.in)
2022-05-13 02:01:43 +0200 <dibblego> "one day I will do it all properly... but I've had exams since"
2022-05-13 02:01:47 +0200 <geekosaur> https://cabal.readthedocs.io/en/3.6/cabal-commands.html#cabal-v2-run about halfway through talks about cabal scripts
2022-05-13 02:02:10 +0200 <geekosaur> sadly there's not a lot of documentation; stack scripts are better documented
2022-05-13 02:03:27 +0200 <geekosaur> otoh it looks like it's just a cabal file in a comment
2022-05-13 02:03:46 +0200 <texasmynsted> cabal script is an interesting idea.
2022-05-13 02:05:52 +0200 <texasmynsted> It would have latency for interpreting the code... Might be fine. I wonder if it keeps some intermediate build products around so that future runs are quicker.
2022-05-13 02:06:14 +0200jinsun(~jinsun@user/jinsun) (Ping timeout: 252 seconds)
2022-05-13 02:06:57 +0200 <texasmynsted> dibblego: It has been a while since you had any exams right?
2022-05-13 02:07:17 +0200 <texasmynsted> Or are these for flying or something?
2022-05-13 02:07:17 +0200 <EvanR> actually interpreting the code, somehow, would be better for latency
2022-05-13 02:07:21 +0200 <yushyin> texasmynsted: it is missing caching of the executable and will compile the 'script' and links with the deps every time you execute the 'script'
2022-05-13 02:07:32 +0200 <dibblego> I did a flight test a few days ago, actually. No written exams for that though. https://www.youtube.com/watch?v=cYY66RUkI38
2022-05-13 02:07:43 +0200 <dibblego> yes for flying
2022-05-13 02:07:47 +0200 <EvanR> whatever happened to "runhaskell" xD
2022-05-13 02:07:57 +0200 <dibblego> I completed Commercial Pilot Licence in February (7x exams)
2022-05-13 02:08:04 +0200 <texasmynsted> NICE :-D
2022-05-13 02:08:48 +0200 <dibblego> USA only has one exam for CPL, somehow
2022-05-13 02:10:22 +0200Hash(~Hash@hey.howstoned.ru)
2022-05-13 02:11:07 +0200 <geekosaur> iirc it compiles, and caching the executable is supposed to be in the next cabal-install release
2022-05-13 02:11:33 +0200 <geekosaur> ("iirc" = don't quote me)
2022-05-13 02:12:08 +0200 <EvanR> that would be awesome
2022-05-13 02:12:16 +0200 <yushyin> geekosaur: oh! that's exciting news
2022-05-13 02:12:29 +0200 <EvanR> i got to admit it's getting better all the time
2022-05-13 02:12:58 +0200jinsun(~jinsun@user/jinsun)
2022-05-13 02:13:09 +0200 <texasmynsted> Is that one practical in-flight exam?
2022-05-13 02:13:17 +0200 <texasmynsted> and you have to do 7?
2022-05-13 02:13:37 +0200 <dibblego> texasmynsted: yes, for an endorsement. CPL was a different flight test (plus 7x written exams). No recording of that.
2022-05-13 02:14:31 +0200 <dibblego> endorsements get added to licences but require a flight test
2022-05-13 02:15:10 +0200mud(~mud@user/kadoban) (Remote host closed the connection)
2022-05-13 02:16:13 +0200 <texasmynsted> Wow very nice. I have respect for pilots but not sure I would want to fly IRL.
2022-05-13 02:16:15 +0200Hash(~Hash@hey.howstoned.ru) (Ping timeout: 260 seconds)
2022-05-13 02:16:39 +0200Henson(~kvirc@107-179-133-201.cpe.teksavvy.com) (Ping timeout: 256 seconds)
2022-05-13 02:17:02 +0200 <dibblego> it's my escape from programming: "you better have social skills, or you will die"
2022-05-13 02:17:19 +0200 <EvanR> socialize or die
2022-05-13 02:19:52 +0200 <yushyin> geekosaur: https://github.com/haskell/cabal/pull/7851 i think that's the relevant PR?
2022-05-13 02:20:49 +0200Hash(~Hash@hey.howstoned.ru)
2022-05-13 02:21:49 +0200Hash(~Hash@hey.howstoned.ru) (Read error: Connection reset by peer)
2022-05-13 02:24:01 +0200vysn(~vysn@user/vysn)
2022-05-13 02:26:30 +0200Hash(~Hash@hey.howstoned.ru)
2022-05-13 02:27:26 +0200slack1256(~slack1256@186.11.59.78)
2022-05-13 02:28:04 +0200 <geekosaur> looks like it. glad I remembered correctly
2022-05-13 02:29:43 +0200slack1256(~slack1256@186.11.59.78) (Remote host closed the connection)
2022-05-13 02:30:00 +0200 <Axman6> dibblego: what's beeing assessed in that flight? Also, good to hear your voice again, haha
2022-05-13 02:30:53 +0200 <dibblego> Axman6: aerodynamic stall, pro-spin input, correct recovery from spin
2022-05-13 02:31:05 +0200vicfred(~vicfred@user/vicfred) (Quit: Leaving)
2022-05-13 02:31:11 +0200 <dibblego> the stall warning system is electronic in that aircraft, so comes through on the audio
2022-05-13 02:31:31 +0200 <Axman6> yeah just got to the spins - looks fun!
2022-05-13 02:31:39 +0200mud(~mud@user/kadoban)
2022-05-13 02:33:30 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 240 seconds)
2022-05-13 02:33:36 +0200 <dibblego> it's fun, except when the student does it and refuses to let go of the control, in a non-spin-rated aircraft, ask me how I know
2022-05-13 02:33:49 +0200 <Axman6> :||
2022-05-13 02:34:26 +0200Henson(~kvirc@107-179-133-201.cpe.teksavvy.com)
2022-05-13 02:34:36 +0200 <dibblego> the "initial intuitive response" is to put it further into the spin, it's very common from initial students, but sometimes they are also very strong and need a kick in the ear
2022-05-13 02:35:20 +0200 <dibblego> I don't like yelling at students, but you know...
2022-05-13 02:36:57 +0200 <Axman6> was not expecting you to land next to the runway
2022-05-13 02:37:08 +0200 <dibblego> I have tricks
2022-05-13 02:37:42 +0200 <geekosaur> this might be better suited to -offtopic
2022-05-13 02:37:49 +0200 <dibblego> agree, sorry
2022-05-13 02:38:10 +0200 <Axman6> Pretty sure some of the data in that video comes from haskell
2022-05-13 02:38:34 +0200 <dibblego> lol, I joined offtopic, back to regular programming
2022-05-13 02:39:34 +0200 <EvanR> is your plane spin 1/2 or integer spin
2022-05-13 02:40:01 +0200 <geekosaur> heh
2022-05-13 02:42:43 +0200Henson(~kvirc@107-179-133-201.cpe.teksavvy.com) (Ping timeout: 256 seconds)
2022-05-13 02:48:55 +0200ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-05-13 02:49:02 +0200 <sm> hell I would like to hear more piloting action. I'm sure we can find metaphors for haskell stuff
2022-05-13 02:49:10 +0200 <sm> congrats dibblego!
2022-05-13 02:50:02 +0200 <sm> what is the haskeller's equivalent of a spin ?
2022-05-13 02:50:34 +0200even4void(even4void@came.here.for-some.fun) (Quit: fBNC - https://bnc4free.com)
2022-05-13 02:50:53 +0200 <sm> runaway memory leaks in production ?
2022-05-13 02:51:56 +0200 <dibblego> I do use haskell a lot for flying, FWIW
2022-05-13 02:52:21 +0200 <sm> no maybe that's a crash.. compile errors ?
2022-05-13 02:52:28 +0200 <dibblego> https://hackage.haskell.org/packages/#cat:Aviation
2022-05-13 02:52:29 +0200 <sm> do tell dibblego
2022-05-13 02:52:37 +0200 <dibblego> plus a whole lot more not on hackage
2022-05-13 02:52:56 +0200 <dibblego> please excuse my quick hacks, the code was not the priority
2022-05-13 02:53:30 +0200andreas303(andreas303@ip227.orange.bnc4free.com) (Ping timeout: 252 seconds)
2022-05-13 02:53:35 +0200alp_(~alp@user/alp) (Ping timeout: 260 seconds)
2022-05-13 02:53:48 +0200xacktm(xacktm@user/xacktm) (Ping timeout: 240 seconds)
2022-05-13 02:53:54 +0200 <sm> 👍🏻 will check it
2022-05-13 03:02:09 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 03:04:07 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-05-13 03:04:32 +0200Benzi-Junior(~BenziJuni@88-149-64-179.du.xdsl.is) (Ping timeout: 252 seconds)
2022-05-13 03:06:44 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 248 seconds)
2022-05-13 03:15:06 +0200[_](~itchyjunk@user/itchyjunk/x-7353470)
2022-05-13 03:16:13 +0200agrosant(~agrosant@79.103.56.172.dsl.dyn.forthnet.gr) (Quit: Leaving)
2022-05-13 03:16:50 +0200xff0x(~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp)
2022-05-13 03:18:48 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds)
2022-05-13 03:18:54 +0200ubert1(~Thunderbi@p200300ecdf1588cdb8e4e87d9f1e053d.dip0.t-ipconnect.de)
2022-05-13 03:19:43 +0200ubert(~Thunderbi@p200300ecdf15880b196df7e3ef276b09.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-05-13 03:19:44 +0200ubert1ubert
2022-05-13 03:19:44 +0200ubert074AADZ4O
2022-05-13 03:19:44 +0200ub011AAHV78
2022-05-13 03:28:03 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com)
2022-05-13 03:29:08 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-05-13 03:34:44 +0200even4void(even4void@came.here.for-some.fun)
2022-05-13 03:36:10 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 240 seconds)
2022-05-13 03:43:36 +0200xacktm(xacktm@user/xacktm)
2022-05-13 03:44:46 +0200andreas303(andreas303@ip227.orange.bnc4free.com)
2022-05-13 03:45:33 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-05-13 03:47:10 +0200shailangsa(~shailangs@host86-186-127-233.range86-186.btcentralplus.com) (Ping timeout: 240 seconds)
2022-05-13 03:49:57 +0200mshiraeeshi(~shiraeesh@109.166.56.211) (Ping timeout: 276 seconds)
2022-05-13 03:50:20 +0200 <sm> dibblego: lots of tools! nice!
2022-05-13 03:50:57 +0200andrey_(~andrey@p508d5b33.dip0.t-ipconnect.de)
2022-05-13 03:51:01 +0200 <sm> also, your hackage email address amazes me
2022-05-13 03:53:41 +0200zebrag(~chris@user/zebrag) (Ping timeout: 252 seconds)
2022-05-13 03:53:47 +0200andrey(~andrey@p200300dbcf003200efdd83e940d7d35b.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-05-13 03:53:58 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-05-13 03:59:08 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2022-05-13 03:59:38 +0200stackdroid18(14094@user/stackdroid) (Quit: hasta la vista... tchau!)
2022-05-13 04:05:53 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-05-13 04:10:34 +0200img(~img@user/img)
2022-05-13 04:11:47 +0200causal(~user@50.35.83.177) (Quit: WeeChat 3.5)
2022-05-13 04:12:01 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-05-13 04:12:22 +0200dtman34(~dtman34@c-73-62-246-247.hsd1.mn.comcast.net)
2022-05-13 04:12:54 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-05-13 04:12:56 +0200vicfred(~vicfred@user/vicfred)
2022-05-13 04:13:37 +0200Unicorn_Princess(~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Remote host closed the connection)
2022-05-13 04:19:02 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-05-13 04:23:47 +0200gpncarl(~gpncarl@210.12.195.5)
2022-05-13 04:30:24 +0200shailangsa(~shailangs@host109-152-9-235.range109-152.btcentralplus.com)
2022-05-13 04:38:58 +0200dzdcnfzd(~dzdcnfzd@pool-108-54-250-165.nycmny.fios.verizon.net)
2022-05-13 04:44:17 +0200mbuf(~Shakthi@223.184.114.149)
2022-05-13 04:46:22 +0200Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (Read error: Connection reset by peer)
2022-05-13 05:00:01 +0200haasn(~nand@haasn.dev) (Quit: ZNC 1.7.5+deb4 - https://znc.in)
2022-05-13 05:01:23 +0200haasn(~nand@haasn.dev)
2022-05-13 05:02:08 +0200dsrt^(~dsrt@128-092-160-234.biz.spectrum.com)
2022-05-13 05:03:50 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 05:08:10 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-05-13 05:26:12 +0200Henson(~kvirc@107-179-133-201.cpe.teksavvy.com)
2022-05-13 05:26:17 +0200Henson(~kvirc@107-179-133-201.cpe.teksavvy.com) (Client Quit)
2022-05-13 05:36:01 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 05:40:47 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-05-13 05:40:47 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-05-13 05:40:47 +0200wroathe(~wroathe@user/wroathe)
2022-05-13 05:46:19 +0200Kaipei(~Kaiepi@156.34.47.253) (Ping timeout: 256 seconds)
2022-05-13 05:47:43 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 05:50:32 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 05:50:36 +0200wroathe(~wroathe@user/wroathe) (Quit: leaving)
2022-05-13 05:50:50 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-05-13 05:50:50 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-05-13 05:50:50 +0200wroathe(~wroathe@user/wroathe)
2022-05-13 05:51:06 +0200Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2022-05-13 05:55:30 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-05-13 06:08:25 +0200whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2022-05-13 06:09:57 +0200dukester(~dnormandi@node-1w7jr9ydr91zeo4u27hpcbapw.ipv6.telus.net)
2022-05-13 06:10:16 +0200dukester(~dnormandi@node-1w7jr9ydr91zeo4u27hpcbapw.ipv6.telus.net) ()
2022-05-13 06:11:04 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds)
2022-05-13 06:12:26 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-05-13 06:13:23 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2022-05-13 06:18:10 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit)
2022-05-13 06:20:13 +0200Guest27(~Guest27@210006143163.ctinets.com)
2022-05-13 06:22:39 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 06:23:04 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds)
2022-05-13 06:25:16 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-05-13 06:26:50 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-05-13 06:39:56 +0200coot(~coot@213.134.190.95)
2022-05-13 06:54:06 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 06:58:23 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-05-13 06:58:33 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 248 seconds)
2022-05-13 06:59:17 +0200Vajb(~Vajb@2001:999:400:9bc1:d5dd:7e53:33b:56)
2022-05-13 07:07:04 +0200Kaipei(~Kaiepi@156.34.47.253)
2022-05-13 07:10:40 +0200Guest27(~Guest27@210006143163.ctinets.com) (Ping timeout: 252 seconds)
2022-05-13 07:14:58 +0200christiansen(~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
2022-05-13 07:17:57 +0200mikoto-chan(~mikoto-ch@213.177.151.239)
2022-05-13 07:19:40 +0200dzdcnfzd(~dzdcnfzd@pool-108-54-250-165.nycmny.fios.verizon.net) (Quit: Client closed)
2022-05-13 07:24:52 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-05-13 07:27:01 +0200Kaipei(~Kaiepi@156.34.47.253) (Read error: Connection reset by peer)
2022-05-13 07:27:26 +0200Kaipei(~Kaiepi@156.34.47.253)
2022-05-13 07:34:11 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 07:34:26 +0200dschrempf(~dominik@mobiledyn-62-240-134-183.mrsn.at)
2022-05-13 07:36:52 +0200 <dschrempf> Hi! Has search on Hackage also been broken for you for some weeks now?
2022-05-13 07:37:02 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-05-13 07:37:14 +0200 <dschrempf> Or is this a problem on my side?
2022-05-13 07:38:46 +0200 <jackdk> I don't think I ever search on hackage. https://hackage.haskell.org/packages/search?terms=lens seemed to work for me; are you blocking JS?
2022-05-13 07:38:58 +0200 <jackdk> (I wish more people blocked JS)
2022-05-13 07:39:39 +0200 <dschrempf> I do sometimes, but I do not block it at the moment. So it must be some weird configuratin problem. Maybe I should delete cookies and stuff...
2022-05-13 07:40:17 +0200 <dschrempf> No, it still does not work. Weird.
2022-05-13 07:42:05 +0200zaquest(~notzaques@5.130.79.72) (Remote host closed the connection)
2022-05-13 07:45:47 +0200 <dschrempf> It works with Chromium, but it does not with Qutebrowser.
2022-05-13 07:46:17 +0200zaquest(~notzaques@5.130.79.72)
2022-05-13 07:46:27 +0200laalyn(~laalyn@c-73-189-182-49.hsd1.ca.comcast.net)
2022-05-13 07:46:51 +0200 <jackdk> I am using Firefox on GNU/Linux
2022-05-13 07:46:51 +0200acidjnk_new(~acidjnk@p200300d0c7068b9798ac43fcda880548.dip0.t-ipconnect.de)
2022-05-13 07:47:05 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2022-05-13 07:47:53 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2022-05-13 07:48:09 +0200mikoto-chan(~mikoto-ch@213.177.151.239) (Ping timeout: 248 seconds)
2022-05-13 07:48:43 +0200sagax(~sagax_nb@user/sagax) (Ping timeout: 256 seconds)
2022-05-13 07:49:20 +0200 <sm> dschrempf: I looked at it recently and it was at least a bit odd. I guess it's intended to not show results until you start typing
2022-05-13 07:50:10 +0200 <dschrempf> Hm. I realized I can also not open the "Advanced options" tab.
2022-05-13 07:50:16 +0200 <dschrempf> So it is some Java related problem.
2022-05-13 07:52:22 +0200inversed(~inversed@176.248.27.211)
2022-05-13 07:52:37 +0200laalyn(~laalyn@c-73-189-182-49.hsd1.ca.comcast.net) (Quit: Client closed)
2022-05-13 07:54:30 +0200inversed_(~inversed@176.248.27.211) (Ping timeout: 240 seconds)
2022-05-13 07:55:00 +0200Guest27(~Guest27@210006143163.ctinets.com)
2022-05-13 07:56:35 +0200[_](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2022-05-13 07:57:02 +0200superbil(~superbil@1-34-176-171.hinet-ip.hinet.net) (Ping timeout: 265 seconds)
2022-05-13 07:58:31 +0200superbil(~superbil@1-34-176-171.hinet-ip.hinet.net)
2022-05-13 08:02:28 +0200 <dschrempf> Also on Firefox, I have to wait about 10 seconds until the search and the options start to work... But at least they do work then.
2022-05-13 08:05:29 +0200michalz(~michalz@185.246.204.104)
2022-05-13 08:06:09 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-05-13 08:06:28 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 08:07:06 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 08:12:30 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-05-13 08:12:33 +0200 <dschrempf> I filed a Github issue, in case you want to comment: https://github.com/haskell/hackage-server/issues/1072
2022-05-13 08:17:53 +0200dschrempf(~dominik@mobiledyn-62-240-134-183.mrsn.at) (Ping timeout: 260 seconds)
2022-05-13 08:24:59 +0200hiredman(~hiredman@frontier1.downey.family) (Ping timeout: 246 seconds)
2022-05-13 08:30:30 +0200mikoto-chan(~mikoto-ch@84.199.144.234)
2022-05-13 08:35:53 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:dfe2:64a:2f7b:12cc)
2022-05-13 08:38:48 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-05-13 08:41:32 +0200_ht(~quassel@231-169-21-31.ftth.glasoperator.nl)
2022-05-13 08:42:46 +0200jakalx(~jakalx@base.jakalx.net)
2022-05-13 08:44:52 +0200sagax(~sagax_nb@user/sagax)
2022-05-13 08:45:30 +0200mikoto-chan(~mikoto-ch@84.199.144.234) (Ping timeout: 240 seconds)
2022-05-13 08:46:52 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 08:48:06 +0200whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2022-05-13 08:49:20 +0200CiaoSen(~Jura@p200300c95732ec002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-05-13 08:51:18 +0200hiredman(~hiredman@frontier1.downey.family)
2022-05-13 08:51:47 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-05-13 08:52:36 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-05-13 08:57:42 +0200xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2022-05-13 08:59:54 +0200dschrempf(~dominik@mobiledyn-62-240-134-183.mrsn.at)
2022-05-13 09:00:05 +0200alp_(~alp@user/alp)
2022-05-13 09:02:33 +0200mbuf(~Shakthi@223.184.114.149) (Quit: Leaving)
2022-05-13 09:12:06 +0200briandaed(~briandaed@109.95.142.93.r.toneticgroup.pl)
2022-05-13 09:13:05 +0200_ht(~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
2022-05-13 09:13:25 +0200nschoe(~quassel@2a01:e0a:8e:a190:45bb:1ed8:f2cb:544)
2022-05-13 09:15:48 +0200chele(~chele@user/chele)
2022-05-13 09:16:11 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2022-05-13 09:22:42 +0200gehmehgeh(~user@user/gehmehgeh)
2022-05-13 09:26:38 +0200 <[exa]> dminuoso: oh nice to hear. imagemagick might just be over-optimizing the bmp or so
2022-05-13 09:28:12 +0200kuribas(~user@ptr-17d51eo38esxcyx0dri.18120a2.ip6.access.telenet.be)
2022-05-13 09:32:40 +0200ccntrq(~Thunderbi@2a01:c22:8cfd:500:1fcc:c85f:966e:ad0b)
2022-05-13 09:38:34 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
2022-05-13 09:38:45 +0200 <merijn> Hecate: Ping
2022-05-13 09:39:53 +0200 <merijn> Hecate: I have a suspicion I may have a 1s fix for you if I'm right :p
2022-05-13 09:39:55 +0200cfricke(~cfricke@user/cfricke)
2022-05-13 09:44:10 +0200chomwitt(~chomwitt@2a02:587:dc21:9e00:6dfd:37a:2bc3:ca7e)
2022-05-13 09:46:16 +0200 <Hecate> merijn: o/
2022-05-13 09:46:17 +0200 <Hecate> hohai
2022-05-13 09:46:41 +0200 <Hecate> merijn: I'm listening :)
2022-05-13 09:46:51 +0200 <merijn> Hecate: Lemme guess, you're *also* using -N with a significant amount of parallelism?
2022-05-13 09:48:28 +0200 <merijn> Hecate: Because in your profile I see a spinlock at the top and "waitForGcThreads" somewhere close to the top. Which all sounds like parallel GC which is notoriously bad in most usecases
2022-05-13 09:48:58 +0200 <merijn> I've had some double orders of magnitude slowdown from it in the past, and it'd also explain why nothing in profile, because your haskell code is profiled, not the GC
2022-05-13 09:49:15 +0200azimut_(~azimut@gateway/tor-sasl/azimut)
2022-05-13 09:49:30 +0200 <Hecate> I don't know if I'm using massive amounts of parallelism
2022-05-13 09:49:35 +0200machinedgod(~machinedg@24.105.81.50)
2022-05-13 09:49:36 +0200 <Hecate> ghc-options: -rtsopts -threaded -with-rtsopts "-N -T" <- these are my options
2022-05-13 09:49:38 +0200 <merijn> Fortunately, if that's the case, you should see massive improvement from, well, simply disable parallel GC
2022-05-13 09:49:48 +0200 <merijn> Hecate: -N is equivalent to specifyng all cores :p
2022-05-13 09:49:52 +0200 <Hecate> I see
2022-05-13 09:49:59 +0200 <Hecate> so I should remove -N?
2022-05-13 09:50:10 +0200 <merijn> Hecate: -N + -threaded is bad enough that the GHC conclusion was to disable parallel GC when -threaded becomes standar
2022-05-13 09:50:13 +0200 <merijn> Hecate: https://github.com/merijn/Belewitte/blob/master/benchmark-analysis/benchmark-analysis.cabal#L65
2022-05-13 09:50:24 +0200 <merijn> Hecate: You want -qg to disable parallel GC in the threaded runtime
2022-05-13 09:50:33 +0200 <Hecate> thanks
2022-05-13 09:50:34 +0200 <Hecate> let me try
2022-05-13 09:51:04 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
2022-05-13 09:51:06 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-05-13 09:51:46 +0200 <merijn> Hecate: Basically, the locking/synchronisisation of parallel GC ends spending *ages* on the synchronisation (hence why the spinlock and waitForGc in profile look super suspicious)
2022-05-13 09:53:30 +0200christiansen(~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 260 seconds)
2022-05-13 09:54:50 +0200 <Hecate> merijn: nope, now the same problem happens with one core :D :D
2022-05-13 09:55:00 +0200 <Hecate> merijn: I can share my screen if you want :P
2022-05-13 09:55:47 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-05-13 09:56:44 +0200 <merijn> It's progress! At least you're not turning the *entire* CPU into a toaster now :p
2022-05-13 09:57:19 +0200 <merijn> Hecate: Does the code actually terminate eventually?
2022-05-13 09:57:26 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 09:57:41 +0200 <merijn> (because I think profiles only get written at execution end, so that might explain empty profiles0
2022-05-13 09:58:18 +0200odnes(~odnes@5-203-160-39.pat.nym.cosmote.net)
2022-05-13 09:58:26 +0200sudden(~cat@user/sudden) (Ping timeout: 246 seconds)
2022-05-13 09:58:44 +0200 <Hecate> merijn: no I don't think it will.
2022-05-13 09:58:46 +0200 <Hecate> I mean
2022-05-13 09:58:53 +0200 <Hecate> I can start it and go do the groceries
2022-05-13 09:59:00 +0200jollygood2(~bc8147f2@cerf.good1.com)
2022-05-13 09:59:05 +0200 <Hecate> if it's still not done by then I can safely assume that it's not going to finish everf
2022-05-13 09:59:10 +0200 <Hecate> *ever
2022-05-13 09:59:27 +0200 <Hecate> merijn: the weirdest thing is that on my last ubuntu server, it perfectly works :< :< :<
2022-05-13 09:59:42 +0200 <Hecate> merijn: actually, could you try it?
2022-05-13 09:59:45 +0200 <merijn> that's interesting
2022-05-13 09:59:49 +0200 <Hecate> git clone https://github.com/flora-pm/flora-server
2022-05-13 09:59:52 +0200 <Hecate> make build
2022-05-13 09:59:55 +0200 <Hecate> make start
2022-05-13 10:00:32 +0200 <merijn> I'm on a mac right now, but can give it a shot :p
2022-05-13 10:01:22 +0200 <Hecate> hehe
2022-05-13 10:02:12 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 248 seconds)
2022-05-13 10:03:19 +0200 <merijn> ok, might take awhile, since I apparently need to stop being lazy and update from 8.10.2 to 8.10.7 :p
2022-05-13 10:11:15 +0200jgeerds(~jgeerds@d53604b0.access.ecotel.net)
2022-05-13 10:12:26 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 252 seconds)
2022-05-13 10:12:51 +0200waleee(~waleee@h-155-4-221-82.NA.cust.bahnhof.se)
2022-05-13 10:13:00 +0200shriekingnoise(~shrieking@201.231.16.156) (Quit: Quit)
2022-05-13 10:15:35 +0200MoC(~moc@user/moc)
2022-05-13 10:16:06 +0200 <merijn> At least I know what it sounds like to have a helicopter on your desk now :D
2022-05-13 10:17:14 +0200 <tomsmeding> merijn: haven't you run any cpu-intensive stuff recently :p
2022-05-13 10:17:29 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-05-13 10:18:00 +0200dschrempf(~dominik@mobiledyn-62-240-134-183.mrsn.at) (Quit: WeeChat 3.5)
2022-05-13 10:18:16 +0200MoC(~moc@user/moc) (Client Quit)
2022-05-13 10:18:25 +0200MoC_(~moc@user/moc)
2022-05-13 10:18:33 +0200nschoe(~quassel@2a01:e0a:8e:a190:45bb:1ed8:f2cb:544) (Ping timeout: 248 seconds)
2022-05-13 10:18:46 +0200mattil(~mattil@helsinki.portalify.com)
2022-05-13 10:19:18 +0200 <merijn> tomsmeding: Not locally :p
2022-05-13 10:19:22 +0200frost(~frost@user/frost)
2022-05-13 10:19:43 +0200 <merijn> What's the point of having access to a cluster if you're gonnna use your laptop :p
2022-05-13 10:21:27 +0200 <tomsmeding> merijn: if you have _free_ access to a cluster, yes :p
2022-05-13 10:21:55 +0200 <tomsmeding> though running stuff on a non-local machine is sometimes somewhat more involved than running it locally, if you want to attach something like nvidia's visual profiler to it for example
2022-05-13 10:22:01 +0200 <tomsmeding> it sort of works over ssh but annoying
2022-05-13 10:23:53 +0200 <Hecate> merijn: found the problem
2022-05-13 10:24:04 +0200 <Hecate> ghc can't tell me that one of my functions reduces to "foo = foo"
2022-05-13 10:24:06 +0200 <Hecate> ;_;
2022-05-13 10:24:18 +0200 <tomsmeding> rip
2022-05-13 10:31:01 +0200MoC_(~moc@user/moc) (Read error: Connection reset by peer)
2022-05-13 10:31:19 +0200MoC_(~moc@user/moc)
2022-05-13 10:31:30 +0200MoC_MoC
2022-05-13 10:33:50 +0200 <merijn> Good, because the compile just barfed on the lack of postgres here :p
2022-05-13 10:39:20 +0200vysn(~vysn@user/vysn) (Ping timeout: 248 seconds)
2022-05-13 10:39:48 +0200toluene(~toluene@user/toulene) (Ping timeout: 260 seconds)
2022-05-13 10:40:22 +0200 <Hecate> merijn: ;-D
2022-05-13 10:41:43 +0200isovector1(~isovector@94.117.16.98)
2022-05-13 10:41:59 +0200toluene(~toluene@user/toulene)
2022-05-13 10:47:24 +0200 <jollygood2> what can I use to draw and display some very simple graphics (squares with letters in them in multiple colors)? ideally it should work on linux and windows. I could use gtk, but maybe something nicer exists for this specific task?
2022-05-13 10:50:00 +0200isovector1(~isovector@94.117.16.98) (Quit: Leaving)
2022-05-13 10:50:22 +0200 <Taneb> Hecate: so why was it working on your server?
2022-05-13 10:50:44 +0200 <Hecate> Taneb: it's a dev feature
2022-05-13 10:51:16 +0200 <Taneb> Ah, makes sense
2022-05-13 10:51:29 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 252 seconds)
2022-05-13 10:52:22 +0200sudden(~cat@user/sudden)
2022-05-13 10:53:06 +0200akegalj(~akegalj@cpe-94-253-204-94.zg2.cable.xnet.hr)
2022-05-13 10:53:45 +0200akegalj(~akegalj@cpe-94-253-204-94.zg2.cable.xnet.hr) ()
2022-05-13 10:54:06 +0200akegalj(~akegalj@cpe-94-253-204-94.zg2.cable.xnet.hr)
2022-05-13 10:54:31 +0200vpan(~0@212.117.1.172)
2022-05-13 10:56:32 +0200christiansen(~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
2022-05-13 10:56:42 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-05-13 10:57:50 +0200Kaipei(~Kaiepi@156.34.47.253) (Remote host closed the connection)
2022-05-13 10:58:14 +0200Kaipei(~Kaiepi@156.34.47.253)
2022-05-13 11:00:24 +0200titibandit(~thibaut@2a00:8a60:c000:1:8a13:bf74:b2:8d47)
2022-05-13 11:01:13 +0200ccntrq(~Thunderbi@2a01:c22:8cfd:500:1fcc:c85f:966e:ad0b) (Ping timeout: 248 seconds)
2022-05-13 11:01:30 +0200ccntrq(~Thunderbi@2a01:c23:912e:5900:b62:8a1a:5a90:4443)
2022-05-13 11:02:43 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs)
2022-05-13 11:04:14 +0200titibandit(~thibaut@2a00:8a60:c000:1:8a13:bf74:b2:8d47) (Quit: Leaving.)
2022-05-13 11:04:23 +0200titibandit(~thibaut@2a00:8a60:c000:1:8a13:bf74:b2:8d47)
2022-05-13 11:05:36 +0200__monty__(~toonn@user/toonn)
2022-05-13 11:05:46 +0200akegalj(~akegalj@cpe-94-253-204-94.zg2.cable.xnet.hr) (Remote host closed the connection)
2022-05-13 11:07:13 +0200 <briandaed> jollygood2 letters means fonts (or some textures with fonts), handling true types or some other formats is not so trivial, look at hackage libraries tagged with 'graphics' https://hackage.haskell.org/packages/tag/graphics sort by upload date and rating and you may find something interesting
2022-05-13 11:08:12 +0200 <briandaed> jollygood2: i would probably go with OpenGL or Vulkan even when 3d is not necessary
2022-05-13 11:11:14 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-05-13 11:11:53 +0200 <sm> I'd probably try gloss, diagrams,
2022-05-13 11:11:54 +0200 <sm> threepenny-gui, monomer, fltk-hs in that order
2022-05-13 11:12:32 +0200 <tomsmeding> I've seen students successfully use gloss, so +1 on that
2022-05-13 11:12:41 +0200 <sm> as you said very simple, and I see some letters in gloss examples
2022-05-13 11:12:49 +0200 <tomsmeding> though the letters are damn ugly lol
2022-05-13 11:13:36 +0200 <sm> I will also mention FunGEn !
2022-05-13 11:17:03 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 11:19:23 +0200coot(~coot@213.134.190.95)
2022-05-13 11:21:15 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 11:21:55 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 11:25:02 +0200 <jollygood2> briandaed I found gloss package after asking the question. pretty amazing how little code it takes to do rather complex animations. it works on linux and on windows
2022-05-13 11:25:31 +0200 <jollygood2> https://hackage.haskell.org/package/gloss-examples
2022-05-13 11:25:56 +0200 <jollygood2> (it uses opengl under the hood)
2022-05-13 11:26:21 +0200 <sm> +1
2022-05-13 11:26:30 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-05-13 11:26:33 +0200 <jollygood2> sm, oh you mentioned it above :). thanks
2022-05-13 11:26:59 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-05-13 11:27:19 +0200king_gs(~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634)
2022-05-13 11:27:53 +0200Benzi-Junior(~BenziJuni@88-149-64-179.du.xdsl.is)
2022-05-13 11:32:28 +0200mc47(~mc47@xmonad/TheMC47)
2022-05-13 11:40:29 +0200dcoutts__(~duncan@host86-153-135-80.range86-153.btcentralplus.com) (Ping timeout: 256 seconds)
2022-05-13 11:44:04 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 11:46:58 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 11:53:09 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 11:54:43 +0200cosimone(~user@2001:b07:ae5:db26:45fd:643e:a6e7:ffc8)
2022-05-13 11:56:07 +0200nschoe(~quassel@2a01:e0a:8e:a190:7a73:dbab:7121:fc5e)
2022-05-13 11:57:11 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-05-13 11:57:25 +0200nschoe(~quassel@2a01:e0a:8e:a190:7a73:dbab:7121:fc5e) (Client Quit)
2022-05-13 11:58:17 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 248 seconds)
2022-05-13 11:58:53 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 12:01:50 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2022-05-13 12:05:17 +0200odnes_(~odnes@5-203-160-39.pat.nym.cosmote.net)
2022-05-13 12:05:23 +0200odnes(~odnes@5-203-160-39.pat.nym.cosmote.net) (Read error: Connection reset by peer)
2022-05-13 12:05:24 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 12:07:50 +0200cosimone(~user@2001:b07:ae5:db26:45fd:643e:a6e7:ffc8) (Remote host closed the connection)
2022-05-13 12:09:09 +0200bor0(~bor0@user/bor0)
2022-05-13 12:09:51 +0200 <bor0> If I have some evaluation function E s.t. E(E(i, p1), p2) = E(i, p1 ++ p2) holds, what would this property be called? is "composition over concatenation" valid?
2022-05-13 12:11:39 +0200vysn(~vysn@user/vysn)
2022-05-13 12:12:10 +0200jgeerds(~jgeerds@d53604b0.access.ecotel.net) (Ping timeout: 240 seconds)
2022-05-13 12:12:53 +0200xff0x(~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp) (Ping timeout: 252 seconds)
2022-05-13 12:13:13 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 12:15:26 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 12:17:43 +0200Guest|72(~Guest|72@145.108.85.14)
2022-05-13 12:18:19 +0200CiaoSen(~Jura@p200300c95732ec002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-05-13 12:18:21 +0200 <Guest|72> Hi , I followed the instructions on https://www.youtube.com/watch?v=bB4fmQiUYPw
2022-05-13 12:19:10 +0200 <Guest|72> But it failed after I use gchi, I don't know what happen and hopefully looking for help
2022-05-13 12:19:27 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 12:22:47 +0200dhil(~dhil@cpc103052-sgyl39-2-0-cust260.18-2.cable.virginm.net)
2022-05-13 12:23:57 +0200king_gs(~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634) (Remote host closed the connection)
2022-05-13 12:24:38 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-05-13 12:25:16 +0200king_gs(~Thunderbi@187.201.105.54)
2022-05-13 12:25:25 +0200jinsun__(~jinsun@user/jinsun)
2022-05-13 12:29:27 +0200jinsun(~jinsun@user/jinsun) (Ping timeout: 260 seconds)
2022-05-13 12:30:48 +0200 <int-e> what did you try, and what was the result? (the command is `ghci`)
2022-05-13 12:31:03 +0200acidjnk_new(~acidjnk@p200300d0c7068b9798ac43fcda880548.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-05-13 12:40:00 +0200acidjnk(~acidjnk@p200300d0c7068b97d5ac4f822319aa3a.dip0.t-ipconnect.de)
2022-05-13 12:41:26 +0200mshiraeeshi(~shiraeesh@109.166.56.229)
2022-05-13 12:41:47 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2022-05-13 12:42:28 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-05-13 12:43:25 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 12:43:29 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 12:43:34 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Read error: Connection reset by peer)
2022-05-13 12:43:39 +0200allbery_b(~geekosaur@xmonad/geekosaur)
2022-05-13 12:43:42 +0200allbery_bgeekosaur
2022-05-13 12:44:17 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 12:45:26 +0200Guest27(~Guest27@210006143163.ctinets.com) (Ping timeout: 252 seconds)
2022-05-13 12:45:57 +0200bor0(~bor0@user/bor0) (Quit: This computer has gone to sleep)
2022-05-13 12:47:04 +0200whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2022-05-13 12:49:43 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-05-13 12:53:02 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
2022-05-13 12:53:25 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-05-13 12:54:12 +0200zmt01(~zmt00@user/zmt00) (Ping timeout: 240 seconds)
2022-05-13 12:55:29 +0200odnes_(~odnes@5-203-160-39.pat.nym.cosmote.net) (Remote host closed the connection)
2022-05-13 12:55:49 +0200odnes_(~odnes@5-203-160-39.pat.nym.cosmote.net)
2022-05-13 12:55:57 +0200merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 276 seconds)
2022-05-13 12:56:07 +0200jollygood2(~bc8147f2@cerf.good1.com) (Quit: CGI:IRC)
2022-05-13 12:58:00 +0200odnes_(~odnes@5-203-160-39.pat.nym.cosmote.net) (Read error: Connection reset by peer)
2022-05-13 12:58:01 +0200king_gs(~Thunderbi@187.201.105.54) (Read error: Connection reset by peer)
2022-05-13 12:58:12 +0200odnes(~odnes@5-203-160-39.pat.nym.cosmote.net)
2022-05-13 12:58:26 +0200king_gs(~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634)
2022-05-13 12:59:42 +0200coot(~coot@213.134.190.95)
2022-05-13 12:59:55 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-05-13 12:59:59 +0200odnes(~odnes@5-203-160-39.pat.nym.cosmote.net) (Read error: Connection reset by peer)
2022-05-13 13:00:21 +0200odnes(~odnes@5-203-160-39.pat.nym.cosmote.net)
2022-05-13 13:00:39 +0200CiaoSen(~Jura@p5dcc134a.dip0.t-ipconnect.de)
2022-05-13 13:04:33 +0200odnes_(~odnes@5-203-160-39.pat.nym.cosmote.net)
2022-05-13 13:05:30 +0200odnes(~odnes@5-203-160-39.pat.nym.cosmote.net) (Ping timeout: 240 seconds)
2022-05-13 13:06:03 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-05-13 13:06:38 +0200Guest|72(~Guest|72@145.108.85.14) (Ping timeout: 260 seconds)
2022-05-13 13:10:07 +0200odnes__(~odnes@5-203-160-39.pat.nym.cosmote.net)
2022-05-13 13:11:30 +0200dsrt^(~dsrt@128-092-160-234.biz.spectrum.com) (Remote host closed the connection)
2022-05-13 13:12:04 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp)
2022-05-13 13:12:10 +0200odnes_(~odnes@5-203-160-39.pat.nym.cosmote.net) (Ping timeout: 240 seconds)
2022-05-13 13:14:34 +0200azimut_(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
2022-05-13 13:14:46 +0200x28girl(~x28girl@user/x28girl)
2022-05-13 13:14:47 +0200x28_girl(~x28girl@user/x28girl)
2022-05-13 13:14:48 +0200x28__girl(~x28girl@user/x28girl)
2022-05-13 13:14:52 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs) (Read error: Connection reset by peer)
2022-05-13 13:15:10 +0200x28__girl(~x28girl@user/x28girl) (Remote host closed the connection)
2022-05-13 13:15:14 +0200x28girl(~x28girl@user/x28girl) (Remote host closed the connection)
2022-05-13 13:15:31 +0200x28_girl(~x28girl@user/x28girl) (Remote host closed the connection)
2022-05-13 13:16:33 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 260 seconds)
2022-05-13 13:20:10 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs)
2022-05-13 13:21:43 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-05-13 13:25:50 +0200odnes__(~odnes@5-203-160-39.pat.nym.cosmote.net) (Quit: Leaving)
2022-05-13 13:26:35 +0200mshiraeeshi(~shiraeesh@109.166.56.229) (Quit: Leaving)
2022-05-13 13:31:47 +0200king_gs(~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634) (Ping timeout: 240 seconds)
2022-05-13 13:32:22 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-05-13 13:33:45 +0200dhil(~dhil@cpc103052-sgyl39-2-0-cust260.18-2.cable.virginm.net) (Ping timeout: 248 seconds)
2022-05-13 13:34:50 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs) (Ping timeout: 252 seconds)
2022-05-13 13:38:08 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs)
2022-05-13 13:42:23 +0200bitmapper(uid464869@id-464869.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-05-13 13:43:04 +0200king_gs(~Thunderbi@187.201.105.54)
2022-05-13 13:44:10 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2022-05-13 13:46:58 +0200jgeerds(~jgeerds@d53604b0.access.ecotel.net)
2022-05-13 13:49:48 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs) (Ping timeout: 260 seconds)
2022-05-13 13:52:44 +0200MagPhi(~MagPhi@103.240.97.83)
2022-05-13 13:53:09 +0200 <MagPhi> Well I am just about to start learning Haskell
2022-05-13 13:53:49 +0200 <MagPhi> Is there any Discord Server for Haskell just wondering since I prefer it more
2022-05-13 13:56:09 +0200 <yushyin> MagPhi: https://www.haskell.org/community/
2022-05-13 13:57:44 +0200 <MagPhi> So there is none?
2022-05-13 13:59:04 +0200 <yushyin> at least not linked there. isn't there some kind of search engine where you can just search for discord guilds?
2022-05-13 13:59:29 +0200 <geekosaur> there's a functional programming discord that gets used for haskell a lot
2022-05-13 13:59:43 +0200acidjnk(~acidjnk@p200300d0c7068b97d5ac4f822319aa3a.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-05-13 13:59:46 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-05-13 14:01:58 +0200 <MagPhi> I joined it I am going to use that and this for my haskell related stuff
2022-05-13 14:02:27 +0200 <yushyin> hi and welcome MagPhi :)
2022-05-13 14:03:57 +0200 <geekosaur> also if you want a UI that's a bit more like discord, you can get this channel as #haskell:libera.chat on matrix using element.io
2022-05-13 14:04:23 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2022-05-13 14:04:44 +0200vicfred_(~vicfred@user/vicfred)
2022-05-13 14:06:22 +0200 <MagPhi> Lemme test it out
2022-05-13 14:06:45 +0200 <yushyin> ah yes the matrix bridge. I keep forgetting we have that. https://libera.chat/guides/faq#can-i-connect-with-matrix
2022-05-13 14:07:00 +0200jean-paul[m](~jean-paul@2001:470:69fc:105::d1ab)
2022-05-13 14:07:30 +0200vicfred(~vicfred@user/vicfred) (Ping timeout: 240 seconds)
2022-05-13 14:07:41 +0200 <exarkun> not to be confused with #haskell in the Haskell community on Matrix
2022-05-13 14:08:05 +0200 <exarkun> or maybe I just mean Haskell in the Haskell community on Matrix
2022-05-13 14:09:29 +0200 <geekosaur> there's a separate #haskell:matrix.org, yes
2022-05-13 14:09:50 +0200 <geekosaur> with about a thousand more people in it than here :(
2022-05-13 14:10:34 +0200RudraveerMandal[(~magphimat@2001:470:69fc:105::2:eb9)
2022-05-13 14:10:39 +0200 <RudraveerMandal[> So I am here
2022-05-13 14:10:45 +0200 <geekosaur> so you are
2022-05-13 14:10:53 +0200 <MagPhi> I meant the bridge
2022-05-13 14:11:16 +0200 <RudraveerMandal[> Ok so the #haskell on matrix has more users?
2022-05-13 14:11:33 +0200 <geekosaur> yes
2022-05-13 14:11:56 +0200 <geekosaur> every so often there's a discussion about bridging the two but neither group is really keen on it
2022-05-13 14:12:19 +0200MagPhi(~MagPhi@103.240.97.83) (Quit: Client closed)
2022-05-13 14:13:41 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 14:14:02 +0200 <kritzefitz> My experience from being in both #haskell:matrix.org and here, is that while Matrix has more users, IRC usually has more activity.
2022-05-13 14:14:33 +0200 <geekosaur> my experience so far has been brief, but agrees with that
2022-05-13 14:18:10 +0200Guest27(~Guest27@210006143163.ctinets.com)
2022-05-13 14:19:31 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com)
2022-05-13 14:20:05 +0200jgeerds(~jgeerds@d53604b0.access.ecotel.net) (Ping timeout: 260 seconds)
2022-05-13 14:20:14 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.5)
2022-05-13 14:21:37 +0200 <RudraveerMandal[> Hmmm
2022-05-13 14:23:21 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-05-13 14:23:22 +0200king_gs(~Thunderbi@187.201.105.54) (Read error: Connection reset by peer)
2022-05-13 14:25:09 +0200king_gs(~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634)
2022-05-13 14:25:50 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-05-13 14:27:05 +0200 <tomsmeding> geekosaur: didn't the freenode version of this channel have like 2x the users as well
2022-05-13 14:27:28 +0200bitonic(~bitonic@2001:470:69fc:105::1812)
2022-05-13 14:27:30 +0200 <tomsmeding> both observations are consistent with channels like these just accumulating absent idling users over time
2022-05-13 14:28:53 +0200 <geekosaur> yeh, we regularly brushed 1500 on freenode
2022-05-13 14:28:57 +0200 <merijn> hmm
2022-05-13 14:29:04 +0200 <geekosaur> lost most of them when the great meltdown happened
2022-05-13 14:29:05 +0200 <tomsmeding> more than 2x :p
2022-05-13 14:29:13 +0200 <merijn> cabal update is reporting "truncated tar archive"
2022-05-13 14:29:18 +0200 <merijn> is that a local issue or remote?
2022-05-13 14:29:24 +0200titibandit(~thibaut@2a00:8a60:c000:1:8a13:bf74:b2:8d47) (Ping timeout: 248 seconds)
2022-05-13 14:29:36 +0200 <RudraveerMandal[> geekosaur: wdym
2022-05-13 14:29:46 +0200 <tomsmeding> merijn: my 'cabal update' finishes successfully
2022-05-13 14:29:58 +0200 <tomsmeding> RudraveerMandal[: this channel migrated from freenode to liberachat a while ago
2022-05-13 14:30:15 +0200 <tomsmeding> in the midst of some consternation
2022-05-13 14:30:17 +0200acidjnk(~acidjnk@p200300d0c7068b97d5ac4f822319aa3a.dip0.t-ipconnect.de)
2022-05-13 14:31:17 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp) (Quit: xff0x)
2022-05-13 14:31:29 +0200 <RudraveerMandal[> tomsmeding: oh so he calls that the great meltdown
2022-05-13 14:31:29 +0200 <merijn> tomsmeding: I think I ctrl-c at an unlucky point during update in the past
2022-05-13 14:31:42 +0200 <geekosaur> merijn, my guess is your locally cached 01-index.tar.gz is corrupt
2022-05-13 14:31:53 +0200 <merijn> Tried just nuking it, but that didn't work
2022-05-13 14:32:02 +0200ccntrq(~Thunderbi@2a01:c23:912e:5900:b62:8a1a:5a90:4443) (Remote host closed the connection)
2022-05-13 14:32:19 +0200 <merijn> ok, manually unzipping seems to work
2022-05-13 14:32:21 +0200 <geekosaur> freenode got taken over by someone really weird, and most of the people there bailed to libera with a few going to oftc or other servers instead
2022-05-13 14:32:51 +0200 <merijn> well, the freenode *domain* got taken over by someone weird
2022-05-13 14:33:01 +0200 <merijn> the servers and staff were independent and founded libera
2022-05-13 14:33:16 +0200tlamer(~tlamer@ip-94-112-134-89.net.upcbroadband.cz) (Quit: WeeChat 3.4)
2022-05-13 14:33:35 +0200 <RudraveerMandal[> so like freenode doesnt exist anymore?
2022-05-13 14:33:49 +0200 <tomsmeding> there's different staff now
2022-05-13 14:33:59 +0200 <merijn> RudraveerMandal[: Define "exist" :)
2022-05-13 14:34:08 +0200 <merijn> There is a network named freenode
2022-05-13 14:34:18 +0200 <merijn> It's run by different people on different infrastructure
2022-05-13 14:35:15 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2022-05-13 14:35:36 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp)
2022-05-13 14:35:44 +0200 <RudraveerMandal[> Hmm
2022-05-13 14:35:46 +0200 <RudraveerMandal[> so basically people handling it changed
2022-05-13 14:36:29 +0200 <geekosaur> changed in multiple ways
2022-05-13 14:36:50 +0200 <geekosaur> the new people were … let's just say not many people trusted them
2022-05-13 14:37:02 +0200 <RudraveerMandal[> lol
2022-05-13 14:37:08 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-05-13 14:38:25 +0200vicfred_(~vicfred@user/vicfred) (Quit: Leaving)
2022-05-13 14:38:47 +0200 <merijn> RudraveerMandal[: Summary with links to resignations from freenode staff: https://gist.github.com/joepie91/df80d8d36cd9d1bde46ba018af497409
2022-05-13 14:40:30 +0200 <yushyin> after the takeover at some later date you couldn't use freenode without an irc.com account, then it was a strange reddit clone for a while. meanwhile freenode has changed again, back to a stronger focus on irc and the website is now a mediawiki instance :D
2022-05-13 14:41:12 +0200 <RudraveerMandal[> Damn a guy just took over a wrbsite
2022-05-13 14:43:52 +0200titibandit(~thibaut@sunp.ient.rwth-aachen.de)
2022-05-13 14:45:27 +0200 <yushyin> btw birthday of libera.chat is near :)
2022-05-13 14:51:15 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs)
2022-05-13 14:53:51 +0200zmt00(~zmt00@user/zmt00)
2022-05-13 14:57:06 +0200cfricke(~cfricke@user/cfricke)
2022-05-13 14:57:26 +0200mattil(~mattil@helsinki.portalify.com) (Remote host closed the connection)
2022-05-13 14:59:13 +0200king_gs(~Thunderbi@2806:103e:29:da71:ba86:4e28:3521:b634) (Ping timeout: 260 seconds)
2022-05-13 15:00:13 +0200dsrt^(~dsrt@128-092-160-234.biz.spectrum.com)
2022-05-13 15:00:38 +0200christiansen(~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 252 seconds)
2022-05-13 15:02:26 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-05-13 15:02:50 +0200gpncarl(~gpncarl@210.12.195.5) (Ping timeout: 240 seconds)
2022-05-13 15:03:18 +0200vysn(~vysn@user/vysn) (Ping timeout: 260 seconds)
2022-05-13 15:05:59 +0200vysn(~vysn@user/vysn)
2022-05-13 15:09:52 +0200razetime(~quassel@117.254.34.165)
2022-05-13 15:10:40 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 15:12:02 +0200 <tomsmeding> :o
2022-05-13 15:12:57 +0200 <tomsmeding> my last ircbrowse freenode logs are from 2021-05-22, and the first libera logs rae from 2022-05-21
2022-05-13 15:13:23 +0200 <tomsmeding> ah launch was the 19th apparently
2022-05-13 15:13:56 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-05-13 15:14:20 +0200 <geekosaur> right, you had some overlap
2022-05-13 15:15:16 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 248 seconds)
2022-05-13 15:18:46 +0200moonsheep(~user@user/moonsheep)
2022-05-13 15:22:40 +0200exarkun(~exarkun@user/exarkun) (Killed (ozone (No Spam)))
2022-05-13 15:24:09 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-05-13 15:27:04 +0200gpncarl(~gpncarl@120.244.220.69)
2022-05-13 15:27:07 +0200exarkun(~exarkun@user/exarkun)
2022-05-13 15:27:50 +0200titibandit(~thibaut@sunp.ient.rwth-aachen.de) (Ping timeout: 240 seconds)
2022-05-13 15:31:50 +0200gpncarl(~gpncarl@120.244.220.69) (Ping timeout: 260 seconds)
2022-05-13 15:42:24 +0200titibandit(~thibaut@sunp.ient.rwth-aachen.de)
2022-05-13 15:46:25 +0200acidjnk(~acidjnk@p200300d0c7068b97d5ac4f822319aa3a.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-05-13 15:46:31 +0200jollygood2(~bc8147f2@cerf.good1.com)
2022-05-13 15:48:48 +0200Vajb(~Vajb@2001:999:400:9bc1:d5dd:7e53:33b:56) (Read error: Connection reset by peer)
2022-05-13 15:49:00 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-05-13 15:49:37 +0200 <jollygood2> does anyone know how to fix this issue when using gloss on windows? I get this error message that crashes ghci when I close the gloss window: "freeglut (<interactive>): fgPlatformInitialize: CreateDC failed, Screen size info may be incorrect"
2022-05-13 15:50:01 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-05-13 15:50:01 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-05-13 15:50:01 +0200wroathe(~wroathe@user/wroathe)
2022-05-13 15:50:25 +0200 <jollygood2> I did some googling, supposedly it is related to DISPLAY environment variable, but unsetting it, or setting it to some value that is expected, doesn't solve it
2022-05-13 15:50:54 +0200 <jollygood2> when running compiled program o error message is displayed
2022-05-13 15:51:11 +0200Gambino(~Gambino@user/polo)
2022-05-13 15:51:14 +0200Gambino(~Gambino@user/polo) (Excess Flood)
2022-05-13 15:51:22 +0200 <tomsmeding> jollygood2: probably that's just ghci-related; graphics things are generally iffy in ghci
2022-05-13 15:51:34 +0200 <geekosaur[m][m]> DISPLAY would only apply to unix
2022-05-13 15:52:55 +0200 <jollygood2> this post claims setting environment variable fixed the same issue in python. https://stackoverflow.com/a/65350246
2022-05-13 15:53:04 +0200 <jollygood2> unsetting*
2022-05-13 15:53:08 +0200 <tomsmeding> geekosaur[m][m]: how did you get the double [m] lol
2022-05-13 15:54:30 +0200 <yushyin> jelly? :)
2022-05-13 15:54:42 +0200 <jollygood2> so I'm wondering why unsetEnv "DISPLAY" wouldn't have the same effect
2022-05-13 15:55:52 +0200 <geekosaur[m][m]> Some weirdness in element on Android is all I can figure
2022-05-13 15:57:10 +0200 <geekosaur[m][m]> I decided not to fight it, one for matrix and one for mobile
2022-05-13 15:57:33 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 260 seconds)
2022-05-13 15:57:48 +0200__monty__(~toonn@user/toonn)
2022-05-13 15:59:13 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2022-05-13 16:00:15 +0200img(~img@user/img)
2022-05-13 16:00:20 +0200img(~img@user/img) (Remote host closed the connection)
2022-05-13 16:01:46 +0200img(~img@user/img)
2022-05-13 16:03:11 +0200aweinstock(~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) (Ping timeout: 260 seconds)
2022-05-13 16:11:32 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-05-13 16:15:37 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-05-13 16:17:35 +0200ChanServ+o tomsmeding
2022-05-13 16:18:08 +0200razetime_(~quassel@117.254.34.165)
2022-05-13 16:18:15 +0200razetime__(~quassel@117.254.34.165)
2022-05-13 16:18:20 +0200razetime_(~quassel@117.254.34.165) (Client Quit)
2022-05-13 16:18:24 +0200razetime(~quassel@117.254.34.165) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-05-13 16:18:31 +0200razetime__(~quassel@117.254.34.165) (Client Quit)
2022-05-13 16:18:41 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.5)
2022-05-13 16:18:46 +0200razetime(~quassel@117.254.34.165)
2022-05-13 16:22:13 +0200 <tomsmeding> :o
2022-05-13 16:22:25 +0200 <tomsmeding> <3
2022-05-13 16:23:32 +0200_73(~user@pool-108-49-252-36.bstnma.fios.verizon.net)
2022-05-13 16:24:34 +0200Guest27(~Guest27@210006143163.ctinets.com) (Remote host closed the connection)
2022-05-13 16:24:39 +0200CiaoSen(~Jura@p5dcc134a.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-05-13 16:27:29 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-05-13 16:29:39 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 16:32:43 +0200 <Bulby[m]> something tells me the fmap instance for either is going to be not what I expect then I will be mad when my code doesn't work
2022-05-13 16:33:30 +0200 <texasmynsted> when I do a cabal script, such as "cabal v2-run example.hs". If I do this more than once, it is clear that the second run is faster than the first.
2022-05-13 16:33:31 +0200 <Bulby[m]> ```
2022-05-13 16:33:32 +0200 <Bulby[m]> fmap :: (a0 -> b) -> Either a a0 -> Either a b
2022-05-13 16:33:32 +0200 <Bulby[m]> ```
2022-05-13 16:33:32 +0200 <Bulby[m]> i was right - I want the bifoldable thing
2022-05-13 16:33:47 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-05-13 16:33:58 +0200 <texasmynsted> I am guessing that modules and or compilation artifacts are being saved.
2022-05-13 16:34:32 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs) (Ping timeout: 248 seconds)
2022-05-13 16:34:34 +0200 <[exa]> texasmynsted: yes, lots of stuff is cached (you might see the dist-newstyle directory, and some of it is in ~/.cabal)
2022-05-13 16:35:47 +0200titibandit(~thibaut@sunp.ient.rwth-aachen.de) (Read error: Connection reset by peer)
2022-05-13 16:36:04 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:dfe2:64a:2f7b:12cc) (Quit: WeeChat 2.8)
2022-05-13 16:36:53 +0200texasmynstedlooks for dist-newstyle directory
2022-05-13 16:37:38 +0200 <[exa]> texasmynsted: usually right in the project directory
2022-05-13 16:37:58 +0200 <tomsmeding> [exa]: they were talking about cabal script
2022-05-13 16:38:16 +0200 <texasmynsted> no project directory
2022-05-13 16:38:27 +0200 <texasmynsted> see half way down https://cabal.readthedocs.io/en/3.6/cabal-commands.html#cabal-v2-run
2022-05-13 16:38:34 +0200 <tomsmeding> cabal script doesn't create a project directory, and indeed it will recompile the script itself each time
2022-05-13 16:38:44 +0200 <tomsmeding> it's just the dependencies that get cached (in ~/.cabal), if I'm not mistaken
2022-05-13 16:38:48 +0200 <texasmynsted> so why second compile faster?
2022-05-13 16:38:49 +0200 <geekosaur> unless you have a 3.8 prerelease
2022-05-13 16:38:52 +0200 <[exa]> ah I didn't realize, cool
2022-05-13 16:39:03 +0200 <geekosaur> deps already compiled?
2022-05-13 16:39:15 +0200 <texasmynsted> oh hm. I did not see any updates in ~/.cabal (I looked)
2022-05-13 16:39:25 +0200 <[exa]> texasmynsted: maybe disk cache effects?
2022-05-13 16:39:29 +0200 <geekosaur> there's a difference between recompiling the script and compiling its dependencies
2022-05-13 16:39:31 +0200 <texasmynsted> mayhbe
2022-05-13 16:39:49 +0200 <[exa]> (echo 3 >/proc/sys/vm/drop_caches and retry :] )
2022-05-13 16:39:51 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com)
2022-05-13 16:40:07 +0200 <texasmynsted> 3.6.2.0
2022-05-13 16:40:18 +0200 <texasmynsted> maybe I _need_ 3.8 :-)
2022-05-13 16:40:34 +0200 <texasmynsted> okay. I will try that
2022-05-13 16:41:23 +0200Henson(~kvirc@107-179-133-201.cpe.teksavvy.com)
2022-05-13 16:41:46 +0200zebrag(~chris@user/zebrag)
2022-05-13 16:41:48 +0200Henson(~kvirc@107-179-133-201.cpe.teksavvy.com) ()
2022-05-13 16:41:50 +0200Henson(~kvirc@107-179-133-201.cpe.teksavvy.com)
2022-05-13 16:43:36 +0200 <texasmynsted> heh no /proc filesystem in macos
2022-05-13 16:43:56 +0200 <Henson> hi everyone, I'm experiencing an issue when writing to a file. My program is allocating lots of memory and doing lots of image processing, and there's a function that's supposed to save information to disk. If I strip everything out of the save function and just do a "putStrLn" in it, there is no memory problem. If I strip everything out and write "foo" to "/tmp/foo.txt", then the system....
2022-05-13 16:44:41 +0200 <Henson> for some reason seems to start holding on to something that causes a huge memory bloat. Using retainer profiling indicates that the runs are pretty much identical with and without the memory bloat problem. Is there any reason that writing to a file would somehow trigger this behaviour?
2022-05-13 16:45:27 +0200 <[exa]> texasmynsted: maybe macos doing macos things then :]
2022-05-13 16:45:32 +0200 <texasmynsted> shrug. 12 to 7 seconds. Maybe it has nothing to do with cabal.
2022-05-13 16:45:42 +0200 <texasmynsted> fair enugh
2022-05-13 16:45:44 +0200 <texasmynsted> enough
2022-05-13 16:46:24 +0200 <[exa]> Henson: that's a bit weird, can you pastebin the whole minimal program that triggers the problem, just to be sure?
2022-05-13 16:47:32 +0200 <Henson> [exa]: I haven't boiled it down that much to a pastable program, just experimenting with what does and doesn't trigger the behaviour. I'll see if I can work towards cutting more things out and isolating it even more.
2022-05-13 16:48:09 +0200 <[exa]> Henson: one thing that could be explainable is that when you don't write out anything, lazy evaluation kinda ensures that the problematic thing is not actually evaluated
2022-05-13 16:48:27 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com) (Ping timeout: 240 seconds)
2022-05-13 16:48:34 +0200 <[exa]> except that doesn't really explan why the "foo" would trigger it.
2022-05-13 16:50:25 +0200 <[exa]> also, what kind of image processing? JuicyPixels-ish?
2022-05-13 16:50:39 +0200 <texasmynsted> geekosaur: So joking about 3.8. I do not see a tag or branch for that.
2022-05-13 16:52:35 +0200 <tusko> Anyone know of a better Haskell tutorial than the official one?
2022-05-13 16:52:57 +0200Sgeo(~Sgeo@user/sgeo)
2022-05-13 16:53:08 +0200 <Henson> [exa]: yeah. I'm deepseqing all of the big data that could be problematic, and that doesn't cause any problems. The image processing is using OpenCV in C++ that has been wrapped in Haskell functions.
2022-05-13 16:53:13 +0200 <geekosaur> not joking, I said prerelease. they apparently exiwst but I'm not sure how you get it as yet
2022-05-13 16:53:26 +0200 <texasmynsted> oh
2022-05-13 16:54:56 +0200 <RudraveerMandal[> Is emacs or nvim better for coding in Haskell?
2022-05-13 16:55:16 +0200 <RudraveerMandal[> I will probably not be beginning with a distribution of Emacs since I am familiar with Emacs and could get away with GNU Vanilla Emacs
2022-05-13 16:55:32 +0200 <texasmynsted> Looks like there is no way to preserve the build from a cabal v2-run, on 3.6.
2022-05-13 16:55:55 +0200 <Bulby[m]> if it has an lsp it can code haskell 🙂
2022-05-13 16:56:02 +0200 <[exa]> RudraveerMandal[: tbh I'm okay with the good old vim, with a hotkey for the formatter, no lsp
2022-05-13 16:56:16 +0200 <geekosaur> you may have to build from git
2022-05-13 16:56:27 +0200 <geekosaur> they're not ready for release yet apparently
2022-05-13 16:57:12 +0200 <[exa]> Henson: can you do `strace` and see if there are any syscalls going on? (possibly also `ltrace` against opencv)
2022-05-13 16:57:17 +0200 <geekosaur> (dug out the binaries area but latest there is 3.6.3, which I didn't know existed)
2022-05-13 16:57:56 +0200 <RudraveerMandal[> I will continue using nvim but add a org mode plugin
2022-05-13 16:59:32 +0200frost(~frost@user/frost) (Ping timeout: 252 seconds)
2022-05-13 17:00:04 +0200shriekingnoise(~shrieking@201.231.16.156)
2022-05-13 17:01:13 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 248 seconds)
2022-05-13 17:01:37 +0200justsomeguy(~justsomeg@user/justsomeguy)
2022-05-13 17:02:06 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-05-13 17:03:50 +0200chele(~chele@user/chele) (Remote host closed the connection)
2022-05-13 17:05:34 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-05-13 17:06:23 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2022-05-13 17:07:14 +0200vpan(~0@212.117.1.172) (Quit: Leaving.)
2022-05-13 17:09:24 +0200razetime(~quassel@117.254.34.165) (Ping timeout: 248 seconds)
2022-05-13 17:10:02 +0200razetime(~quassel@117.254.34.98)
2022-05-13 17:10:11 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs)
2022-05-13 17:10:30 +0200phma(phma@2001:5b0:210d:5458:5d56:889b:9db6:9f82) (Read error: Connection reset by peer)
2022-05-13 17:11:14 +0200phma(~phma@host-67-44-208-89.hnremote.net)
2022-05-13 17:11:25 +0200superbil(~superbil@1-34-176-171.hinet-ip.hinet.net) (Ping timeout: 265 seconds)
2022-05-13 17:12:50 +0200superbil(~superbil@1-34-176-171.hinet-ip.hinet.net)
2022-05-13 17:15:45 +0200Unicorn_Princess(~Unicorn_P@93-103-228-248.dynamic.t-2.net)
2022-05-13 17:16:33 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2022-05-13 17:17:18 +0200tomgus1(~tomgus1@90.218.25.145) (Remote host closed the connection)
2022-05-13 17:18:44 +0200tomgus1(~tomgus1@90.218.25.145)
2022-05-13 17:19:02 +0200stackdroid18(14094@user/stackdroid)
2022-05-13 17:24:48 +0200seiryn(~seiryn@2a01:e0a:25a:9d30:a3bb:221c:46bc:a014)
2022-05-13 17:25:30 +0200 <texasmynsted> I guess I will wait then. Hopefully not too long.
2022-05-13 17:27:19 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-05-13 17:28:10 +0200mikoto-chan(~mikoto-ch@213.177.151.239)
2022-05-13 17:31:36 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-05-13 17:31:53 +0200dsrt^(~dsrt@128-092-160-234.biz.spectrum.com) (Remote host closed the connection)
2022-05-13 17:34:09 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-05-13 17:34:43 +0200 <geekosaur> just checked #hackage, they're still debating how to do the prereleases. hopefully that means soon
2022-05-13 17:34:47 +0200seiryn(~seiryn@2a01:e0a:25a:9d30:a3bb:221c:46bc:a014) (Ping timeout: 240 seconds)
2022-05-13 17:36:19 +0200mikoto-chan(~mikoto-ch@213.177.151.239) (Quit: mikoto-chan)
2022-05-13 17:37:11 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com)
2022-05-13 17:37:37 +0200moonsheep(~user@user/moonsheep) (Quit: ERC 5.4 (IRC client for GNU Emacs 28.1))
2022-05-13 17:40:13 +0200razetime(~quassel@117.254.34.98) (Ping timeout: 260 seconds)
2022-05-13 17:41:12 +0200razetime(~quassel@117.254.35.103)
2022-05-13 17:41:53 +0200 <texasmynsted> hehe. I meant actual release.
2022-05-13 17:42:19 +0200 <texasmynsted> If they are _debating_ about prereleases it does not sound like 3.8 GA will be any time soon.
2022-05-13 17:43:16 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-05-13 17:43:31 +0200 <texasmynsted> I guess I will just use cabal scripts where they work fine paying for the compile each run or make a project and compile. Then later when cabal scripts are richer, use them more.
2022-05-13 17:44:55 +0200 <sm> ..or use a stack script ?
2022-05-13 17:46:31 +0200gpncarl(~gpncarl@120.244.220.69)
2022-05-13 17:46:53 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-05-13 17:48:32 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4)
2022-05-13 17:50:50 +0200Kaipei(~Kaiepi@156.34.47.253) (Ping timeout: 240 seconds)
2022-05-13 17:51:00 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com) (Ping timeout: 248 seconds)
2022-05-13 17:54:49 +0200Kaipei(~Kaiepi@156.34.47.253)
2022-05-13 17:55:48 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 248 seconds)
2022-05-13 17:56:55 +0200 <texasmynsted> heh. I am sticking with cabal for now
2022-05-13 17:58:46 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-05-13 17:59:17 +0200 <sm> absolutely your right, but I'm curious why, when a simple binary will solve your need ?
2022-05-13 17:59:35 +0200 <sm> I'm not a zealot, I promise. I always have both installed.
2022-05-13 18:00:34 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-05-13 18:02:30 +0200hololeap(~hololeap@user/hololeap)
2022-05-13 18:05:01 +0200 <sclv> we want a real 3.8 to coincide with the next ghc release if that helps with timetable
2022-05-13 18:08:20 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp)
2022-05-13 18:08:39 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-05-13 18:08:51 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-05-13 18:13:00 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com)
2022-05-13 18:16:08 +0200yauhsien(~yauhsien@61-231-24-3.dynamic-ip.hinet.net)
2022-05-13 18:18:54 +0200 <sm> int-e: are you around ? I'd like to pick your brain briefly about lambdabot
2022-05-13 18:19:05 +0200nehsou^(~nehsou@128-092-160-234.biz.spectrum.com)
2022-05-13 18:19:12 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2022-05-13 18:19:51 +0200 <int-e> mmm
2022-05-13 18:21:03 +0200gpncarl(~gpncarl@120.244.220.69) (Ping timeout: 260 seconds)
2022-05-13 18:21:30 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com) (Ping timeout: 240 seconds)
2022-05-13 18:21:47 +0200vysn(~vysn@user/vysn) (Quit: WeeChat 3.4)
2022-05-13 18:22:21 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-05-13 18:22:58 +0200ec(~ec@gateway/tor-sasl/ec)
2022-05-13 18:27:09 +0200 <sm> good day.. I don't know if you saw my previous chatter. I recently started https://haskell-links.org , with most of the content coming from lambdabot's @where currently.
2022-05-13 18:27:14 +0200 <sm> I intend(ed) a new chatbot which could allow more custom integration, enabling things like web edits. That's possible with lambdabot too, but syncing conflicts will be more awkward / require changes to the @where plugin. I wonder if you have any strong opinion either way
2022-05-13 18:27:27 +0200slack1256(~slack1256@191.126.227.86)
2022-05-13 18:29:56 +0200 <slack1256> Not really a haskell question. Are new posts on r/haskell not shown until approved? I posted something, but seem only I can see it. When I sent a link to a friend, the body of the message was empty.
2022-05-13 18:30:47 +0200 <RudraveerMandal[> if thats the case it should say to you that it is wating moderator approval
2022-05-13 18:30:53 +0200 <RudraveerMandal[> except that that cant happen
2022-05-13 18:31:13 +0200 <sm> (a related choice is whether to stick with CSV as the primary db, or use an actual DB)
2022-05-13 18:31:26 +0200 <slack1256> Then I did something wrong.
2022-05-13 18:31:34 +0200 <RudraveerMandal[> So should I start with the Haskell WikiBooks or Learn You a Haskell for Greater Good
2022-05-13 18:31:36 +0200 <sm> (int-e ^)
2022-05-13 18:32:53 +0200 <sm> Rudraveer Mandal: a vote for the wikibook, have not read it from the start but it has always been good when I looked up something there
2022-05-13 18:33:03 +0200 <int-e> Hmm, my first instinct is that I'd prefer to keep lambdabot as a "pure" IRC bot... without syncing to external edits.
2022-05-13 18:33:19 +0200 <sm> also a vote for
2022-05-13 18:33:20 +0200 <sm> @where HTAC
2022-05-13 18:33:20 +0200 <sm> and
2022-05-13 18:33:20 +0200 <sm> @where HFTVB
2022-05-13 18:33:20 +0200 <lambdabot> "Haskell Tutorial and Cookbook" by Mark Watson in 2017-09-04 at <https://leanpub.com/haskell-cookbook>
2022-05-13 18:33:20 +0200 <lambdabot> https://www.extrema.is/articles/haskell-books/haskell-from-the-very-beginning
2022-05-13 18:33:51 +0200 <EvanR> @where a gentle introduction
2022-05-13 18:33:51 +0200 <lambdabot> I know nothing about a.
2022-05-13 18:34:00 +0200 <int-e> @where gentle
2022-05-13 18:34:00 +0200 <lambdabot> http://www.haskell.org/tutorial/
2022-05-13 18:34:07 +0200 <EvanR> an oldie but goodie
2022-05-13 18:34:20 +0200raym(~raym@user/raym) (Ping timeout: 246 seconds)
2022-05-13 18:34:41 +0200tommd(~tommd@97-120-48-245.ptld.qwest.net)
2022-05-13 18:35:01 +0200 <int-e> sm: so I guess the question is... how bad would the confusion of having two closely related link collection bots (one dedicated, the other being lambdabot) be...
2022-05-13 18:35:21 +0200 <int-e> because that, I think, is the primary cost of keeping those separate
2022-05-13 18:35:43 +0200 <sm> int-e, indeed.. If my thing continues I imagine my copy of the link db will rapidly get cleaned up and diverge from lambdabot's a lot
2022-05-13 18:35:57 +0200 <sm> which needn't be a problem, except redundancy..
2022-05-13 18:36:26 +0200 <int-e> and I guess my main worry is spam. some sort of edit wars are a remote possibility too I guess
2022-05-13 18:37:47 +0200 <sm> that's a good worry. I am currently using github to control that, my db is a csv file on github. A web ui would have to implement some similar access control maybe
2022-05-13 18:38:55 +0200 <sm> even if we put the web ui aside, I'd like to at least be able to edit the csv on github, and have that sync with irc somehow. Also, I'd like to add link voting in the web and chat uis
2022-05-13 18:39:31 +0200 <sm> maybe there's some path that allows some of these things without writing new stuff, without too much fragility..
2022-05-13 18:40:40 +0200raym(~raym@user/raym)
2022-05-13 18:41:36 +0200 <EvanR> it's times like these I wish I knew haskell web tech
2022-05-13 18:42:04 +0200 <sm> EvanR: ha
2022-05-13 18:42:11 +0200 <EvanR> all possible and uncontroversial features, but probably very easy in haskell. If you knew how
2022-05-13 18:42:12 +0200smsays no more
2022-05-13 18:43:36 +0200 <int-e> Hmm. I guess an easy middle ground would be to extend @where to query a web service, either always (producing two answers when a key exists on both (and differs?)), or maybe just as a fallback if a key doesn't exist. That would sidestep all the complications from editing
2022-05-13 18:45:25 +0200 <int-e> Not sure that's good... hmm. It's a pretty lazy approach.
2022-05-13 18:46:13 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-05-13 18:46:18 +0200 <sm> yes (to the first comment :), and another option could be to provide a hook so I could make it load a new link, or reload the entire db from the master csv on github
2022-05-13 18:46:49 +0200 <tomsmeding> can you update (@where+ iirc?) lambdabot's db entries in a private message
2022-05-13 18:46:57 +0200 <sm> I could do that right now by scripting the @where+ command I guess
2022-05-13 18:47:01 +0200 <tomsmeding> if so, a hack could be to make a bot that does that :p
2022-05-13 18:47:01 +0200 <sm> yes
2022-05-13 18:47:15 +0200 <tomsmeding> not saying it's a super good idea necessarily
2022-05-13 18:47:26 +0200 <tomsmeding> makes me think of ircbrowse being batch-oriented
2022-05-13 18:50:34 +0200 <sm> maintaining the db entirely through @where+ is one possibility, but probably best suited to one-link-at-a-time edits. Bulk edits to the csv (cleanups, or dumping in a new dataset) would be a pain
2022-05-13 18:50:57 +0200 <sm> but it's an option
2022-05-13 18:51:06 +0200 <tomsmeding> sm: what's the list currently sorted on :p
2022-05-13 18:51:25 +0200 <sm> URL by default.. you can change it
2022-05-13 18:51:34 +0200 <sm> but there isn't much else useful to sort on yet
2022-05-13 18:51:35 +0200 <tomsmeding> oh /me dumb
2022-05-13 18:52:56 +0200 <int-e> Yeah doing that in bulk is a bad idea... lambdabot's rate limits are very conservative :-/ (too conservative really but it's not at all easy to change, there's a fundamental misdesign in this area).
2022-05-13 18:53:10 +0200 <hololeap> I made this Parsable class so that all my types with a Parsec parser will have a unified interface, but I later ran into a case where the parser needed a bit of outside context to run, so I added a type family to represent the input type: http://sprunge.us/YQoiv1
2022-05-13 18:53:37 +0200 <RudraveerMandal[> <sm> "Rudraveer Mandal: a vote for the..." <- hmm well I am starting from the complete beginning of functional programming
2022-05-13 18:54:12 +0200mikoto-chan(~mikoto-ch@213.177.151.239)
2022-05-13 18:54:16 +0200 <hololeap> I would like to make it so that all the old Parsable instances will still work without any modification, but I can override ParsableInput and use parser' if I need to. how can I do this?
2022-05-13 18:55:05 +0200 <sm> Rudraveer Mandal: try the three I shared, see if you like any of them
2022-05-13 18:55:27 +0200 <sm> (and let us know)
2022-05-13 18:55:55 +0200 <sm> perhaps the last is good
2022-05-13 18:56:00 +0200 <RudraveerMandal[> > <@simonmic:matrix.org> also a vote for... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/9a33522994dd89e50d3db83a90d291787a31…)
2022-05-13 18:56:03 +0200 <lambdabot> <hint>:1:1: error: parse error on input ‘<@’
2022-05-13 18:56:19 +0200 <sm> yes, the links that appeared right after that
2022-05-13 18:56:24 +0200 <RudraveerMandal[> btw is this lambabot written in haskell
2022-05-13 18:56:48 +0200 <int-e> @where source
2022-05-13 18:56:48 +0200 <lambdabot> The fixed database for the `src' lambdabot command is at <https://github.com/lambdabot/lambdabot/blob/master/lambdabot/State/source>
2022-05-13 18:56:51 +0200 <int-e> oh
2022-05-13 18:56:54 +0200 <int-e> @version
2022-05-13 18:56:54 +0200 <lambdabot> lambdabot 5.3.0.1
2022-05-13 18:56:54 +0200 <lambdabot> git clone https://github.com/lambdabot/lambdabot
2022-05-13 18:57:04 +0200 <int-e> anyway, yes, it is
2022-05-13 18:57:27 +0200 <RudraveerMandal[> Haskell surprises me in the amount of areas it can be used
2022-05-13 18:57:41 +0200 <sm> should probably be added to the "real world haskell apps list".. it's usually forgotten
2022-05-13 18:57:42 +0200 <int-e> why? it is a general purpose programming language
2022-05-13 18:57:45 +0200 <hololeap> ideally, I would like to set a default for parser' when (ParsableInput t ~ ()), but require that it be defined otherwise
2022-05-13 18:57:57 +0200 <RudraveerMandal[> int-e: most languages cant be used in so many areas
2022-05-13 18:58:04 +0200 <RudraveerMandal[> for example rust cant be used for scripting
2022-05-13 18:58:11 +0200 <darkling> int-e: Yes, but it uses scary words and doesn't have many braces. :)
2022-05-13 18:58:20 +0200 <RudraveerMandal[> python cant be used for fast stuff that needs compilation
2022-05-13 18:58:27 +0200 <RudraveerMandal[> python cant be used also for low systems level programming
2022-05-13 18:58:51 +0200 <int-e> To my mind Haskell isn't exactly a scripting language either. Yes, it has hacks to make #! work. That's about it.
2022-05-13 18:59:44 +0200 <sm> int-e: as long as I'm still using @where, I'd also like to propose a preferred convention of "URL Description # tag1 tag2"
2022-05-13 19:00:12 +0200 <sm> not as a hard convention, but it maps nicely
2022-05-13 19:00:53 +0200 <sm> or do you think tags would be too much noise in @where
2022-05-13 19:01:27 +0200 <int-e> they do look a bit out of place, don't they?
2022-05-13 19:01:48 +0200 <int-e> for a key-value store
2022-05-13 19:02:44 +0200 <hololeap> I figured it out, I had forgotten about DefaultSignatures
2022-05-13 19:03:04 +0200 <sm> yes perhaps. I need to have them one way or another though, for richer searching like in tcard's https://www.extrema.is/articles/haskell-books
2022-05-13 19:03:44 +0200gpncarl(~gpncarl@120.244.220.69)
2022-05-13 19:07:02 +0200 <sm> this chat is helpful, thanks. I'm slightly leaning towards experimenting with a separate db/bot and not propagating changes back to lambdabot. It's always possible to reconsider/resync later...
2022-05-13 19:07:16 +0200tommd(~tommd@97-120-48-245.ptld.qwest.net) (Ping timeout: 248 seconds)
2022-05-13 19:07:33 +0200 <tomsmeding> it's nice if there is a choice that doesn't preclude doing the alternatives later on
2022-05-13 19:08:08 +0200gpncarl(~gpncarl@120.244.220.69) (Ping timeout: 248 seconds)
2022-05-13 19:08:43 +0200 <sm> it's just links, and not life-critical data, so what could possibly go wrong
2022-05-13 19:08:58 +0200 <tomsmeding> int-e: haskell isn't a scripting language, but I find ghci quite useful as a powerful calculator
2022-05-13 19:09:19 +0200 <int-e> tomsmeding: yeah, me too
2022-05-13 19:10:31 +0200 <sm> I like haskell quite a bit for scripting, as long as you/they don't mind installing haskell..
2022-05-13 19:10:38 +0200 <tomsmeding> sm: there's a bunch of non-working links and duplication (it seems) at https://haskell-links.org/?q=paste
2022-05-13 19:11:10 +0200 <monochrom> I have a Calculator.hs that I load into ghci for binomial coefficients, x^y mod z, hex-oct-binary conversions, etc.
2022-05-13 19:11:18 +0200 <sm> yes, that's the current content of @where, with all its historical cruft and charm
2022-05-13 19:11:32 +0200 <tomsmeding> sm: I figured, was just saying :)
2022-05-13 19:11:32 +0200 <int-e> sm: Yeah, I think that would be best for now. We should keep an eye on this; there's always the possibility to switch @where over to query your database instead of the internal one... or even have a new plugin that interacts with it fully (including edits).
2022-05-13 19:12:28 +0200 <sm> +1
2022-05-13 19:12:41 +0200 <sm> more experimentation needed (all help welcome)
2022-05-13 19:14:54 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-05-13 19:20:40 +0200parsnip(~parsnip@user/parsnip) (Read error: Connection reset by peer)
2022-05-13 19:21:15 +0200jakalx(~jakalx@base.jakalx.net)
2022-05-13 19:23:34 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
2022-05-13 19:26:34 +0200 <maerwald> I want viewpatterns in record syntax
2022-05-13 19:26:55 +0200razetime(~quassel@117.254.35.103) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-05-13 19:26:59 +0200 <maerwald> Foo { fromFoo -> bar } <- getFoo
2022-05-13 19:27:44 +0200lechner(lechner@debian/lechner) (Quit: WeeChat 3.5)
2022-05-13 19:28:11 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-05-13 19:29:15 +0200 <maerwald> but I can see how this is crazy
2022-05-13 19:31:39 +0200lechner(lechner@debian/lechner)
2022-05-13 19:32:20 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
2022-05-13 19:32:47 +0200alp_(~alp@user/alp) (Ping timeout: 240 seconds)
2022-05-13 19:33:29 +0200 <monochrom> I feel that view patterns is kind of a dead extension, "dead" as in no longer receiving improvements or updates for playing well with other extensions.
2022-05-13 19:36:37 +0200074AADZ4O(~Thunderbi@p200300ecdf1588cdb8e4e87d9f1e053d.dip0.t-ipconnect.de) (Remote host closed the connection)
2022-05-13 19:38:27 +0200 <c_wraith> in isolation, that's true. But view patterns are kind of critical for pattern synonyms being useful
2022-05-13 19:39:19 +0200011AAHV78(~Thunderbi@p548c8d44.dip0.t-ipconnect.de) (Quit: 011AAHV78)
2022-05-13 19:39:34 +0200econo(uid147250@user/econo)
2022-05-13 19:40:51 +0200CiaoSen(~Jura@p200300c95732ec002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-05-13 19:40:55 +0200alp_(~alp@user/alp)
2022-05-13 19:42:48 +0200 <maerwald> pattern synonyms are confusing
2022-05-13 19:43:04 +0200rekahsoft(~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca)
2022-05-13 19:43:24 +0200Tuplanolla(~Tuplanoll@91-159-68-39.elisa-laajakaista.fi)
2022-05-13 19:43:33 +0200 <maerwald> when you start, you get type errors, then you add some obscure syntax (the special where) with viewpatterns and it compiles... then you forget until next time what that stuff was about
2022-05-13 19:43:35 +0200 <c_wraith> they're complex as heck - mostly because they can function as GADT patterns, where matching on them introduces instances into scope.
2022-05-13 19:44:26 +0200 <c_wraith> But they can make really pleasant interfaces, especially when they're complex.
2022-05-13 19:45:08 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-05-13 19:45:36 +0200 <maerwald> I find them mostly interesting as uni-directonial, when you don't want to expose the entire constructor
2022-05-13 19:45:43 +0200 <maerwald> but this could be fixed language-wise, imo
2022-05-13 19:45:55 +0200 <maerwald> as in: allow pattern matching, but not constructing
2022-05-13 19:51:25 +0200 <c_wraith> One of the primary motivating use cases was Data.Sequence. There's literally no way to do what the patterns do there by just matching on fixed constructor patterns. Mostly because Data.Sequence is an irregular data type.
2022-05-13 19:52:40 +0200 <c_wraith> and it's definitely the easiest interface for working with the type when you want to do things that treat it as if it's just a bidirectional list.
2022-05-13 19:57:21 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-05-13 19:57:27 +0200hiredman(~hiredman@frontier1.downey.family) (Ping timeout: 240 seconds)
2022-05-13 19:57:52 +0200 <dolio> We have a ton of unidirectional pattern synonyms in our codebase and I find it a giant pain to have to remember which lowercase function to use to do the opposite of a pattern.
2022-05-13 19:59:08 +0200 <dolio> The particular design leads to synonyms a lot more than you might have normally, though.
2022-05-13 20:07:03 +0200 <c_wraith> Why not make them bidirectional?
2022-05-13 20:07:27 +0200 <c_wraith> It's usually much easier to write the constructor direction than the match direction
2022-05-13 20:08:33 +0200 <dolio> I have other stuff to do. :)
2022-05-13 20:08:40 +0200 <tomsmeding> more pattern synonyms https://github.com/AccelerateHS/accelerate/blob/master/src/Data/Array/Accelerate/AST/Idx.hs#L65-L92
2022-05-13 20:10:32 +0200 <c_wraith> I... don't quite buy that it's both a giant pain to remember the inverse pairs and not worth spending some time once to fix that. :P
2022-05-13 20:11:16 +0200 <monochrom> heheh
2022-05-13 20:13:12 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-05-13 20:15:19 +0200 <dolio> It's a repetitive pain when I'm working with code that uses them, but I'd have to take a large bite out of whatever I'm doing at the time to fix like 40+ pattern aliases.
2022-05-13 20:16:03 +0200hgolden(~hgolden2@cpe-172-251-233-141.socal.res.rr.com) (Quit: Konversation terminated!)
2022-05-13 20:21:03 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com)
2022-05-13 20:21:18 +0200rekahsoft(~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) (Remote host closed the connection)
2022-05-13 20:21:43 +0200rekahsoft(~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca)
2022-05-13 20:23:04 +0200acidjnk(~acidjnk@p200300d0c7068b9711170b58f5b9d22f.dip0.t-ipconnect.de)
2022-05-13 20:28:04 +0200hololeap(~hololeap@user/hololeap) (Ping timeout: 240 seconds)
2022-05-13 20:29:14 +0200jgeerds(~jgeerds@d53604b0.access.ecotel.net)
2022-05-13 20:30:48 +0200hgolden(~hgolden2@cpe-172-251-233-141.socal.res.rr.com)
2022-05-13 20:30:54 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-05-13 20:31:26 +0200hololeap(~hololeap@user/hololeap)
2022-05-13 20:31:35 +0200hololeap(~hololeap@user/hololeap) (Client Quit)
2022-05-13 20:32:13 +0200hgolden(~hgolden2@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection)
2022-05-13 20:32:47 +0200hgolden(~hgolden2@cpe-172-251-233-141.socal.res.rr.com)
2022-05-13 20:39:18 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com) (Ping timeout: 260 seconds)
2022-05-13 20:39:28 +0200kannon(~NK@128.32.176.159)
2022-05-13 20:40:09 +0200 <maerwald> https://github.com/nikita-volkov/isomorphism-class <- can I have a GHC extension with that, that automatically "casts" the types if there is an isomorphism?
2022-05-13 20:40:44 +0200xkuru(~xkuru@user/xkuru)
2022-05-13 20:41:18 +0200 <EvanR> that's a special case of subtype relationship right
2022-05-13 20:41:24 +0200gurkenglas(~gurkengla@dslb-084-057-085-111.084.057.pools.vodafone-ip.de)
2022-05-13 20:41:35 +0200jgeerds(~jgeerds@d53604b0.access.ecotel.net) (Ping timeout: 260 seconds)
2022-05-13 20:41:43 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com)
2022-05-13 20:42:01 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2022-05-13 20:43:22 +0200 <maerwald> I mean, this will render all my smart constructors useless, but hey
2022-05-13 20:43:48 +0200gehmehgeh(~user@user/gehmehgeh) (Remote host closed the connection)
2022-05-13 20:44:30 +0200gehmehgeh(~user@user/gehmehgeh)
2022-05-13 20:44:54 +0200 <c_wraith> It'd need to follow the same sorts of visibility rules as GND
2022-05-13 20:45:58 +0200dschrempf(~dominik@mobiledyn-62-240-134-183.mrsn.at)
2022-05-13 20:46:01 +0200 <c_wraith> probably need to respect roles, too. Especially since GADTs exist.
2022-05-13 20:46:40 +0200 <maerwald> the question really is what is "lossless"...
2022-05-13 20:47:58 +0200dcoutts__(~duncan@host213-122-143-140.range213-122.btcentralplus.com)
2022-05-13 20:48:24 +0200 <EvanR> first you will have to learn a bit of category theory
2022-05-13 20:48:59 +0200 <EvanR> just kidding that doesn't answer that
2022-05-13 20:49:34 +0200 <maerwald> I mean, if I tag a FilePath in my program with a newtype, because it has special semantics... but converting it back to FilePath preserves the "data". Is it lossless?
2022-05-13 20:49:55 +0200lechner(lechner@debian/lechner) (Quit: WeeChat 3.5)
2022-05-13 20:50:06 +0200 <EvanR> a forgetful functor from tagged filepath back to filepath
2022-05-13 20:51:31 +0200dschrempf(~dominik@mobiledyn-62-240-134-183.mrsn.at) (Quit: WeeChat 3.5)
2022-05-13 20:54:40 +0200lechner(lechner@debian/lechner)
2022-05-13 20:54:51 +0200ec(~ec@gateway/tor-sasl/ec) (Quit: ec)
2022-05-13 20:55:57 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com) (Read error: Connection reset by peer)
2022-05-13 20:56:06 +0200 <tomsmeding> isn't the whole point of how we program haskell to _not_ make these conversions implicit
2022-05-13 20:56:46 +0200 <tomsmeding> the motivating example is apparently lazy text <-> text, which is significantly less bad than maerwald's tagged filepath <-> String
2022-05-13 20:57:07 +0200 <tomsmeding> but still it's questionable whether one would want that to be automatic, because it has performance implications
2022-05-13 20:57:43 +0200 <maerwald> I'll just pretend that gets optimized away :D
2022-05-13 20:57:59 +0200CiaoSen(~Jura@p200300c95732ec002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-05-13 20:58:07 +0200 <tomsmeding> I feel like the motivating example of bytestring builder not exporting a function to convert to a strict bytestring immediately isn't a motivating example for this isomorphism class, it's an argument to add that function to Data.ByteString.Builder :p
2022-05-13 20:58:39 +0200 <tomsmeding> and Text and String may be isomorphic, they are _not_ equivalent in performance, like at all
2022-05-13 20:59:18 +0200 <tomsmeding> I feel like https://hackage.haskell.org/package/witch is more haskelly
2022-05-13 21:00:25 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2022-05-13 21:00:38 +0200gehmehgeh(~user@user/gehmehgeh)
2022-05-13 21:01:16 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com)
2022-05-13 21:01:52 +0200julian(~julian@20.83.116.49) (Remote host closed the connection)
2022-05-13 21:02:36 +0200 <EvanR> some time in the next 700 programming languages, not only will there be an AI to insert your autoconversions, but it will generate philosophy to justify it for you
2022-05-13 21:02:52 +0200julian(~julian@20.83.116.49)
2022-05-13 21:03:03 +0200 <EvanR> and hopefully that gets optimized away
2022-05-13 21:03:16 +0200gehmehgeh(~user@user/gehmehgeh) (Client Quit)
2022-05-13 21:04:10 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-05-13 21:04:35 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-05-13 21:04:57 +0200gehmehgeh(~user@user/gehmehgeh)
2022-05-13 21:06:01 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com) (Ping timeout: 248 seconds)
2022-05-13 21:06:06 +0200abhixec(~abhinav@c-67-169-139-16.hsd1.ca.comcast.net)
2022-05-13 21:07:13 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-05-13 21:08:59 +0200jakalx(~jakalx@base.jakalx.net)
2022-05-13 21:09:56 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-05-13 21:10:08 +0200abhixec(~abhinav@c-67-169-139-16.hsd1.ca.comcast.net) (Client Quit)
2022-05-13 21:11:16 +0200Hash(~Hash@hey.howstoned.ru) (Quit: ZNC - https://znc.in)
2022-05-13 21:13:13 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2022-05-13 21:20:15 +0200 <texasmynsted> An AI does not sound positive. I remember Clippy.
2022-05-13 21:20:16 +0200 <texasmynsted> Please do not make a talking Lambda AI with giant eyes. "Oh hello there. I see you are having some some trouble. Have you considered traverse?"
2022-05-13 21:20:23 +0200Hash(~Hash@hey.howstoned.ru)
2022-05-13 21:20:48 +0200 <tusko> I remember my first time
2022-05-13 21:21:00 +0200 <geekosaur> anyone remember VIgor?
2022-05-13 21:21:02 +0200Hash(~Hash@hey.howstoned.ru) (Read error: Connection reset by peer)
2022-05-13 21:22:25 +0200 <texasmynsted> Was that some Vi thing? I guess I do not remember.
2022-05-13 21:22:51 +0200 <geekosaur> http://vigor.sourceforge.net/
2022-05-13 21:23:02 +0200 <geekosaur> complete with link to the userfriendly that started it off
2022-05-13 21:26:12 +0200jollygood2(~bc8147f2@cerf.good1.com) (Quit: CGI:IRC (Session timeout))
2022-05-13 21:26:28 +0200xaotuk(~sasha@net39-38-245-109.mbb.telenor.rs) (Ping timeout: 248 seconds)
2022-05-13 21:27:59 +0200 <texasmynsted> geekosaur: LOLOL
2022-05-13 21:28:33 +0200 <tomsmeding> https://web.archive.org/web/20190504043706/http://ars.userfriendly.org/cartoons/?id=20031101
2022-05-13 21:29:13 +0200 <kannon> hi anyone know of a simple neural network written in haskell I can look at?
2022-05-13 21:30:19 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
2022-05-13 21:31:33 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-05-13 21:32:28 +0200 <kannon> i.e. how to learn haskell without textbooks
2022-05-13 21:34:34 +0200 <shapr> google suggests https://crypto.stanford.edu/~blynn/haskell/brain.html V
2022-05-13 21:34:35 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-05-13 21:35:08 +0200 <shapr> does that help any?
2022-05-13 21:35:14 +0200 <texasmynsted> How to learn haskell without textbooks?
2022-05-13 21:35:15 +0200 <tomsmeding> maerwald: https://github.com/nikita-volkov/isomorphism-class/blob/master/library/IsomorphismClass/Prelude.hs talking about the kitchen sink
2022-05-13 21:35:23 +0200 <maerwald> yep
2022-05-13 21:35:39 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2022-05-13 21:36:22 +0200 <kannon> shapr: serious suggestion?
2022-05-13 21:36:58 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-05-13 21:37:46 +0200 <texasmynsted> kannon: I am not sure what you are really wanting.
2022-05-13 21:39:15 +0200 <[exa]> kannon: how simple can it be? :]
2022-05-13 21:39:22 +0200 <texasmynsted> Graham Hutton has some videos but the book would be useful as well.
2022-05-13 21:39:22 +0200 <kannon> texasmynsted: thanks, I've tried before. Just can't keep it all in my head.
2022-05-13 21:39:41 +0200 <texasmynsted> There are courses online
2022-05-13 21:40:31 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com)
2022-05-13 21:42:45 +0200 <kannon> [exa]: I think you helped me a long time ago. I put a lot of time in; I suck at it. :)
2022-05-13 21:42:50 +0200 <texasmynsted> look for data61 fp-course
2022-05-13 21:43:07 +0200alp_(~alp@user/alp) (Ping timeout: 240 seconds)
2022-05-13 21:43:21 +0200jakalx(~jakalx@base.jakalx.net)
2022-05-13 21:43:30 +0200 <geekosaur> @where cis194
2022-05-13 21:43:30 +0200 <lambdabot> https://www.seas.upenn.edu/~cis194/spring13/lectures.html
2022-05-13 21:43:36 +0200 <geekosaur> @where fp-course
2022-05-13 21:43:36 +0200 <lambdabot> I know nothing about fp-course.
2022-05-13 21:43:45 +0200 <geekosaur> hm, it used to be in there somewhere
2022-05-13 21:43:49 +0200 <geekosaur> @where data61
2022-05-13 21:43:49 +0200 <lambdabot> Data61 Functional Programming Course <https://github.com/data61/fp-course>,<https://qfpl.io/links/2017-october-fp-course/> by Tony Morris,Mark Hibberd. Also see the channel #qfpl
2022-05-13 21:44:11 +0200 <texasmynsted> There was a thing you could download that worked with git. You would be presented with a problem and once you solved it you would get feedback from real people. I can't recall the name.
2022-05-13 21:44:51 +0200 <kannon> I never finished the Hutton book. I got to parsers.
2022-05-13 21:45:06 +0200abhixec_(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2022-05-13 21:45:28 +0200 <texasmynsted> Is that pretty far in? (I do not have that book.)
2022-05-13 21:45:33 +0200abhixec_(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Client Quit)
2022-05-13 21:46:00 +0200 <[exa]> kannon: you can literally take a random matrix from the `Linear` package, add some activation function (iirc tanh is in Prelude) and you can make networks by just chaining (fmap tanh).(!* matrix)
2022-05-13 21:46:01 +0200 <texasmynsted> But Hutton is outstanding
2022-05-13 21:46:20 +0200Feuermagier(~Feuermagi@user/feuermagier) (Remote host closed the connection)
2022-05-13 21:46:46 +0200Feuermagier(~Feuermagi@user/feuermagier)
2022-05-13 21:47:07 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: Lost terminal)
2022-05-13 21:48:31 +0200 <kannon> I understand some basics of monad; I went through https://www.schoolofhaskell.com/user/Lkey/kleisli
2022-05-13 21:48:37 +0200 <texasmynsted> kannon: I think the only way to really learn something abstract like Haskell is by writing it, making mistakes, and trying again. So exercises, etc.
2022-05-13 21:49:02 +0200 <kannon> that helped me understand monad
2022-05-13 21:49:07 +0200 <texasmynsted> (I do not presume to be a haskell expert, just to be clear.)
2022-05-13 21:49:50 +0200 <[exa]> kannon: btw anything specific taht causes problems?
2022-05-13 21:50:09 +0200 <kannon> thanks texasmynsted . I'll look at some of these suggestion incl geekosaur 's etc
2022-05-13 21:50:25 +0200 <texasmynsted> I think books are great for this actually. Find the exercises. Try them first. Do not look at the answers. Read the chapter, and then try them again when you encounter them again.
2022-05-13 21:50:30 +0200aweinstock(~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com) (Ping timeout: 240 seconds)
2022-05-13 21:50:51 +0200 <kannon> [exa]: just keeping it in my head. I understand principles if they are written out , but actually writing anything? no way
2022-05-13 21:50:54 +0200 <texasmynsted> You will think this is poor use of your time but I do not agree.
2022-05-13 21:51:13 +0200 <texasmynsted> Right.
2022-05-13 21:52:20 +0200 <texasmynsted> It is easy to over estimate understanding when reading or hearing an explanation.
2022-05-13 21:52:41 +0200 <[exa]> kannon: try a less principled language for some time, overthinking stuff is common in beginner haskell and it usually keeps people unhappy for too long
2022-05-13 21:53:34 +0200pavonia(~user@user/siracusa)
2022-05-13 21:53:46 +0200 <kannon> I understand the state monad. also I get function composition by looking at some exercises by edwardk
2022-05-13 21:54:01 +0200 <kannon> that's interesting [exa] thanks, yeah you're probably right
2022-05-13 21:54:05 +0200 <texasmynsted> Try reading the book taking notes for how you will teach Haskell to somebody else. There are many explanation for these principles in cognitive psychology texts.
2022-05-13 21:54:50 +0200 <texasmynsted> Learn lambda calculus first.
2022-05-13 21:55:00 +0200 <[exa]> kannon: scheme is a great candidate, the whole language consists of like (, ), define, car, cdr and a few other quite expectable things, and the functional programming in there is very strong
2022-05-13 21:55:05 +0200 <texasmynsted> I am not joking.
2022-05-13 21:56:02 +0200 <texasmynsted> ooh yeah. Thumbs up for scheme actually
2022-05-13 21:56:57 +0200 <kannon> Ilooked at lambda calculus in "first principles" book, but missed the last part and felt I didn't fully get it. I gave up on that book.
2022-05-13 21:57:30 +0200 <texasmynsted> The first part of the First Principles book is good
2022-05-13 21:57:54 +0200 <[exa]> I don't think that people who are into logic and enumerability will get much from really studying lambda calculus, except for "hey look the 2 language constructs can do ALL THIS"
2022-05-13 21:58:05 +0200 <[exa]> *who are _not_ into ..
2022-05-13 21:58:07 +0200 <kannon> I looked at ski-calculus also. that is interesting but how does that apply to understanding functors and monads?
2022-05-13 21:58:11 +0200 <texasmynsted> You might check out Racket. https://racket-lang.org
2022-05-13 21:58:28 +0200 <kannon> or how does lambda apply to monads etc?
2022-05-13 21:59:04 +0200 <kannon> isn't lambda just anon function (\_ -> ... ) ?
2022-05-13 21:59:25 +0200 <[exa]> kannon: it gives pieces of intuition. you're probably not going to make any hardcore programming mathematics anytime soon, so it's good to know how the stuff is called so that you may read the docs with less "wtf", and that's it
2022-05-13 21:59:39 +0200 <[exa]> lambda is a randomly chosen letter btw. :D
2022-05-13 22:00:14 +0200 <geekosaur> lambda isn't directly related to either but makes both much more flexible and useful
2022-05-13 22:01:13 +0200 <texasmynsted> Well I think if you understand function composition, then parametric polymorphism, then the ad hoc polymorphism used with Monads (etc) will make more sense.
2022-05-13 22:01:31 +0200 <texasmynsted> kind of see all the things separately?
2022-05-13 22:01:33 +0200texasmynstedshrug
2022-05-13 22:01:58 +0200 <kannon> also sorry, is there a log for this channel?
2022-05-13 22:02:16 +0200 <texasmynsted> I do not know.
2022-05-13 22:02:26 +0200 <yushyin> kannon: see topic
2022-05-13 22:03:12 +0200euandreh(~euandreh@2804:14c:33:9fe5:2165:73d6:1630:f174) (Quit: WeeChat 3.5)
2022-05-13 22:03:47 +0200gustik(~gustik@2a01:c844:2457:2220:475d:34f:d571:996f)
2022-05-13 22:04:52 +0200 <[exa]> kannon: anyway, did you try gloss?
2022-05-13 22:05:13 +0200gpncarl(~gpncarl@120.244.220.69)
2022-05-13 22:07:45 +0200 <kannon> [exa]: gloss?
2022-05-13 22:09:28 +0200 <kannon> oh ok its a package thanks
2022-05-13 22:09:40 +0200gpncarl(~gpncarl@120.244.220.69) (Ping timeout: 248 seconds)
2022-05-13 22:13:31 +0200kannon(~NK@128.32.176.159) (Quit: leaving)
2022-05-13 22:13:38 +0200euandreh(~euandreh@2804:14c:33:9fe5:2165:73d6:1630:f174)
2022-05-13 22:14:51 +0200briandaed(~briandaed@109.95.142.93.r.toneticgroup.pl) (Remote host closed the connection)
2022-05-13 22:16:11 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-05-13 22:21:58 +0200jmd_(~jmdaemon@user/jmdaemon)
2022-05-13 22:21:59 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 240 seconds)
2022-05-13 22:40:19 +0200alp_(~alp@user/alp)
2022-05-13 22:41:44 +0200dostoevsky1(~5c42c5384@user/dostoevsky)
2022-05-13 22:43:30 +0200dostoevsky(~5c42c5384@user/dostoevsky) (Ping timeout: 240 seconds)
2022-05-13 22:43:30 +0200dostoevsky1dostoevsky
2022-05-13 23:04:45 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-05-13 23:11:08 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-05-13 23:12:48 +0200euandreh(~euandreh@2804:14c:33:9fe5:2165:73d6:1630:f174) (Quit: WeeChat 3.5)
2022-05-13 23:22:24 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-05-13 23:22:46 +0200machinedgod(~machinedg@24.105.81.50) (Remote host closed the connection)
2022-05-13 23:23:44 +0200machinedgod(~machinedg@24.105.81.50)
2022-05-13 23:25:27 +0200 <Henson> [exa]: I figured out the strange memory bloat problem that was related to file writing. By progressively chopping out bits of my program, it all comes down to the image capture. Image capture works beautifully if there's no image capture, and vice-versa. The reason seems to be that the image capture, which uses the C++ layer and OS threads, was spawned using "async" instead of "asyncBound"...
2022-05-13 23:25:38 +0200 <Henson> [exa]: when switching from the former to the latter, the problem disappears.
2022-05-13 23:26:03 +0200 <Henson> [exa]: this must be a problem with the GHC runtime or OS or something, which is why it doesn't show up in memory profiling, and why it's been so mysterious to track down.
2022-05-13 23:26:48 +0200 <Henson> [exa]: the tipoff was running it with RTS option "-N1" to force everything to use a single thread, then the problem disappeared even when using "async"
2022-05-13 23:27:27 +0200mikoto-chan(~mikoto-ch@213.177.151.239) (Ping timeout: 240 seconds)
2022-05-13 23:27:59 +0200 <geekosaur> are you sure the C++ layer doesn't itself require a bound thread (look for "thread local storage")?
2022-05-13 23:28:56 +0200 <Henson> [exa]: perhaps, when called with "async" the various C++ camera interaction functions would jump from one OS thread to another. Despite the C++ library being multi-threaded, maybe it requires all camera interactions functions to come from the same thread (I think geekosaur's comment in likely right)
2022-05-13 23:29:01 +0200 <Henson> geekosaur: I think you're probably right
2022-05-13 23:29:37 +0200 <[exa]> Henson: ok spawning random threads into another thread manager _is_ certainly a recipe for a problem. good catch I'd say. :D
2022-05-13 23:29:44 +0200 <Henson> geekosaur: I don't think the camera library manual talks about this, but I don't imagine they anticipated the multithreading jumping from one OS thread to the next.
2022-05-13 23:31:30 +0200euandreh(~euandreh@2804:14c:33:9fe5:2165:73d6:1630:f174)
2022-05-13 23:31:49 +0200 <Henson> so when spawing threads that interact with multi-threaded functions in another language like C or C++, I should always use bound threads, then?
2022-05-13 23:33:22 +0200 <Henson> should Haskell threads using async or fork only be used for Haskell functions or foreign function calls that don't use underlying threading?
2022-05-13 23:34:28 +0200 <sclv> it depends on if the underlying libraries you're binding have thread local storage or not
2022-05-13 23:35:59 +0200MoC(~moc@user/moc) (Quit: Konversation terminated!)
2022-05-13 23:36:06 +0200 <Henson> sclv: so it's probably the thread local storage that's really the problem?
2022-05-13 23:36:51 +0200 <monochrom> asyncBound and withAsyncBound exist.
2022-05-13 23:37:08 +0200michalz(~michalz@185.246.204.104) (Remote host closed the connection)
2022-05-13 23:37:19 +0200 <Henson> monochrom: yes, using asyncBound seems to have fixed my problem
2022-05-13 23:37:35 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-05-13 23:37:45 +0200acidjnk(~acidjnk@p200300d0c7068b9711170b58f5b9d22f.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-05-13 23:37:47 +0200 <monochrom> asyncWithUnmask is temporarily aliased to async due to COVID-19
2022-05-13 23:38:02 +0200 <geekosaur> actually, I would be tempted to assume that if it's communicating woith an external device, all of that communication wants to be on a single thread
2022-05-13 23:38:45 +0200 <geekosaur> one thread should in effect "own" the device
2022-05-13 23:41:02 +0200dostoevsky6(~5c42c5384@user/dostoevsky)
2022-05-13 23:42:10 +0200dostoevsky(~5c42c5384@user/dostoevsky) (Ping timeout: 240 seconds)
2022-05-13 23:42:11 +0200dostoevsky6dostoevsky
2022-05-13 23:48:40 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-05-13 23:50:23 +0200 <Henson> monochrom: hahaha!
2022-05-13 23:50:43 +0200 <Henson> geekosaur: ok
2022-05-13 23:52:28 +0200Tuplanolla(~Tuplanoll@91-159-68-39.elisa-laajakaista.fi) (Quit: Leaving.)
2022-05-13 23:53:39 +0200dostoevsky2(~5c42c5384@user/dostoevsky)
2022-05-13 23:54:39 +0200dostoevsky(~5c42c5384@user/dostoevsky) (Ping timeout: 240 seconds)
2022-05-13 23:54:39 +0200dostoevsky2dostoevsky
2022-05-13 23:57:52 +0200dhil(~dhil@cpc103052-sgyl39-2-0-cust260.18-2.cable.virginm.net)
2022-05-13 23:59:59 +0200 <EvanR> thread local state