2022/07/03

2022-07-03 00:00:37 +0200epolanski(uid312403@id-312403.helmsley.irccloud.com)
2022-07-03 00:01:42 +0200quarkyalice(~alice@50-107-9-193.plcd.ca.frontiernet.net)
2022-07-03 00:01:42 +0200quarkyalice(~alice@50-107-9-193.plcd.ca.frontiernet.net) (Changing host)
2022-07-03 00:01:42 +0200quarkyalice(~alice@user/quarkyalice)
2022-07-03 00:02:20 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2022-07-03 00:03:04 +0200pseigo(~pseigo@node-1w7jr9ye7hx4fsjarlsl1lkjw.ipv6.telus.net)
2022-07-03 00:06:35 +0200yax__(~yax__@user/yax/x-9576643)
2022-07-03 00:09:05 +0200yax__(~yax__@user/yax/x-9576643) (Client Quit)
2022-07-03 00:10:18 +0200motherfsck(~motherfsc@user/motherfsck)
2022-07-03 00:11:46 +0200 <edinwood> i tried hacking away at it, and have isolated the error...
2022-07-03 00:11:46 +0200 <edinwood> https://paste.tomsmeding.com/qFTfCwLz
2022-07-03 00:12:14 +0200 <edinwood> same error, no idea why it rejects the variables, im guessing it somehow fails to do the same calculation twice or something...
2022-07-03 00:13:15 +0200pseigo(~pseigo@node-1w7jr9ye7hx4fsjarlsl1lkjw.ipv6.telus.net) (Changing host)
2022-07-03 00:13:15 +0200pseigo(~pseigo@user/pseigo)
2022-07-03 00:15:35 +0200 <hololeap> hm, how would I do this (using megaparsec): parse a string using `(++) <$> some (satisfy f) <*> many (satisfy g)` , check if that string satisfies another Parsec , branch depending on if that second Parsec parser succeeds
2022-07-03 00:16:35 +0200 <hololeap> maybe some trick using lookAhead
2022-07-03 00:18:40 +0200yax__(~yax__@user/yax/x-9576643)
2022-07-03 00:22:31 +0200 <edinwood> i guess i could try to implement it with typelevel filter
2022-07-03 00:24:18 +0200 <edinwood> hmm, that actually sounds even more complicated
2022-07-03 00:24:57 +0200 <edinwood> i dont want to have to pass somehow defunctionalised type familes as arguments on how to filter the type list
2022-07-03 00:25:55 +0200lisk1n(~liskin@xmonad/liskin) (Quit: lisk1n)
2022-07-03 00:26:12 +0200liskin(~liskin@xmonad/liskin)
2022-07-03 00:27:35 +0200pleo(~pleo@user/pleo) (Quit: quit)
2022-07-03 00:30:04 +0200michalz(~michalz@185.246.204.93) (Remote host closed the connection)
2022-07-03 00:33:50 +0200 <monochrom> hololeap: I am not sure that there is a general solution other than the Turing-tarpit solution.
2022-07-03 00:34:03 +0200atwm(~atwm@81.28.193.19) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-03 00:39:07 +0200 <hololeap> tarpit it is, then
2022-07-03 00:40:34 +0200 <monochrom> You can always do an inner "case runParser xxx yyy of Left err -> empty; Right a -> continue with a"
2022-07-03 00:40:53 +0200ns(~ns@66-90-198-187.dyn.grandenetworks.net) (Ping timeout: 256 seconds)
2022-07-03 00:48:17 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-03 00:48:17 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-07-03 00:48:17 +0200califax(~califax@user/califx) (Write error: Connection reset by peer)
2022-07-03 00:48:17 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Read error: Connection reset by peer)
2022-07-03 00:48:18 +0200winny(~weechat@user/winny) (Read error: Connection reset by peer)
2022-07-03 00:48:36 +0200califax(~califax@user/califx)
2022-07-03 00:48:39 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-07-03 00:49:00 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-03 00:49:07 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2022-07-03 00:49:11 +0200winny(~weechat@user/winny)
2022-07-03 00:53:15 +0200 <hololeap> good thing there's QuickCheck
2022-07-03 00:53:30 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2022-07-03 00:54:01 +0200 <edinwood> its a "complicated human interface that requires detailed input" ?
2022-07-03 00:54:32 +0200TonyStone(~TonyStone@2603-7080-8607-c36a-09e4-c1eb-6da4-2a7c.res6.spectrum.com) (Ping timeout: 255 seconds)
2022-07-03 00:57:13 +0200Guest33(~Guest33@2402:e280:3e30:264:d487:a154:9648:25a)
2022-07-03 00:57:15 +0200 <hololeap> I might as well just show what I'm trying to solve
2022-07-03 00:57:27 +0200 <yax__> mhm
2022-07-03 00:58:28 +0200Guest33(~Guest33@2402:e280:3e30:264:d487:a154:9648:25a) ()
2022-07-03 00:59:02 +0200Tuplanolla(~Tuplanoll@91-159-69-97.elisa-laajakaista.fi) (Quit: Leaving.)
2022-07-03 00:59:28 +0200 <hololeap> trying to write a parser for this: https://projects.gentoo.org/pms/8/pms.html#x1-180003.1.2
2022-07-03 00:59:55 +0200 <hololeap> "and must not end in a hyphen followed by anything matching the version syntax described in section 3.2."
2022-07-03 01:00:13 +0200 <hololeap> is the part that is tricky
2022-07-03 01:00:23 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2022-07-03 01:01:53 +0200 <monochrom> So wait, I can have "_0123" as a package name? :)
2022-07-03 01:02:01 +0200 <hololeap> yessir
2022-07-03 01:02:56 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Remote host closed the connection)
2022-07-03 01:02:59 +0200 <hololeap> so "cat-name/pkg-7-name-0.1.2" needs to be parsed as (Package (Category "cat-name") (PkgName "pkg-7-name") (Just (Version "0.1.2")))
2022-07-03 01:03:25 +0200 <hololeap> but "cat-name/pkg-name-7-0.1.2" needs to fail
2022-07-03 01:04:30 +0200 <hololeap> I tested my more naive parser against all the installed packages on my system, and it passed on every one except "dev-java/log4j-12-api-2.17.2"
2022-07-03 01:04:46 +0200 <hololeap> so now I'm trying to follow the spec
2022-07-03 01:06:05 +0200 <hololeap> btw, I'm using a lib that I wrote that builds off of megaparsec, but is supposed to help compose smaller parsers into larger ones
2022-07-03 01:07:11 +0200TonyStone(~TonyStone@2603-7080-8607-c36a-4c93-2912-ff7c-8bcd.res6.spectrum.com)
2022-07-03 01:09:54 +0200 <hololeap> here's the lib: https://github.com/hololeap/cabal-portage/blob/main/parsable/src/Data/Parsable.hs
2022-07-03 01:10:38 +0200 <hololeap> and here's the abomination I'm trying to write: https://github.com/hololeap/cabal-portage/blob/main/portage-hs/src/Distribution/Portage/Types.hs#L…
2022-07-03 01:10:59 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 01:11:30 +0200xdej(~xdej@quatramaran.salle-s.org) (Ping timeout: 240 seconds)
2022-07-03 01:13:18 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-07-03 01:14:50 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 01:15:00 +0200ns(~ns@66-90-198-187.dyn.grandenetworks.net)
2022-07-03 01:15:29 +0200NaturalNumber(~monadam@137.229.82.64)
2022-07-03 01:15:50 +0200 <edinwood> ah, line 35 was wrong
2022-07-03 01:15:58 +0200yax__(~yax__@user/yax/x-9576643) (Quit: Lost terminal)
2022-07-03 01:16:10 +0200 <ns> hi, I tried the Windows installation commands given on the page shown above. After fixing an error due to the GroupPolicy settings not allowing policy overrides, the command sequence executes but then immediately closes the powershell window (with AFICT no error message). According to the youtube video, its supposed to then allow you to do some
2022-07-03 01:16:11 +0200 <ns> further steps. (Just to confirm, it wasn't installed on C:). I am running Powershell v 5.1 on Windows 10
2022-07-03 01:21:31 +0200ns(~ns@66-90-198-187.dyn.grandenetworks.net) (Quit: Connection closed)
2022-07-03 01:24:25 +0200yax__(~yax__@user/yax/x-9576643)
2022-07-03 01:26:32 +0200NaturalNumber(~monadam@137.229.82.64) (Quit: Leaving)
2022-07-03 01:26:57 +0200NaturalNumber(~monadam@137.229.82.64)
2022-07-03 01:27:17 +0200texasmynsted(~texasmyns@99.96.221.112)
2022-07-03 01:28:58 +0200 <texasmynsted> does anybody happen to know if stache or any of the other haskell templating modules allow for the ability to change the delimiters?
2022-07-03 01:29:11 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 255 seconds)
2022-07-03 01:29:48 +0200 <monochrom> hololeap: I'm back. So this is where people are right to find regexes easier to use (they say "powerful" but that's vague as usual) and subsequently design grammars friendly to regexes but unfriendly to LL(k) parsers.
2022-07-03 01:29:59 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 01:30:12 +0200 <texasmynsted> hmm. looks like stache might allow thos.
2022-07-03 01:30:17 +0200 <texasmynsted> s/thos/this/
2022-07-03 01:30:26 +0200nate4(~nate@98.45.169.16)
2022-07-03 01:30:27 +0200 <texasmynsted> https://hackage.haskell.org/package/stache-2.3.3/src/specification/delimiters.yml
2022-07-03 01:30:35 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-07-03 01:32:00 +0200yax__(~yax__@user/yax/x-9576643) (Quit: Lost terminal)
2022-07-03 01:32:13 +0200 <monochrom> Take for example this toy regex, (0|1)*11001, which captures the most difficult aspect of your problem. There is a "1st part" (0|1)* which pretends to be unrestricted, and then a "2nd part" 11001 which annoyingly is a subset of the 1st part. There is pretty genuine ambiguity there.
2022-07-03 01:32:50 +0200 <texasmynsted> sigh so dislike regexps
2022-07-03 01:33:25 +0200 <monochrom> Someone has to resolve that ambiguity and find out the hard way when the input string is like 110001100011011001 where to split it.
2022-07-03 01:34:38 +0200 <monochrom> A regex engine solves it by either insane backtracking or insane converting an NFA to a DFA (incurs an exponential blowup).
2022-07-03 01:35:33 +0200 <monochrom> That either backtracking or an NFA is involves justifies my saying that there is a pretty genuine ambiguity in the regex example.
2022-07-03 01:36:41 +0200 <monochrom> Now, parsec and megaparsec discourages both backtracking and ambiguity. Although Turing-complete in theory, idiomatic uses are basically LL(1).
2022-07-03 01:37:01 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-07-03 01:37:51 +0200 <monochrom> If you use them, you have to code up by hand the same backtracking and/or lookAhead and/or converting NFA to DFA.
2022-07-03 01:37:55 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 01:38:10 +0200 <monochrom> At this point I might recommend using a regex library instead.
2022-07-03 01:38:12 +0200tcard(~tcard@p2878075-ipngn18701hodogaya.kanagawa.ocn.ne.jp) (Ping timeout: 246 seconds)
2022-07-03 01:39:18 +0200 <monochrom> texasmynsted: This is not dislike of regexes.
2022-07-03 01:39:50 +0200 <texasmynsted> fair enough
2022-07-03 01:39:52 +0200 <hololeap> fair, but I spent a lot of time writing that lib, and I'm very reluctant to switch to a different parsing lib just for this one case
2022-07-03 01:39:53 +0200 <texasmynsted> good luck
2022-07-03 01:40:17 +0200 <monochrom> This is technical analysis and pursuit of truth.
2022-07-03 01:40:54 +0200 <hololeap> but, yeah, I had a feeling this would be easier using regexes
2022-07-03 01:41:34 +0200 <hololeap> luckily, I have a solid test suite set up so I can just hack away until it all passes
2022-07-03 01:42:57 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-07-03 01:43:08 +0200 <edinwood> well i did not expect that would take all day
2022-07-03 01:43:11 +0200tcard(~tcard@p945242-ipngn9701hodogaya.kanagawa.ocn.ne.jp)
2022-07-03 01:43:16 +0200 <edinwood> https://paste.tomsmeding.com/OuDgQBe0
2022-07-03 01:44:04 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 01:44:09 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds)
2022-07-03 01:44:17 +0200 <edinwood> :t scope3 scope3 :: Scope '["hello", "world"]
2022-07-03 01:44:18 +0200 <lambdabot> error:
2022-07-03 01:44:18 +0200 <lambdabot> Not in scope: type constructor or class ‘Scope’
2022-07-03 01:44:27 +0200 <edinwood> oops, sorry lambdabot
2022-07-03 01:44:59 +0200 <monochrom> My regex example can be shoehorned into parsec by something like: many (zero <|> (one `notFollwedBy` one_zero_zero_one) >> one_one_zero_zero_one. This is a lot of backtracking.
2022-07-03 01:45:17 +0200 <monochrom> (And also pretty fragile.)
2022-07-03 01:46:20 +0200 <edinwood> now i can unasign variables! woop! garbage collection enabled
2022-07-03 01:47:05 +0200 <edinwood> hmm, i hadnt planned on what to do next... netflix time!
2022-07-03 01:47:41 +0200 <edinwood> im sure some other version of me will try to do whatever it was that i needed this for again at some point, and now it is done...
2022-07-03 01:48:19 +0200 <edinwood> i thought by this point id be the benefactor of such things previously, but i just have a half a million disorganised .hs files
2022-07-03 01:48:30 +0200 <edinwood> some of which are not eve .hs files!
2022-07-03 01:49:26 +0200 <edinwood> speaking of garbage... im sure its worth mining for code snippets, but i dont have that infrastructure
2022-07-03 01:49:37 +0200quarkyalice(~alice@user/quarkyalice) (Quit: Leaving)
2022-07-03 01:50:07 +0200 <edinwood> maybe some genetic algorithm could be trained to produce insane half finished haskell projects
2022-07-03 01:50:24 +0200 <geekosaur> isn't that microsoft's new thing?
2022-07-03 01:50:32 +0200quarkyalice(~alice@50-107-9-193.plcd.ca.frontiernet.net)
2022-07-03 01:50:32 +0200quarkyalice(~alice@50-107-9-193.plcd.ca.frontiernet.net) (Changing host)
2022-07-03 01:50:32 +0200quarkyalice(~alice@user/quarkyalice)
2022-07-03 01:50:49 +0200 <edinwood> yeah, i was just feeling somewhat "our friends electric" for a second there
2022-07-03 01:51:35 +0200jgeerds(~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 260 seconds)
2022-07-03 01:52:44 +0200 <edinwood> im sure microsoft has plenty of new things mind
2022-07-03 01:52:55 +0200 <hololeap> I knew they would eventually do that when they bought github
2022-07-03 01:53:03 +0200 <geekosaur> copilot
2022-07-03 01:53:10 +0200 <hololeap> "look guys, free code!"
2022-07-03 01:53:17 +0200 <edinwood> where!!?
2022-07-03 01:53:30 +0200 <Bulby[m]> Where?!?
2022-07-03 01:53:31 +0200 <Bulby[m]> dang it
2022-07-03 01:54:30 +0200 <edinwood> over there, next to the free lunch
2022-07-03 01:54:37 +0200zebrag(~chris@user/zebrag)
2022-07-03 01:54:41 +0200 <pragma-> if it's free it's probably defective
2022-07-03 01:54:45 +0200 <edinwood> (i have a half finished algorithm which produces those)
2022-07-03 01:55:20 +0200 <edinwood> pragma- : this offends my religious sensibilities
2022-07-03 01:55:37 +0200hololeaphides the free monads
2022-07-03 01:55:41 +0200 <edinwood> lol
2022-07-03 01:55:55 +0200 <edinwood> i only eat burritos!?
2022-07-03 01:56:02 +0200pragma-slaps a $10,000 price tag on his code to convince corporations that his code is strong
2022-07-03 01:56:35 +0200 <edinwood> freegan
2022-07-03 01:56:49 +0200 <edinwood> its like a big self replicating cyclic machine
2022-07-03 01:57:18 +0200 <edinwood> scottish people shouting "FREEEDAG!!!"
2022-07-03 01:57:55 +0200 <edinwood> i dont evern want to know what a freedom is...
2022-07-03 01:58:50 +0200Guest7586(~Gambino@user/polo)
2022-07-03 01:59:57 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 268 seconds)
2022-07-03 02:00:20 +0200Guest7586(~Gambino@user/polo) (Client Quit)
2022-07-03 02:00:23 +0200ggVGc(~ggVGc@a.lowtech.earth) (Quit: WeeChat 3.3)
2022-07-03 02:00:34 +0200 <edinwood> whats the opposite of a zoid?
2022-07-03 02:00:54 +0200 <monochrom> A domain induced by an algebraic data type is a free domain. Abbreviated FreeDom.
2022-07-03 02:01:19 +0200 <hololeap> a pet rock?
2022-07-03 02:02:20 +0200 <edinwood> why did the titanic sink into the depths of a recursive cycle of inverse abstract strangeness? because it hit a free-co-zoid-berg
2022-07-03 02:02:31 +0200 <edinwood> oh i forgot the futurama reference
2022-07-03 02:03:20 +0200 <monochrom> Is that Dr Strange in The Recursive Cycle of Inverse Abstract Strangeness?
2022-07-03 02:03:54 +0200 <edinwood> "what do you know about the halting problem"
2022-07-03 02:04:38 +0200 <edinwood> i saw some graffiti in Split that said "non stop free croatia"
2022-07-03 02:05:11 +0200 <edinwood> actually i think it was "non stop gay croatia" but someone had crossed out some of the words...
2022-07-03 02:05:32 +0200 <edinwood> i think it originally said "stop gays in croatia" or something horrible
2022-07-03 02:06:06 +0200 <edinwood> i think i need to eat something...
2022-07-03 02:06:09 +0200edinwood(~edinwood@109.249.184.205) (Remote host closed the connection)
2022-07-03 02:06:15 +0200 <monochrom> Ugh Theseus's Graffati
2022-07-03 02:07:18 +0200chomwitt(~chomwitt@2a02:587:dc17:ef00:9439:71c2:4609:e889) (Ping timeout: 264 seconds)
2022-07-03 02:11:20 +0200lainon(~lainon@c-68-46-201-40.hsd1.al.comcast.net) (Quit: Textual IRC Client: www.textualapp.com)
2022-07-03 02:12:59 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-03 02:13:00 +0200NaturalNumber(~monadam@137.229.82.64) (Quit: Leaving)
2022-07-03 02:14:13 +0200califax(~califax@user/califx)
2022-07-03 02:14:46 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-03 02:15:06 +0200califax(~califax@user/califx)
2022-07-03 02:16:36 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Remote host closed the connection)
2022-07-03 02:29:07 +0200gurkenglas(~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) (Ping timeout: 256 seconds)
2022-07-03 02:30:02 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-03 02:30:31 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-07-03 02:31:04 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-07-03 02:33:30 +0200nate4(~nate@98.45.169.16) (Ping timeout: 246 seconds)
2022-07-03 02:35:06 +0200coot(~coot@213.134.190.95)
2022-07-03 02:36:46 +0200edinwood(~edinwood@109.249.184.205)
2022-07-03 02:37:45 +0200 <edinwood> so, one thing thats quite interesting about this thing im working on, is that it shows from something to do with the compositionality of traversals, er
2022-07-03 02:37:59 +0200 <edinwood> i might have to stick with scanners and not traversals
2022-07-03 02:38:16 +0200 <edinwood> yeah, because the applicative at least has to be the same
2022-07-03 02:38:41 +0200 <edinwood> so, from scanner algebra, to some decoupling of the type in mapAccumL
2022-07-03 02:38:51 +0200 <edinwood> which is the same type that appears in fold more or less
2022-07-03 02:38:57 +0200 <edinwood> :t foldl
2022-07-03 02:38:58 +0200 <lambdabot> Foldable t => (b -> a -> b) -> b -> t a -> b
2022-07-03 02:39:03 +0200 <edinwood> :t mapAccumL
2022-07-03 02:39:05 +0200 <lambdabot> Traversable t => (a -> b -> (a, c)) -> a -> t b -> (a, t c)
2022-07-03 02:39:21 +0200 <edinwood> except it has this extra `c' output
2022-07-03 02:39:47 +0200 <edinwood> i need ((a -> b -> a),(a -> b -> c)) for this algegra
2022-07-03 02:40:15 +0200 <edinwood> since it treats the scanning direction, and the output direction as orthogonal
2022-07-03 02:40:34 +0200 <edinwood> the language thing i was working on is for the slice perpendicular to the direction of scanning
2022-07-03 02:40:49 +0200 <edinwood> to express the compositional algebra as a program graph
2022-07-03 02:41:04 +0200 <edinwood> i like how it decouples that type
2022-07-03 02:41:23 +0200 <edinwood> i bet the people that first wrote it were like "is there any reason we shouldnt have that as 2 seperate functions"
2022-07-03 02:41:41 +0200 <edinwood> and "maybe at some point someone will figure out a case where thats useful"
2022-07-03 02:41:47 +0200 <edinwood> which i think this algebra thing does
2022-07-03 02:42:23 +0200 <edinwood> cool huh?
2022-07-03 02:43:20 +0200 <edinwood> i think mapAccumL is overlooked, it has special properties, i hope that building the scanner abstraction around it helps people working on these properties
2022-07-03 02:43:36 +0200shapr(~user@2600:4040:2d31:7100:fe62:9285:d8a9:96db) (Ping timeout: 248 seconds)
2022-07-03 02:43:50 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-03 02:43:51 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2022-07-03 02:45:01 +0200 <edinwood> on a more technical note, stemming from the utility of the scanner instance for a datatype combining a head value with a tail wrapped in a monad (listT "done right")
2022-07-03 02:45:20 +0200 <edinwood> there is an observation that in a very abstract phrasing, a graph is a monadically tailed list
2022-07-03 02:45:41 +0200califax(~califax@user/califx)
2022-07-03 02:45:44 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2022-07-03 02:46:20 +0200 <edinwood> with conventional graphs obtained for a specific monad
2022-07-03 02:46:28 +0200 <edinwood> handling the indexing
2022-07-03 02:46:35 +0200 <edinwood> (all the seti stuff)
2022-07-03 02:47:36 +0200 <edinwood> im not sure if this is too much scientific artistic liberty, but you can almost understand this from the cofree extension of the graph pointer
2022-07-03 02:48:14 +0200 <edinwood> since this is clearly some kind of index wrapping, though here it appears on the head also, this would be reversed by using comandic extract
2022-07-03 02:49:06 +0200 <edinwood> the "index wrapping" of this pointer duplicate being a way to (almost) conceptualise how monadic indexing at the tail leads to a graph
2022-07-03 02:49:39 +0200 <edinwood> obviously this isnt concrete without an actual indexing... which might be why it is glaringly not a definition of a graph, but it should be after that is supplied
2022-07-03 02:49:54 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-07-03 02:50:09 +0200epolanski(uid312403@id-312403.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2022-07-03 02:50:21 +0200 <edinwood> trees for example have this as (Int,Int) pairs of how far up and down you have to go to get to the next value
2022-07-03 02:50:23 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-03 02:50:23 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-03 02:50:23 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2022-07-03 02:50:41 +0200califax(~califax@user/califx)
2022-07-03 02:50:45 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-07-03 02:50:47 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2022-07-03 02:50:48 +0200 <edinwood> collecting those at head deconstruction allows the tree to be reconstructed
2022-07-03 02:50:58 +0200 <edinwood> basically the constructor is taking an index aswell
2022-07-03 02:51:12 +0200 <edinwood> but you can wrap that into the monadic tail, so...
2022-07-03 02:51:42 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 02:53:57 +0200 <edinwood> yeah, i guess you dont detatch all the data, so i think the `up` index you keep at the decontructed value (the head), and the other index stays at the tail
2022-07-03 02:54:46 +0200 <edinwood> you could add a branch to the front of the tree with any depth... so this is supplied with the head
2022-07-03 02:54:55 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-03 02:55:08 +0200 <edinwood> and you could place it at any position up the tail, which should remember where this was when it was detatched
2022-07-03 02:55:18 +0200wagle(~wagle@quassel.wagle.io) (Ping timeout: 264 seconds)
2022-07-03 02:55:22 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-07-03 02:56:05 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds)
2022-07-03 02:57:25 +0200 <edinwood> so its a bunch of values combined with a notional depth, in a list with the tails being paired with a height from this value to the next leftward branch
2022-07-03 02:57:39 +0200 <edinwood> tails paired with a value being the monadic tail as expected
2022-07-03 02:57:51 +0200 <edinwood> trees being graphs and graphs being monadically tailed lists
2022-07-03 02:58:21 +0200 <edinwood> with some subtelty about how the index supplied with the head is incorperated
2022-07-03 03:00:16 +0200 <edinwood> oh, because all the contents are "at some depth", ie because of this monadic tailing, the "list" isnt actually storing the values of type `a', but wrapping them up, which can be factored into the "tail monad"
2022-07-03 03:00:43 +0200 <edinwood> pretty high impact stuff!
2022-07-03 03:02:27 +0200 <edinwood> here, i uploaded it to the preprint server; https://paste.tomsmeding.com/aCVp660n
2022-07-03 03:02:48 +0200 <edinwood> "monadic tails and scanning algebras"
2022-07-03 03:02:59 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-07-03 03:05:26 +0200wagle(~wagle@quassel.wagle.io)
2022-07-03 03:07:07 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 03:07:34 +0200 <edinwood> this might be more readable; https://paste.tomsmeding.com/j0OP5RH2
2022-07-03 03:11:18 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-07-03 03:11:30 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 260 seconds)
2022-07-03 03:11:52 +0200edinwood(~edinwood@109.249.184.205) (Remote host closed the connection)
2022-07-03 03:17:25 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-07-03 03:23:03 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-07-03 03:25:19 +0200BusConscious(~martin@ip5f5bded3.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2022-07-03 03:30:11 +0200zaquest(~notzaques@5.130.79.72) (Remote host closed the connection)
2022-07-03 03:31:48 +0200is7s(~is7s@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18)
2022-07-03 03:35:32 +0200brence(~brence@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18)
2022-07-03 03:35:39 +0200brence(~brence@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18) (Client Quit)
2022-07-03 03:36:04 +0200hasky(~hasky@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18)
2022-07-03 03:36:07 +0200zaquest(~notzaques@5.130.79.72)
2022-07-03 03:36:59 +0200 <hasky> why is foldrM in Data.Foldable implemented in terms of foldl not foldr?
2022-07-03 03:38:53 +0200pragma-(~chaos@user/pragmatic-chaos) (Bye!)
2022-07-03 03:39:12 +0200 <monochrom> One of the ironies of the universe :)
2022-07-03 03:39:30 +0200 <monochrom> If you used foldr, how far would you get?
2022-07-03 03:40:07 +0200 <monochrom> In terms of actual code? Not in terms of "an eye for an eye, an r for an r" armchair philosophy?
2022-07-03 03:40:57 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 03:41:07 +0200 <is7s> `foldrM f e xs = foldr (\x ma -> ma >>= \a -> f x a) (pure e) xs`
2022-07-03 03:42:27 +0200 <hasky> yeah that's what I had in mind
2022-07-03 03:44:26 +0200 <hasky> monochrom what's wrong with that implementation?
2022-07-03 03:44:40 +0200vglfr(~vglfr@46.96.180.13)
2022-07-03 03:46:07 +0200 <Lears> % let foldrM f e xs = foldr (\x ma -> ma >>= \a -> f x a) (pure e) xs in foldrM (\a _ -> print a) () "chars"
2022-07-03 03:46:07 +0200 <yahb2> 's' ; 'r' ; 'a' ; 'h' ; 'c'
2022-07-03 03:50:25 +0200 <monochrom> I see.
2022-07-03 03:50:52 +0200 <dolio> Too slow on your usual answer.
2022-07-03 03:51:03 +0200 <monochrom> I guess it was inspired by foldlM being a foldr.
2022-07-03 03:52:36 +0200 <hasky> foldrM using foldr should potentially fold infinite lists for suffieciently lazy monads, so I'm not sure why the foldl
2022-07-03 03:52:59 +0200motherfsck(~motherfsc@user/motherfsck) (Ping timeout: 256 seconds)
2022-07-03 03:54:54 +0200motherfsck(~motherfsc@user/motherfsck)
2022-07-03 04:02:50 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 260 seconds)
2022-07-03 04:11:58 +0200mmhat(~mmh@p200300f1c70907f9ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.5)
2022-07-03 04:14:30 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds)
2022-07-03 04:16:15 +0200cheater(~Username@user/cheater) (Quit: Killed (KrON (Requested by panasync)))
2022-07-03 04:17:04 +0200cheater(~Username@user/cheater)
2022-07-03 04:17:23 +0200tjmciver(~tmciver@cpe-198-255-176-114.maine.res.rr.com)
2022-07-03 04:20:09 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-03 04:20:39 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Client Quit)
2022-07-03 04:30:48 +0200nate4(~nate@98.45.169.16)
2022-07-03 04:31:34 +0200is7s(~is7s@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18) (Ping timeout: 252 seconds)
2022-07-03 04:31:56 +0200hasky(~hasky@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18) (Ping timeout: 252 seconds)
2022-07-03 04:36:42 +0200nate4(~nate@98.45.169.16) (Ping timeout: 264 seconds)
2022-07-03 04:38:30 +0200td_(~td@muedsl-82-207-238-179.citykom.de) (Ping timeout: 264 seconds)
2022-07-03 04:39:53 +0200td_(~td@muedsl-82-207-238-139.citykom.de)
2022-07-03 05:22:11 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-07-03 05:24:01 +0200raym(~raym@user/raym) (Quit: nvidia driver update, rebooting...)
2022-07-03 05:28:06 +0200raym(~raym@user/raym)
2022-07-03 05:42:51 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 05:55:48 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
2022-07-03 06:07:38 +0200jargon(~jargon@184.101.215.172) (Remote host closed the connection)
2022-07-03 06:10:46 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 06:39:18 +0200quarkyalice(~alice@user/quarkyalice) (Remote host closed the connection)
2022-07-03 06:39:36 +0200quarkyalice(~alice@50-107-9-193.plcd.ca.frontiernet.net)
2022-07-03 06:39:36 +0200quarkyalice(~alice@50-107-9-193.plcd.ca.frontiernet.net) (Changing host)
2022-07-03 06:39:36 +0200quarkyalice(~alice@user/quarkyalice)
2022-07-03 06:44:06 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds)
2022-07-03 06:59:51 +0200vglfr(~vglfr@46.96.180.13) (Ping timeout: 246 seconds)
2022-07-03 07:03:44 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-03 07:11:18 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 240 seconds)
2022-07-03 07:15:15 +0200coot(~coot@213.134.190.95)
2022-07-03 07:20:43 +0200frost(~frost@user/frost)
2022-07-03 07:24:31 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2022-07-03 07:25:34 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds)
2022-07-03 07:29:58 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-07-03 07:31:30 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2022-07-03 07:36:24 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-07-03 07:52:10 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 07:52:44 +0200Sgeo(~Sgeo@user/sgeo)
2022-07-03 08:01:16 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-03 08:01:24 +0200nate4(~nate@98.45.169.16)
2022-07-03 08:07:04 +0200nate4(~nate@98.45.169.16) (Ping timeout: 272 seconds)
2022-07-03 08:07:31 +0200pseigo(~pseigo@user/pseigo) (Quit: left)
2022-07-03 08:07:42 +0200pseigo(~pseigo@d108-173-20-33.abhsia.telus.net)
2022-07-03 08:07:42 +0200pseigo(~pseigo@d108-173-20-33.abhsia.telus.net) (Changing host)
2022-07-03 08:07:42 +0200pseigo(~pseigo@user/pseigo)
2022-07-03 08:08:28 +0200mbuf(~Shakthi@122.164.11.151)
2022-07-03 08:09:03 +0200Unicorn_Princess(~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Remote host closed the connection)
2022-07-03 08:11:14 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-07-03 08:14:49 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 08:21:30 +0200lisbeths(uid135845@id-135845.lymington.irccloud.com)
2022-07-03 08:24:38 +0200acidjnk(~acidjnk@dynamic-046-114-174-017.46.114.pool.telefonica.de)
2022-07-03 08:29:18 +0200TonyStone(~TonyStone@2603-7080-8607-c36a-4c93-2912-ff7c-8bcd.res6.spectrum.com) (Ping timeout: 240 seconds)
2022-07-03 08:29:42 +0200TonyStone(~TonyStone@2603-7080-8607-c36a-4c93-2912-ff7c-8bcd.res6.spectrum.com)
2022-07-03 08:29:54 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-07-03 08:36:29 +0200atwm(~atwm@81.28.193.19)
2022-07-03 08:37:09 +0200coot(~coot@213.134.190.95)
2022-07-03 08:37:44 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-03 08:40:58 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 08:41:30 +0200atwm(~atwm@81.28.193.19) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-03 08:43:41 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-07-03 08:45:36 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 08:53:12 +0200quarkyalice_(~alice@user/quarkyalice/x-8092822)
2022-07-03 08:55:35 +0200quarkyalice(~alice@user/quarkyalice) (Ping timeout: 256 seconds)
2022-07-03 09:00:31 +0200texasmynsted(~texasmyns@99.96.221.112) (WeeChat 3.5)
2022-07-03 09:01:37 +0200quarkyalice__(~alice@172.79.72.144)
2022-07-03 09:04:25 +0200quarkyalice_(~alice@user/quarkyalice/x-8092822) (Ping timeout: 260 seconds)
2022-07-03 09:05:20 +0200yw8(~yw@2403:18c0:3:24c::)
2022-07-03 09:09:11 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-03 09:09:21 +0200coot(~coot@213.134.190.95) (Ping timeout: 246 seconds)
2022-07-03 09:10:54 +0200gmg(~user@user/gehmehgeh)
2022-07-03 09:11:05 +0200vglfr(~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer)
2022-07-03 09:11:15 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-07-03 09:15:25 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-07-03 09:17:21 +0200gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2022-07-03 09:18:05 +0200gmg(~user@user/gehmehgeh)
2022-07-03 09:23:21 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 09:24:45 +0200kraftwerk28(~kraftwerk@178.62.210.83)
2022-07-03 09:28:08 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 272 seconds)
2022-07-03 09:30:09 +0200acidjnk(~acidjnk@dynamic-046-114-174-017.46.114.pool.telefonica.de) (Ping timeout: 256 seconds)
2022-07-03 09:31:23 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-07-03 09:37:15 +0200kraftwerk28(~kraftwerk@178.62.210.83) (Quit: ZNC 1.8.2 - https://znc.in)
2022-07-03 09:42:19 +0200atwm(~atwm@81.28.193.19)
2022-07-03 09:43:19 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-07-03 09:49:13 +0200kraftwerk28(~kraftwerk@178.62.210.83)
2022-07-03 09:49:30 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 09:51:46 +0200yw8(~yw@2403:18c0:3:24c::) (Quit: Client closed)
2022-07-03 09:52:18 +0200kraftwerk28(~kraftwerk@178.62.210.83) (Client Quit)
2022-07-03 09:53:28 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-07-03 09:55:00 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 09:58:13 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-07-03 09:58:14 +0200kraftwerk28(~kraftwerk@178.62.210.83)
2022-07-03 09:58:46 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 10:00:39 +0200Tuplanolla(~Tuplanoll@91-159-69-97.elisa-laajakaista.fi)
2022-07-03 10:05:31 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 10:07:12 +0200vandit(~vandit@178-164-208-193.pool.digikabel.hu)
2022-07-03 10:12:33 +0200coot(~coot@213.134.190.95)
2022-07-03 10:16:58 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-07-03 10:22:36 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-07-03 10:23:28 +0200christiansen(~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
2022-07-03 10:34:17 +0200_ht(~quassel@231-169-21-31.ftth.glasoperator.nl)
2022-07-03 10:44:45 +0200adrazalan_(~adrazalan@42.191.189.65) (Ping timeout: 260 seconds)
2022-07-03 10:46:03 +0200mc47(~mc47@xmonad/TheMC47)
2022-07-03 10:47:06 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 10:48:06 +0200jao(~jao@92.233.85.247)
2022-07-03 10:51:18 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 240 seconds)
2022-07-03 10:53:39 +0200mmhat(~mmh@p200300f1c70907f9ee086bfffe095315.dip0.t-ipconnect.de)
2022-07-03 10:57:39 +0200gurkenglas(~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de)
2022-07-03 11:09:57 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-07-03 11:11:13 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-07-03 11:11:29 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 11:11:58 +0200jao(~jao@92.233.85.247) (Ping timeout: 240 seconds)
2022-07-03 11:16:17 +0200tzh_(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2022-07-03 11:23:20 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-07-03 11:23:30 +0200MajorBiscuit(~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net)
2022-07-03 11:30:32 +0200chomwitt(~chomwitt@2a02:587:dc17:ef00:fd52:a6f3:ef09:f22e)
2022-07-03 11:33:10 +0200arahael(~arahael@121-44-28-164.tpgi.com.au) (Ping timeout: 240 seconds)
2022-07-03 11:39:55 +0200vandit(~vandit@178-164-208-193.pool.digikabel.hu) (Ping timeout: 256 seconds)
2022-07-03 11:41:21 +0200vandit(~vandit@178-164-206-97.pool.digikabel.hu)
2022-07-03 11:43:19 +0200zer0bitz(~zer0bitz@2001:2003:f748:2000:c429:cbdc:14b0:bcca) (Ping timeout: 268 seconds)
2022-07-03 11:46:18 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 264 seconds)
2022-07-03 11:46:58 +0200dknite(~dknite@49.37.45.188)
2022-07-03 11:47:54 +0200dknite(~dknite@49.37.45.188) (Client Quit)
2022-07-03 11:48:25 +0200adrazalan_(~adrazalan@42.191.189.65)
2022-07-03 11:48:50 +0200mmhat(~mmh@p200300f1c70907f9ee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 255 seconds)
2022-07-03 11:48:52 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2022-07-03 11:49:20 +0200arahael(~arahael@123-243-106-34.tpgi.com.au)
2022-07-03 11:49:56 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 11:51:12 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 276 seconds)
2022-07-03 11:52:31 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 11:54:33 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
2022-07-03 11:55:26 +0200cyanide3dinner(~cyanide4d@110.227.171.252)
2022-07-03 12:02:10 +0200mmhat(~mmh@p200300f1c709078dee086bfffe095315.dip0.t-ipconnect.de)
2022-07-03 12:03:04 +0200lisbeths(uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-07-03 12:03:48 +0200nate4(~nate@98.45.169.16)
2022-07-03 12:07:31 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 12:08:45 +0200nate4(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-07-03 12:09:05 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 12:11:20 +0200myme1(~myme@2a01:799:d5a:cd00:af:3abd:b96f:39bf) (Ping timeout: 255 seconds)
2022-07-03 12:11:30 +0200inversed(~inversed@05412f44.skybroadband.com) (Ping timeout: 264 seconds)
2022-07-03 12:12:06 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 264 seconds)
2022-07-03 12:12:10 +0200myme1(~myme@2a01:799:d5a:cd00:b426:d25c:a4ca:786f)
2022-07-03 12:12:22 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-07-03 12:14:30 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Ping timeout: 264 seconds)
2022-07-03 12:14:39 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2022-07-03 12:15:50 +0200Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (Ping timeout: 255 seconds)
2022-07-03 12:16:17 +0200sympt(~sympt@user/sympt) (Ping timeout: 255 seconds)
2022-07-03 12:16:52 +0200dextaa(~DV@user/dextaa)
2022-07-03 12:17:57 +0200sympt(~sympt@user/sympt)
2022-07-03 12:18:27 +0200Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net)
2022-07-03 12:20:22 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2022-07-03 12:22:36 +0200dextaa(~DV@user/dextaa)
2022-07-03 12:22:54 +0200is7s(~is7s@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18)
2022-07-03 12:26:24 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 246 seconds)
2022-07-03 12:26:50 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp) (Ping timeout: 240 seconds)
2022-07-03 12:26:55 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 12:31:24 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 12:40:23 +0200MajorBiscuit(~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net) (Quit: WeeChat 3.5)
2022-07-03 12:43:42 +0200epolanski(uid312403@id-312403.helmsley.irccloud.com)
2022-07-03 12:45:29 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-07-03 12:46:10 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds)
2022-07-03 12:47:51 +0200yax__(~yax__@user/yax/x-9576643)
2022-07-03 12:48:18 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 12:49:51 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 12:50:48 +0200Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (Ping timeout: 272 seconds)
2022-07-03 12:51:39 +0200pseigo(~pseigo@user/pseigo) (Ping timeout: 276 seconds)
2022-07-03 12:53:31 +0200atwm(~atwm@81.28.193.19) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-03 12:54:03 +0200yax__(~yax__@user/yax/x-9576643) (Quit: Lost terminal)
2022-07-03 12:55:20 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Ping timeout: 248 seconds)
2022-07-03 12:55:36 +0200yax___(~yax__@user/yax/x-9576643)
2022-07-03 12:57:15 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Remote host closed the connection)
2022-07-03 12:57:39 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 12:58:55 +0200pseigo(~pseigo@d108-173-20-33.abhsia.telus.net)
2022-07-03 12:58:55 +0200pseigo(~pseigo@d108-173-20-33.abhsia.telus.net) (Changing host)
2022-07-03 12:58:55 +0200pseigo(~pseigo@user/pseigo)
2022-07-03 13:01:40 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 13:03:06 +0200Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net)
2022-07-03 13:03:58 +0200atwm(~atwm@81.28.193.19)
2022-07-03 13:10:54 +0200Vajb(~Vajb@2001:999:485:209:bc32:5580:b7a6:e68b) (Ping timeout: 264 seconds)
2022-07-03 13:11:47 +0200Vajb(~Vajb@2001:999:58c:b683:1e3e:e86f:8cdc:e10)
2022-07-03 13:15:04 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 248 seconds)
2022-07-03 13:17:01 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 13:19:02 +0200coot(~coot@213.134.190.95)
2022-07-03 13:19:28 +0200fockerize(~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2022-07-03 13:21:36 +0200xff0x(~xff0x@2405:6580:b080:900:b378:cb37:671f:64f7)
2022-07-03 13:25:12 +0200shriekingnoise(~shrieking@201.212.175.181) (Quit: Quit)
2022-07-03 13:33:45 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-07-03 13:33:57 +0200phma(phma@2001:5b0:2172:dd98:ab22:b4c4:28ae:1777) (Read error: Connection reset by peer)
2022-07-03 13:34:46 +0200phma(~phma@host-67-44-208-148.hnremote.net)
2022-07-03 13:34:58 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
2022-07-03 13:40:05 +0200 <[exa]> language corner: what would you call a variant of `satisfy` from parsecs if it would act on multiple characters, kinda like takeWhile but with state? (takeWhile is apparently called `munch` in parsecs)
2022-07-03 13:40:27 +0200 <[exa]> I rejected "satisfys" and "satisfies" for english reasons.
2022-07-03 13:40:46 +0200 <Franciman> satisfyMany
2022-07-03 13:41:27 +0200 <Franciman> or, satisfySeq
2022-07-03 13:41:39 +0200 <Franciman> stringSatisfy
2022-07-03 13:48:55 +0200 <[exa]> hm yeah I think satisfySeq sounds best
2022-07-03 13:50:57 +0200 <[exa]> hm would there be a canonical form for "takeWhile with state" function that I could pass in there? currently I'm at something like
2022-07-03 13:51:42 +0200 <[exa]> satisfySeq :: Stream s m tok => ([tok] -> Int) -> ParsecT s u m [tok]
2022-07-03 13:52:24 +0200pseigo(~pseigo@user/pseigo) (Ping timeout: 248 seconds)
2022-07-03 13:53:10 +0200fockerize(~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds)
2022-07-03 13:56:00 +0200 <AndreasK> Isnh't that just "tokens"
2022-07-03 13:57:46 +0200 <[exa]> almost, tokens works on Eq, I'd like to have something that can scan in the tokenstream itself
2022-07-03 13:58:02 +0200 <[exa]> aaah maybe `scan` would be a good name. :D
2022-07-03 13:58:33 +0200 <[exa]> aaand turns out attoparsec has precisely that
2022-07-03 13:58:57 +0200 <[exa]> thanks all for consultation! :]
2022-07-03 14:00:02 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-07-03 14:00:33 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-07-03 14:01:52 +0200sagax(~sagax_nb@user/sagax) (Remote host closed the connection)
2022-07-03 14:11:53 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 14:15:30 +0200nate4(~nate@98.45.169.16)
2022-07-03 14:16:30 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 260 seconds)
2022-07-03 14:20:17 +0200nate4(~nate@98.45.169.16) (Ping timeout: 256 seconds)
2022-07-03 14:20:48 +0200frost(~frost@user/frost) (Ping timeout: 252 seconds)
2022-07-03 14:23:00 +0200is7s(~is7s@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18) (Ping timeout: 252 seconds)
2022-07-03 14:31:08 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-07-03 14:31:08 +0200alexhandy(~trace@user/trace) (Read error: Connection reset by peer)
2022-07-03 14:31:18 +0200alexhandy(~trace@user/trace)
2022-07-03 14:32:57 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net)
2022-07-03 14:32:59 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net) (Client Quit)
2022-07-03 14:33:20 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net)
2022-07-03 14:34:29 +0200tfeb(~tfb@88.98.95.237)
2022-07-03 14:36:56 +0200jao(~jao@92.40.194.204.threembb.co.uk)
2022-07-03 14:38:48 +0200tfeb(~tfb@88.98.95.237) (Client Quit)
2022-07-03 14:38:54 +0200mmhat(~mmh@p200300f1c709078dee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.5)
2022-07-03 14:38:58 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net) (Ping timeout: 240 seconds)
2022-07-03 14:41:13 +0200 <yax___> why isnt there a generic split :: (Char -> Bool) -> String -> [String] function???
2022-07-03 14:41:19 +0200 <yax___> words isnt specific enough
2022-07-03 14:43:43 +0200 <yax___> * general enough
2022-07-03 14:44:52 +0200xff0x(~xff0x@2405:6580:b080:900:b378:cb37:671f:64f7) (Ping timeout: 260 seconds)
2022-07-03 14:45:14 +0200 <geekosaur> :t splitOn
2022-07-03 14:45:16 +0200 <lambdabot> Eq a => [a] -> [a] -> [[a]]
2022-07-03 14:46:04 +0200 <hpc> @src splitOn
2022-07-03 14:46:04 +0200 <lambdabot> Source not found. I've seen penguins that can type better than that.
2022-07-03 14:46:06 +0200 <geekosaur> Data.List.Split (from the split package) provides a bunch of splitters
2022-07-03 14:46:31 +0200 <hpc> ah, there we go - https://hackage.haskell.org/package/split-0.2.3.4/docs/Data-List-Split.html#v:splitWhen
2022-07-03 14:46:48 +0200xff0x(~xff0x@b133147.ppp.asahi-net.or.jp)
2022-07-03 14:47:10 +0200sagax(~sagax_nb@user/sagax)
2022-07-03 14:48:03 +0200 <geekosaur[m]> And otherwise I think you want break
2022-07-03 14:51:46 +0200vandit(~vandit@178-164-206-97.pool.digikabel.hu) (Ping timeout: 272 seconds)
2022-07-03 14:53:02 +0200vandit(~vandit@87-97-25-198.pool.digikabel.hu)
2022-07-03 14:53:51 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 14:55:38 +0200MajorBiscuit(~MajorBisc@2a02-a461-129d-1-6d4c-38a4-18b7-4b48.fixed6.kpn.net)
2022-07-03 14:57:50 +0200yax___(~yax__@user/yax/x-9576643) (Quit: Lost terminal)
2022-07-03 14:58:18 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 264 seconds)
2022-07-03 15:00:12 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 15:04:55 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-07-03 15:05:44 +0200dut(~dut@user/dut)
2022-07-03 15:07:56 +0200pleo(~pleo@user/pleo)
2022-07-03 15:11:24 +0200MajorBiscuit(~MajorBisc@2a02-a461-129d-1-6d4c-38a4-18b7-4b48.fixed6.kpn.net) (Ping timeout: 272 seconds)
2022-07-03 15:13:06 +0200dut(~dut@user/dut) (Quit: Leaving)
2022-07-03 15:13:14 +0200Haskelytic(~Haskelyti@118.179.211.17)
2022-07-03 15:13:19 +0200machinedgod(~machinedg@207.228.78.21)
2022-07-03 15:15:50 +0200christiansen(~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 240 seconds)
2022-07-03 15:16:09 +0200jao(~jao@92.40.194.204.threembb.co.uk) (Ping timeout: 246 seconds)
2022-07-03 15:17:06 +0200sagax(~sagax_nb@user/sagax) (Remote host closed the connection)
2022-07-03 15:25:02 +0200gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2022-07-03 15:25:21 +0200gentauro(~gentauro@user/gentauro)
2022-07-03 15:25:49 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-03 15:26:45 +0200troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset)
2022-07-03 15:28:12 +0200troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-07-03 15:29:55 +0200cyanide3dinner(~cyanide4d@110.227.171.252) (Remote host closed the connection)
2022-07-03 15:31:10 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 15:32:32 +0200sagax(~sagax_nb@213.138.71.146)
2022-07-03 15:32:32 +0200sagax(~sagax_nb@213.138.71.146) (Changing host)
2022-07-03 15:32:32 +0200sagax(~sagax_nb@user/sagax)
2022-07-03 15:35:28 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 15:37:40 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
2022-07-03 15:39:55 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 260 seconds)
2022-07-03 15:45:03 +0200slaydr_(~slaydr@75.164.63.238)
2022-07-03 15:47:30 +0200TheCoffeMaker(~TheCoffeM@user/thecoffemaker) (Ping timeout: 260 seconds)
2022-07-03 15:48:22 +0200ubert(~Thunderbi@p200300ecdf0da52bcc3d0e0decabd44f.dip0.t-ipconnect.de)
2022-07-03 15:48:49 +0200TheCoffeMaker(~TheCoffeM@user/thecoffemaker)
2022-07-03 15:49:15 +0200slaydr(~slaydr@75.164.63.238) (Ping timeout: 260 seconds)
2022-07-03 16:02:18 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-07-03 16:05:30 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds)
2022-07-03 16:14:03 +0200rtypo_bot(~rtypo_bot@user/rtypo-bot/x-3951806)
2022-07-03 16:14:13 +0200rtypo_bot(~rtypo_bot@user/rtypo-bot/x-3951806) ()
2022-07-03 16:16:33 +0200nate4(~nate@98.45.169.16)
2022-07-03 16:18:23 +0200machinedgod(~machinedg@207.228.78.21) (Ping timeout: 255 seconds)
2022-07-03 16:21:10 +0200yax___(~yax__@user/yax/x-9576643)
2022-07-03 16:21:11 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-03 16:21:38 +0200nate4(~nate@98.45.169.16) (Ping timeout: 240 seconds)
2022-07-03 16:28:04 +0200ubert(~Thunderbi@p200300ecdf0da52bcc3d0e0decabd44f.dip0.t-ipconnect.de) (Quit: ubert)
2022-07-03 16:29:19 +0200ubert(~Thunderbi@p200300ecdf0da52b20236baac8915ca7.dip0.t-ipconnect.de)
2022-07-03 16:31:05 +0200atwm(~atwm@81.28.193.19) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-03 16:32:17 +0200atwm(~atwm@81.28.193.19)
2022-07-03 16:33:10 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Quit: WeeChat 3.5)
2022-07-03 16:34:53 +0200tfeb(~tfb@88.98.95.237)
2022-07-03 16:37:08 +0200causal(~user@50.35.83.177) (Quit: WeeChat 3.5)
2022-07-03 16:38:10 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 16:38:35 +0200tfeb(~tfb@88.98.95.237) (Client Quit)
2022-07-03 16:41:18 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-07-03 16:42:32 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 248 seconds)
2022-07-03 16:45:00 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-07-03 16:46:47 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-03 16:50:03 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-07-03 16:51:28 +0200atwm(~atwm@81.28.193.19) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-03 16:52:32 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-03 16:58:28 +0200Haskelytic(~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds)
2022-07-03 17:04:04 +0200acidjnk(~acidjnk@dynamic-046-114-168-149.46.114.pool.telefonica.de)
2022-07-03 17:07:38 +0200adrazalan_(~adrazalan@42.191.189.65) (Ping timeout: 240 seconds)
2022-07-03 17:08:41 +0200ubert(~Thunderbi@p200300ecdf0da52b20236baac8915ca7.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
2022-07-03 17:08:57 +0200ubert(~Thunderbi@p200300ecdf0da52b2d2cedff9ece6a64.dip0.t-ipconnect.de)
2022-07-03 17:16:42 +0200 <hololeap> ok, so module A exports `data Version` and `data VersionNum`, module A.Internal exports `newtype FauxVersion = FauxVersion Version` and `newtype FauxVersionNum = FauxVersionNum VersionNum`
2022-07-03 17:17:21 +0200 <hololeap> module A needs to use the Faux newtype wrappers internally. how do I break the cycle with a .hs-boot file?
2022-07-03 17:17:55 +0200 <hololeap> ultimately, I need the Faux versions both in the lib and the test suite, but I don't want them exposed
2022-07-03 17:18:50 +0200 <hololeap> this is using cabal, bth
2022-07-03 17:18:53 +0200 <hololeap> *btw
2022-07-03 17:19:29 +0200Haskelytic(~Haskelyti@37.111.207.142)
2022-07-03 17:21:10 +0200acidjnk_new(~acidjnk@dynamic-046-114-168-149.46.114.pool.telefonica.de)
2022-07-03 17:21:25 +0200 <hololeap> oh, I know what to do... define the Version and VersionNum types in the internal module, then re-export them in module A
2022-07-03 17:21:30 +0200acidjnk(~acidjnk@dynamic-046-114-168-149.46.114.pool.telefonica.de) (Ping timeout: 240 seconds)
2022-07-03 17:22:04 +0200 <hololeap> unless there is another trick I don't know of. I don't see a lot of examples of how to use .hs-boot files online
2022-07-03 17:22:06 +0200 <geekosaur> that was my thought, what you described seemed kinda backwards to me
2022-07-03 17:22:22 +0200 <geekosaur> no, .hs-boot files are mostly avoided, for good reason
2022-07-03 17:22:49 +0200 <geekosaur> most of the examples are in base
2022-07-03 17:27:50 +0200vandit(~vandit@87-97-25-198.pool.digikabel.hu) (Ping timeout: 260 seconds)
2022-07-03 17:29:07 +0200vandit(~vandit@94-21-233-73.pool.digikabel.hu)
2022-07-03 17:30:55 +0200Kevin578(~Kevin578@pool-173-76-179-30.bstnma.fios.verizon.net)
2022-07-03 17:30:55 +0200shapr(~user@2600:4040:2d31:7100:a531:2b41:3f53:e202)
2022-07-03 17:30:55 +0200alexhandy(~trace@user/trace) (Read error: Connection reset by peer)
2022-07-03 17:31:07 +0200alexhandy(~trace@user/trace)
2022-07-03 17:33:19 +0200alp(~alp@user/alp)
2022-07-03 17:35:29 +0200christiansen(~christian@83-95-137-75-dynamic.dk.customer.tdc.net)
2022-07-03 17:36:15 +0200 <maerwald> hololeap: they're quite straight forward
2022-07-03 17:37:45 +0200 <maerwald> think of them as a way to inline functions... the stuff you move to hs boot file marks them inlinable... then when you import with {-# SOURCE #-} pragma, they get inlined without depending on the module they're from
2022-07-03 17:38:23 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net)
2022-07-03 17:39:22 +0200`2jt(~jtomas@141.red-88-17-65.dynamicip.rima-tde.net)
2022-07-03 17:39:31 +0200funsafe(~funsafe@2601:1c1:4200:9ac:84cb:185c:2a3c:c92c) (Ping timeout: 244 seconds)
2022-07-03 17:40:09 +0200 <Haskelytic> fellas, what kind of background/experience would you need to get a Haskell dev role?
2022-07-03 17:40:24 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 17:42:34 +0200whatsupboy(~whatsupbo@user/scobydoo)
2022-07-03 17:42:38 +0200acidjnk_new(~acidjnk@dynamic-046-114-168-149.46.114.pool.telefonica.de) (Ping timeout: 240 seconds)
2022-07-03 17:43:00 +0200 <maerwald> Haskelytic: major in maths, 10 years of research in category theory, you've written at least 2 functional compilers and rejected offers from Google and Facebook
2022-07-03 17:44:15 +0200geekosaur*eyeroll*
2022-07-03 17:44:16 +0200 <darkling> I thought the first two parts were just the requirement to be able to write FizzBuzz? :)
2022-07-03 17:44:23 +0200 <geekosaur> although I've at least got that last
2022-07-03 17:44:34 +0200 <geekosaur> decided I didn't want the stress
2022-07-03 17:44:39 +0200 <maerwald> geekosaur: me too xD
2022-07-03 17:45:06 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 264 seconds)
2022-07-03 17:45:10 +0200 <Haskelytic> maerwald: I see I have got another decade of hair loss to go then :)
2022-07-03 17:46:07 +0200 <whatsupboy> rejecting offers from google and facebook is achievement? I am just in and don't know what is that about
2022-07-03 17:47:12 +0200alp(~alp@user/alp) (Ping timeout: 272 seconds)
2022-07-03 17:50:50 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds)
2022-07-03 17:51:26 +0200acidjnk_new(~acidjnk@dynamic-046-114-168-149.46.114.pool.telefonica.de)
2022-07-03 17:51:54 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 17:51:54 +0200econo(uid147250@user/econo)
2022-07-03 17:53:11 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 17:53:21 +0200epolanski(uid312403@id-312403.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2022-07-03 18:00:02 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-07-03 18:00:02 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-07-03 18:00:12 +0200jean-paul[m](~jean-paul@2001:470:69fc:105::d1ab) (Quit: You have been kicked for being idle)
2022-07-03 18:00:18 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 246 seconds)
2022-07-03 18:00:37 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-03 18:00:43 +0200pleo(~pleo@user/pleo) (Ping timeout: 268 seconds)
2022-07-03 18:01:01 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-03 18:01:30 +0200yosef`(~yosef`@user/yosef/x-2947716)
2022-07-03 18:01:54 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 18:02:25 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
2022-07-03 18:02:31 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 18:02:53 +0200 <geekosaur> whatsupboy, if they're interested then you've done enough to come to their attention
2022-07-03 18:02:59 +0200 <geekosaur> which is an achievement
2022-07-03 18:03:51 +0200 <maerwald> basically marketing yourself
2022-07-03 18:03:53 +0200 <geekosaur> especially for someone like me who's (a) self-taught (b) been around for long enough that they can make a good guess as to my age, and normally they'd ignore oldsters
2022-07-03 18:04:10 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-07-03 18:04:28 +0200 <geekosaur> they want kids that will work for less 🙂
2022-07-03 18:04:53 +0200 <maerwald> geekosaur: time to go into middle management... oh wait, they're all being laid off right now :p
2022-07-03 18:04:58 +0200pseigo(~pseigo@d108-173-20-33.abhsia.telus.net)
2022-07-03 18:04:59 +0200pseigo(~pseigo@d108-173-20-33.abhsia.telus.net) (Changing host)
2022-07-03 18:04:59 +0200pseigo(~pseigo@user/pseigo)
2022-07-03 18:05:33 +0200 <monochrom> Time to go to upper management...
2022-07-03 18:06:12 +0200 <monochrom> Right? That joke about a village hiring a security guard.
2022-07-03 18:07:31 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
2022-07-03 18:07:57 +0200 <monochrom> The village needed a security guard so they hired one. Then they hired an accountant to take care of the payroll. Then they hired a manager to organize those two. Then the manager wanted to cut cost so they laid off the accountant and the security guard.
2022-07-03 18:08:34 +0200mmhat(~mmh@p200300f1c709078dee086bfffe095315.dip0.t-ipconnect.de)
2022-07-03 18:08:55 +0200 <Haskelytic> XD
2022-07-03 18:09:03 +0200 <Haskelytic> Never heard that joke
2022-07-03 18:09:04 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Quit: WeeChat 3.5)
2022-07-03 18:09:31 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-07-03 18:09:45 +0200 <maerwald> lolz
2022-07-03 18:09:57 +0200 <darkling> Nor have I... but I might have lived through it.
2022-07-03 18:10:12 +0200`2jt(~jtomas@141.red-88-17-65.dynamicip.rima-tde.net) (Ping timeout: 260 seconds)
2022-07-03 18:10:12 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-03 18:11:24 +0200yosef`(~yosef`@user/yosef/x-2947716) (Quit: Client closed)
2022-07-03 18:13:39 +0200pleo(~pleo@user/pleo)
2022-07-03 18:14:29 +0200atwm(~atwm@81.28.193.19)
2022-07-03 18:18:51 +0200acidjnk_new(~acidjnk@dynamic-046-114-168-149.46.114.pool.telefonica.de) (Ping timeout: 246 seconds)
2022-07-03 18:20:08 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-07-03 18:21:54 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 18:25:14 +0200 <whatsupboy> geekosaur: I mean having math major, 10years research on anything itself is achievement...and people hype google and facebook Irejecting offers from them is best thing but not achievement in my opinion
2022-07-03 18:26:10 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Remote host closed the connection)
2022-07-03 18:27:12 +0200Sgeo(~Sgeo@user/sgeo)
2022-07-03 18:30:10 +0200 <Haskelytic> Man, the haskell book really loves to confuse the shit out of you
2022-07-03 18:30:37 +0200 <Haskelytic> chapter on monads starts with saying that `return` and `>>` aren't the special part (so implicitly suggesting `>>=` is the sauce)
2022-07-03 18:30:55 +0200 <Haskelytic> but then a few paragraphs later contradicting that by saying, it's also not `>>=` that's the special sauce
2022-07-03 18:30:58 +0200 <Haskelytic> wut
2022-07-03 18:31:31 +0200 <Haskelytic> hot take: people in tech don't know how to write
2022-07-03 18:31:53 +0200 <Haskelytic> that includes me :)
2022-07-03 18:32:15 +0200mbuf(~Shakthi@122.164.11.151) (Ping timeout: 276 seconds)
2022-07-03 18:32:18 +0200 <[exa]> writing is hard
2022-07-03 18:32:23 +0200 <yushyin> maybe it's pure/join :P
2022-07-03 18:32:46 +0200 <[exa]> technically nothing is special about monads
2022-07-03 18:33:22 +0200 <sm> try another book ?
2022-07-03 18:34:42 +0200pseigo(~pseigo@user/pseigo) (Ping timeout: 272 seconds)
2022-07-03 18:36:02 +0200funsafe(~funsafe@2601:1c1:4200:9ac:84cb:185c:2a3c:c92c)
2022-07-03 18:36:25 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-07-03 18:36:29 +0200mbuf(~Shakthi@122.164.12.46)
2022-07-03 18:36:30 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
2022-07-03 18:37:36 +0200quarkyalice(~alice@172.79.72.144)
2022-07-03 18:37:36 +0200quarkyalice(~alice@172.79.72.144) (Changing host)
2022-07-03 18:37:36 +0200quarkyalice(~alice@user/quarkyalice)
2022-07-03 18:38:01 +0200quarkyalice__(~alice@172.79.72.144) (Read error: Connection reset by peer)
2022-07-03 18:38:13 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-03 18:40:49 +0200 <Haskelytic> I just skimmed the word soup and went to examples and exercises
2022-07-03 18:40:54 +0200 <Haskelytic> only way to learn it anyways :)
2022-07-03 18:44:17 +0200 <Haskelytic> on a side note, I'm just blown away sometimes by how uniform the term-level and type-level syntaxes are in Haskell
2022-07-03 18:44:40 +0200 <Haskelytic> e.g. type application vs function application
2022-07-03 18:44:45 +0200 <Haskelytic> where did this idea come from?
2022-07-03 18:44:54 +0200 <darchitect> The HaskellBook is the best IMHO, but the thing is you shoulddn't go through it religiously, if you don't get a concept -> go to youtube see some stuff visualized and then come back to it. If you still don't get it, do a couple of exercises and see why a given concept is useful. I am at the end of the Monad's chapter myself and am loving it this far, because it covers everything (including
2022-07-03 18:44:56 +0200 <darchitect> QuickCheck, building of projects, etc..)
2022-07-03 18:45:38 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 240 seconds)
2022-07-03 18:46:43 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 18:48:11 +0200 <Haskelytic> darchitect: yeah, it's not a bad book per se
2022-07-03 18:48:15 +0200 <Haskelytic> I just really really hate the prose
2022-07-03 18:48:38 +0200 <sm> @where htac is a lighter intro
2022-07-03 18:48:38 +0200 <lambdabot> "Haskell Tutorial and Cookbook" by Mark Watson in 2017-09-04 at <https://leanpub.com/haskell-cookbook>
2022-07-03 18:48:44 +0200 <darchitect> yeah, at times it's a bit too much and some of the examples are a little wacky, but I loved they referenced stuff from Dune and Bladerunner at some point :d
2022-07-03 18:49:04 +0200 <Haskelytic> to compare, I like the subtle humor in Tanenbaum's books whereas the haskell book just overdoes it with the "hehe im so quirky :P" nonsense
2022-07-03 18:49:24 +0200 <Haskelytic> esp when I'm not in a good mood I feel like punching a hole through my screen :)
2022-07-03 18:49:33 +0200 <Haskelytic> but maybe it's just me :)
2022-07-03 18:50:02 +0200 <darchitect> you cannot not be in a good mood when writing haskell, it's the zen of programming
2022-07-03 18:50:05 +0200 <darchitect> :d
2022-07-03 18:50:05 +0200mbuf(~Shakthi@122.164.12.46) (Ping timeout: 260 seconds)
2022-07-03 18:50:14 +0200 <Haskelytic> sm: whooaa how come i never came across this book lol
2022-07-03 18:50:27 +0200 <Haskelytic> Oh i see why lol
2022-07-03 18:50:29 +0200 <Haskelytic> 2021
2022-07-03 18:50:45 +0200 <Haskelytic> darchitect: joke's on you, i like to write Haskell furiously :)
2022-07-03 18:50:58 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329) (Ping timeout: 240 seconds)
2022-07-03 18:50:59 +0200 <monochrom> Perhaps nothing is special about monads.
2022-07-03 18:51:13 +0200 <monochrom> btw "special" is ambiguous in the first place.
2022-07-03 18:52:12 +0200 <sm> Haskelytic: it gets ignored. But there are a ton of them now,
2022-07-03 18:52:12 +0200 <sm> @where books
2022-07-03 18:52:12 +0200 <lambdabot> See `LYAH',`RWH',`YAHT',`SOE',`HR',`PIH',`TFwH',`wikibook',`PCPH',`HPFFP',`FSAF',`HftVB',`HTAC',`TwT',`FoP',`PFAD',`WYAH',`non-haskell-books'. Also <https://www.vex.net/~trebla/haskell/learn-sources.
2022-07-03 18:52:12 +0200 <lambdabot> html>,<https://www.extrema.is/articles/haskell-books>
2022-07-03 18:52:42 +0200tmciver(~tmciver@cpe-198-255-176-114.maine.res.rr.com)
2022-07-03 18:53:51 +0200tjmciver(~tmciver@cpe-198-255-176-114.maine.res.rr.com) (Ping timeout: 246 seconds)
2022-07-03 18:53:57 +0200tmcivertjmciver
2022-07-03 18:56:15 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:38a1:df0f:1ea3:e329)
2022-07-03 18:56:44 +0200atwm(~atwm@81.28.193.19) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-03 18:57:10 +0200 <geekosaur> >>= is what makes Monads Monads, but it's not really that special
2022-07-03 18:57:27 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-07-03 19:02:16 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 248 seconds)
2022-07-03 19:04:19 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 19:05:11 +0200machinedgod(~machinedg@207.228.78.110)
2022-07-03 19:06:07 +0200atwm(~atwm@19-193-28-81.ftth.cust.kwaoo.net)
2022-07-03 19:06:40 +0200 <int-e> dolio: Oh there's a youtube video titled "how to lie using visual proofs", I wonder whether it's any good
2022-07-03 19:07:30 +0200motherfsck(~motherfsc@user/motherfsck) (Ping timeout: 246 seconds)
2022-07-03 19:08:24 +0200joo-_(~joo-_@fsf/member/joo--) (Quit: leaving)
2022-07-03 19:09:15 +0200motherfsck(~motherfsc@user/motherfsck)
2022-07-03 19:09:31 +0200 <Haskelytic> int-e: you should mention that it's 3b1b
2022-07-03 19:10:37 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2022-07-03 19:12:28 +0200 <monochrom> haha "it would be fine if pi=4. Now I show you why pi=4" >:)
2022-07-03 19:14:28 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2022-07-03 19:16:23 +0200 <dolio> Oh wow, that's brand new.
2022-07-03 19:16:56 +0200 <int-e> Haskelytic: But I didn't know that when I mentioned it ;)
2022-07-03 19:16:59 +0200 <dolio> Ironic that it's that channel, too, since although the videos are fun, they're like 100% untrustworthy visual proofs. :þ
2022-07-03 19:22:45 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2022-07-03 19:24:41 +0200 <Haskelytic> dolio: visual proofs are good sometimes :)
2022-07-03 19:25:10 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2022-07-03 19:25:12 +0200 <Haskelytic> rigour is overrated anyway :P
2022-07-03 19:26:47 +0200 <int-e> okay, the isosceles triangle thing is pretty good (though I did catch it)
2022-07-03 19:29:28 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 248 seconds)
2022-07-03 19:31:46 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 19:33:56 +0200Haskelytic(~Haskelyti@37.111.207.142) (Ping timeout: 252 seconds)
2022-07-03 19:35:52 +0200 <dolio> Okay, I got it, too.
2022-07-03 19:40:22 +0200dcoutts__(~duncan@host86-187-228-101.range86-187.btcentralplus.com)
2022-07-03 19:41:00 +0200 <dolio> The triangle one is sort of the core reason for my distrust. Draw one picture and erroneously presume that all pictures would look similar enough.
2022-07-03 19:42:47 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-03 19:43:52 +0200justsomeguy(~justsomeg@user/justsomeguy)
2022-07-03 19:48:08 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-03 19:48:57 +0200vandit(~vandit@94-21-233-73.pool.digikabel.hu) (Ping timeout: 276 seconds)
2022-07-03 19:49:57 +0200vandit(~vandit@188-143-101-70.pool.digikabel.hu)
2022-07-03 19:54:12 +0200is7s(~is7s@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18)
2022-07-03 19:54:30 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-07-03 19:56:08 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-03 19:56:29 +0200zebrag(~chris@user/zebrag)
2022-07-03 19:58:21 +0200Guest|16(~Guest|16@152.206.195.84)
2022-07-03 19:58:22 +0200vglfr(~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer)
2022-07-03 19:58:30 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 19:58:30 +0200dcoutts__(~duncan@host86-187-228-101.range86-187.btcentralplus.com) (Ping timeout: 240 seconds)
2022-07-03 19:59:06 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-07-03 20:01:27 +0200 <Guest|16> People, how can i install ghcpu on kali linux
2022-07-03 20:04:41 +0200 <yushyin> https://www.haskell.org/ghcup/install/#getting-started did you try to follow this guide?
2022-07-03 20:05:12 +0200fjmorazan(~quassel@user/fjmorazan) (Quit: fjmorazan)
2022-07-03 20:05:25 +0200 <shapr> Oh man, now I want a ghcpu .. is that a graph reduction cpu that's simulated in Haskell?
2022-07-03 20:05:28 +0200fjmorazan(~quassel@user/fjmorazan)
2022-07-03 20:05:41 +0200 <yushyin> ;D
2022-07-03 20:09:42 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-07-03 20:10:10 +0200pleo(~pleo@user/pleo) (Quit: quit)
2022-07-03 20:11:12 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 20:11:12 +0200vglfr(~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer)
2022-07-03 20:11:15 +0200fjmorazan(~quassel@user/fjmorazan) (Quit: fjmorazan)
2022-07-03 20:11:59 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-07-03 20:12:02 +0200fjmorazan(~quassel@user/fjmorazan)
2022-07-03 20:15:13 +0200Kaiepi(~Kaiepi@156.34.47.253)
2022-07-03 20:15:47 +0200joo-_(~joo-_@172-105-65-159.ip.linodeusercontent.com)
2022-07-03 20:15:47 +0200joo-_(~joo-_@172-105-65-159.ip.linodeusercontent.com) (Changing host)
2022-07-03 20:15:47 +0200joo-_(~joo-_@fsf/member/joo--)
2022-07-03 20:16:34 +0200polo(~Gambino@user/polo)
2022-07-03 20:18:00 +0200polomoney
2022-07-03 20:18:00 +0200money(~Gambino@user/polo) (Client Quit)
2022-07-03 20:18:06 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-07-03 20:18:40 +0200nate4(~nate@98.45.169.16)
2022-07-03 20:19:30 +0200Guest|16(~Guest|16@152.206.195.84) (Quit: Connection closed)
2022-07-03 20:20:44 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.5)
2022-07-03 20:20:45 +0200vglfr(~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer)
2022-07-03 20:20:58 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-07-03 20:21:21 +0200[_](~itchyjunk@user/itchyjunk/x-7353470)
2022-07-03 20:24:05 +0200m1dnight(~christoph@78-22-9-5.access.telenet.be) (Ping timeout: 255 seconds)
2022-07-03 20:24:05 +0200vglfr(~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer)
2022-07-03 20:24:24 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 268 seconds)
2022-07-03 20:24:38 +0200nate4(~nate@98.45.169.16) (Ping timeout: 240 seconds)
2022-07-03 20:24:38 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-07-03 20:24:47 +0200m1dnight(~christoph@78-22-9-5.access.telenet.be)
2022-07-03 20:26:10 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 20:26:10 +0200vglfr(~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer)
2022-07-03 20:26:53 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-07-03 20:28:02 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net)
2022-07-03 20:29:25 +0200coot(~coot@213.134.190.95)
2022-07-03 20:30:09 +0200coot(~coot@213.134.190.95) (Remote host closed the connection)
2022-07-03 20:30:16 +0200coot(~coot@213.134.190.95)
2022-07-03 20:30:33 +0200 <gurkenglas> In free theorem generators, why are the types numbered t1,t2,t3,t4 instead of being grouped into pairs?
2022-07-03 20:31:28 +0200Midjak(~Midjak@82.66.147.146) (Quit: This computer has gone to sleep)
2022-07-03 20:32:29 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 20:33:57 +0200dtman34(~dtman34@2601:446:4400:2ad9:d46d:4cbc:f1f6:2b62) (Quit: ZNC 1.7.2+deb3 - https://znc.in)
2022-07-03 20:34:08 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net) (Quit: WeeChat 3.5)
2022-07-03 20:34:17 +0200dtman34(~dtman34@c-73-62-246-247.hsd1.mn.comcast.net)
2022-07-03 20:38:16 +0200dcoutts(~duncan@host86-187-230-5.range86-187.btcentralplus.com)
2022-07-03 20:40:06 +0200whatsupboy(~whatsupbo@user/scobydoo) (Quit: WeeChat 2.8)
2022-07-03 20:44:08 +0200kenran(~kenran@200116b82b0624000f8d671390633982.dip.versatel-1u1.de)
2022-07-03 20:45:07 +0200ubert(~Thunderbi@p200300ecdf0da52b2d2cedff9ece6a64.dip0.t-ipconnect.de) (Quit: ubert)
2022-07-03 20:46:48 +0200christiansen(~christian@83-95-137-75-dynamic.dk.customer.tdc.net) (Ping timeout: 276 seconds)
2022-07-03 20:47:53 +0200coot(~coot@213.134.190.95) (Ping timeout: 256 seconds)
2022-07-03 20:50:44 +0200BusConscious(~martin@ip5f5bded3.dynamic.kabel-deutschland.de)
2022-07-03 20:53:50 +0200jgeerds(~jgeerds@55d45f48.access.ecotel.net)
2022-07-03 20:54:07 +0200fockerize(~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2022-07-03 20:54:07 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Read error: Connection reset by peer)
2022-07-03 20:54:55 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-07-03 20:55:21 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-07-03 20:58:17 +0200michalz(~michalz@185.246.204.87)
2022-07-03 21:03:09 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-07-03 21:03:53 +0200winny(~weechat@user/winny) (Ping timeout: 268 seconds)
2022-07-03 21:04:07 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 21:05:53 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
2022-07-03 21:05:57 +0200random-jellyfish(~random-je@user/random-jellyfish)
2022-07-03 21:06:01 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-07-03 21:06:17 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-07-03 21:06:22 +0200winny(~weechat@user/winny)
2022-07-03 21:07:22 +0200winny(~weechat@user/winny) (Remote host closed the connection)
2022-07-03 21:07:25 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-07-03 21:07:29 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-03 21:07:47 +0200winny(~weechat@user/winny)
2022-07-03 21:08:51 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2022-07-03 21:08:53 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Client Quit)
2022-07-03 21:09:18 +0200kenran(~kenran@200116b82b0624000f8d671390633982.dip.versatel-1u1.de) (Quit: WeeChat info:version)
2022-07-03 21:11:25 +0200ubert(~Thunderbi@p200300ecdf0da52b1787feeee3bfb98b.dip0.t-ipconnect.de)
2022-07-03 21:12:45 +0200epolanski(uid312403@id-312403.helmsley.irccloud.com)
2022-07-03 21:16:27 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 21:16:27 +0200vglfr(~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer)
2022-07-03 21:18:14 +0200shriekingnoise(~shrieking@201.212.175.181)
2022-07-03 21:21:50 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-07-03 21:21:52 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-03 21:23:26 +0200coot(~coot@213.134.190.95)
2022-07-03 21:25:06 +0200vglfr(~vglfr@coupling.penchant.volia.net)
2022-07-03 21:25:13 +0200azimut_(~azimut@gateway/tor-sasl/azimut)
2022-07-03 21:26:42 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds)
2022-07-03 21:26:58 +0200jgeerds(~jgeerds@55d45f48.access.ecotel.net) (Ping timeout: 272 seconds)
2022-07-03 21:27:30 +0200machinedgod(~machinedg@207.228.78.110) (Ping timeout: 246 seconds)
2022-07-03 21:27:40 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net)
2022-07-03 21:31:14 +0200edinwood(~edinwood@109.249.184.205)
2022-07-03 21:31:27 +0200 <edinwood> hey, how is everyone doing today!?
2022-07-03 21:32:17 +0200azimut_(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-07-03 21:32:24 +0200yauhsien(~yauhsien@61-231-22-150.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
2022-07-03 21:32:39 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-07-03 21:42:39 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Remote host closed the connection)
2022-07-03 21:43:12 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 21:45:02 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-07-03 21:46:13 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-03 21:46:37 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-07-03 21:47:02 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2022-07-03 21:47:40 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-03 21:49:20 +0200dextaa(~DV@user/dextaa)
2022-07-03 21:51:21 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-03 21:53:03 +0200mohy(~mohy@78-80-16-50.customers.tmcz.cz)
2022-07-03 21:53:34 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-07-03 21:53:35 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2022-07-03 21:54:26 +0200cosimone(~user@93-44-186-171.ip98.fastwebnet.it) (Remote host closed the connection)
2022-07-03 21:54:32 +0200 <edinwood> that good huh?
2022-07-03 21:55:48 +0200dextaa(~DV@user/dextaa)
2022-07-03 21:56:24 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2022-07-03 21:56:45 +0200ubert(~Thunderbi@p200300ecdf0da52b1787feeee3bfb98b.dip0.t-ipconnect.de) (Quit: ubert)
2022-07-03 21:57:10 +0200 <geekosaur> given that it's a holiday weekend in the U.S., you're lucky if anyone's around
2022-07-03 21:58:10 +0200dextaa(~DV@user/dextaa)
2022-07-03 21:58:26 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2022-07-03 22:00:03 +0200mohy(~mohy@78-80-16-50.customers.tmcz.cz) (Read error: Connection reset by peer)
2022-07-03 22:00:32 +0200dextaa(~DV@user/dextaa)
2022-07-03 22:01:13 +0200cosimone(~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81)
2022-07-03 22:05:29 +0200 <edinwood> wana see my code?
2022-07-03 22:05:51 +0200 <geekosaur> I'm busy debugging something else
2022-07-03 22:05:58 +0200atwm(~atwm@19-193-28-81.ftth.cust.kwaoo.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-03 22:06:51 +0200tfeb(~tfb@88.98.95.237)
2022-07-03 22:09:59 +0200 <edinwood> yeah, i dont need any debugging
2022-07-03 22:10:17 +0200fockerize(~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 255 seconds)
2022-07-03 22:10:23 +0200 <edinwood> managed to get what i was working on before in a state where i can actually make some design descisions
2022-07-03 22:10:35 +0200 <edinwood> ie "designing the compiler"
2022-07-03 22:10:46 +0200 <edinwood> just some constructor constraints...
2022-07-03 22:10:47 +0200atwm(~atwm@81.28.193.19)
2022-07-03 22:11:15 +0200 <edinwood> so the last example doesnt compile yet, but there is a good indication from the basecase as to how the whole thing appears
2022-07-03 22:11:35 +0200BusConscious(~martin@ip5f5bded3.dynamic.kabel-deutschland.de) (Quit: leaving)
2022-07-03 22:11:43 +0200tfeb(~tfb@88.98.95.237) (Client Quit)
2022-07-03 22:12:17 +0200 <edinwood> https://paste.tomsmeding.com/1Oihg1hk
2022-07-03 22:14:10 +0200_ht(~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
2022-07-03 22:16:27 +0200pleo(~pleo@user/pleo)
2022-07-03 22:16:44 +0200`2jt(~jtomas@141.red-88-17-65.dynamicip.rima-tde.net)
2022-07-03 22:22:20 +0200mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2022-07-03 22:25:08 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 255 seconds)
2022-07-03 22:27:04 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 22:27:40 +0200 <geekosaur> I just demonstrated how accidentally turning a let into a letrec can ruin your whole day…
2022-07-03 22:30:09 +0200vandit(~vandit@188-143-101-70.pool.digikabel.hu) (Ping timeout: 246 seconds)
2022-07-03 22:32:08 +0200vandit(~vandit@178-164-188-93.pool.digikabel.hu)
2022-07-03 22:32:19 +0200 <[exa]> accidental recursion is the best recursion
2022-07-03 22:33:18 +0200dcoutts(~duncan@host86-187-230-5.range86-187.btcentralplus.com) (Ping timeout: 240 seconds)
2022-07-03 22:35:30 +0200[_][itchyjunk]
2022-07-03 22:36:53 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2022-07-03 22:37:51 +0200jgeerds(~jgeerds@55d45f48.access.ecotel.net)
2022-07-03 22:39:07 +0200dextaa(~DV@user/dextaa)
2022-07-03 22:40:39 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 246 seconds)
2022-07-03 22:42:22 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-07-03 22:42:39 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-07-03 22:43:14 +0200random-jellyfish(~random-je@user/random-jellyfish) (Quit: Client closed)
2022-07-03 22:44:18 +0200 <monochrom> My student made a similar mistake on a recent test. They intended something like "myeq x y = MkE (x == y)" but they reused the name (==) where I wrote "myeq".
2022-07-03 22:47:47 +0200pavonia(~user@user/siracusa)
2022-07-03 22:49:22 +0200is7s(~is7s@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18) (Ping timeout: 252 seconds)
2022-07-03 22:49:50 +0200dcoutts(~duncan@host-92-23-41-52.as13285.net)
2022-07-03 22:50:38 +0200cosimone(~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81) (Read error: Connection reset by peer)
2022-07-03 22:52:01 +0200quarkyalice(~alice@user/quarkyalice) (Read error: Connection reset by peer)
2022-07-03 22:53:07 +0200 <hololeap> I just realized that QuickCheck is quite a bit like fuzzing
2022-07-03 22:53:45 +0200quarkyalice(~alice@user/quarkyalice)
2022-07-03 22:54:40 +0200 <monochrom> Yeah I think they are the same.
2022-07-03 22:55:18 +0200 <monochrom> OK, not the same. I think fuzzing is actually more efficient and effective :)
2022-07-03 22:56:39 +0200 <monochrom> reason being QuickCheck uses blindly uniform distributions, fuzzing uses more focused, evil tries-to-break-you distributions.
2022-07-03 22:58:03 +0200 <monochrom> I guess it means fuzzing requires some human to think harder to make evil distributions.
2022-07-03 22:58:19 +0200 <hololeap> well, it found a case that breaks my parser, although the chances of it being found in the wild are ~0%
2022-07-03 22:58:33 +0200 <monochrom> Yeah, that. :)
2022-07-03 22:58:59 +0200acidjnk_new(~acidjnk@dynamic-046-114-168-149.46.114.pool.telefonica.de)
2022-07-03 22:59:34 +0200geekosaurconsiders that he has a history of tripping over "chances of it being found in the wild are ~0%" bugs…
2022-07-03 23:00:00 +0200 <monochrom> We may be able to bring fuzzing to Haskell. There ought to be something easily automatable in "take a look at the intended property, come up with a best-effort weighted distribution towards being evil"
2022-07-03 23:00:03 +0200notzmv(~zmv@user/notzmv)
2022-07-03 23:00:40 +0200edinwood(~edinwood@109.249.184.205) (Remote host closed the connection)
2022-07-03 23:01:28 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2022-07-03 23:01:39 +0200 <hololeap> in haskell it would probably lean toward creating OOM situations
2022-07-03 23:02:09 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-07-03 23:03:00 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl)
2022-07-03 23:03:40 +0200dextaa(~DV@user/dextaa)
2022-07-03 23:04:44 +0200cosimone(~user@2001:b07:ae5:db26:57c7:21a5:6e1c:6b81)
2022-07-03 23:05:00 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 260 seconds)
2022-07-03 23:05:32 +0200 <monochrom> haha.
2022-07-03 23:05:48 +0200 <monochrom> I recently had a Haskell OOM that killed Chrome :)
2022-07-03 23:06:08 +0200 <monochrom> Everyone here was like "good riddance" haha
2022-07-03 23:07:31 +0200 <hololeap> happens daily here, but I cram 20 open tabs and steam and compiling gcc and HLS and compiling ... into 12GB of ram
2022-07-03 23:09:27 +0200 <hololeap> but yeah even my QuickCheck Gens have grown out of control and caused OOM. it's super easy to do.
2022-07-03 23:11:05 +0200 <monochrom> Haha let me tell you again my attempt at randomly generating a large value of a recursive ADT that everyone pointed out "obviously it doesn't terminate" :)
2022-07-03 23:11:10 +0200 <hololeap> listOf $ listOf $ listOf $ listOf ...
2022-07-03 23:11:30 +0200 <monochrom> So let's say the ADT is a simple binary tree like "data T = E | B T T".
2022-07-03 23:11:32 +0200 <[exa]> OOMing is one way to break it and quickcheck found it!!!111 :D
2022-07-03 23:12:50 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 255 seconds)
2022-07-03 23:13:19 +0200 <hololeap> CTRL+SYSRQ+F, CTRL+SYSRQ+F, CTRL+SYSRQ+F, CTRL+SYSRQ+F ...
2022-07-03 23:13:31 +0200 <hololeap> s/CTRL/ALT/
2022-07-03 23:13:41 +0200 <monochrom> So I was doing what I didn't know was Boltzmann sampling but with hopeless probabilities. I was like: In the B case, each child has 0.5 chance of being E, 0.5 chance of being B and recurse.
2022-07-03 23:14:33 +0200 <TMA> some languages are unfriendly, Haskell is oomfriendly
2022-07-03 23:14:59 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-03 23:15:01 +0200 <monochrom> I was surprised it kept growing and didn't stop. Someone here pointed out "so at every parent E(has a child) = 1 so you clearly have an infinite sequence" haha
2022-07-03 23:16:07 +0200 <hololeap> hm, yeah I don't fully understand why that's infinite, monochrom
2022-07-03 23:16:14 +0200 <monochrom> Since then I learned Boltzmann sampling properly. Now I know what probabilities to use to get what tree size.
2022-07-03 23:17:32 +0200 <monochrom> OK so at the top if you are lucky to get E you're good. But there is 0.5 chance you get B, now you're in trouble.
2022-07-03 23:18:05 +0200 <hololeap> oh, I see it now
2022-07-03 23:18:29 +0200 <monochrom> The left child has 0.5 chance of being B. The right child too. There is only 0.25 chance of terminating right away.
2022-07-03 23:18:39 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2022-07-03 23:18:55 +0200 <monochrom> I guess s/E(has a child)/E(has a B child)/
2022-07-03 23:19:13 +0200 <TMA> let t denote the tree size; expected tree size is Et = 0.5 + 0.5(Et+Et) ; that boils down to Et = 0.5 + Et ;
2022-07-03 23:19:36 +0200 <TMA> that holds for Et being infinite
2022-07-03 23:20:02 +0200 <monochrom> Yeah it's the ADT version of St. Petersburg Paradox
2022-07-03 23:21:13 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit)
2022-07-03 23:26:09 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2022-07-03 23:27:10 +0200 <TMA> I have an error there, the recurrency shall be Et = 0.5 + 0.5(1+Et+Et) ; that boils down to Et = 1 + Et; the conslusion is the same though
2022-07-03 23:27:30 +0200 <monochrom> "one more turn" :)
2022-07-03 23:37:19 +0200merijn(~merijn@c-001-001-028.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-07-03 23:38:27 +0200adium(adium@user/adium) (Ping timeout: 256 seconds)
2022-07-03 23:43:35 +0200fockerize(~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2022-07-03 23:46:48 +0200is7s(~is7s@2a01:4b00:895f:3d00:7d21:5e77:2c62:7a18)
2022-07-03 23:48:22 +0200Tuplanolla(~Tuplanoll@91-159-69-97.elisa-laajakaista.fi) (Quit: Leaving.)
2022-07-03 23:51:20 +0200`2jt(~jtomas@141.red-88-17-65.dynamicip.rima-tde.net) (Ping timeout: 248 seconds)
2022-07-03 23:54:27 +0200machinedgod(~machinedg@207.228.78.115)
2022-07-03 23:56:58 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)