Home freenode/#haskell: Logs Calendar

Logs on 2020-10-04 (freenode/#haskell)

00:00:02 × kers quits (~kers@185.204.1.185) ()
00:00:28 <dsal> I don't have to deal with xml very much, so I don't know what's best, but that worked well for me. :)
00:00:52 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
00:01:18 <d34df00d> Yeah, same here. Last time I had to parse XML before was... well, I don't even remember!
00:01:39 jedii joins (~g@209.6.150.53)
00:01:49 <jedii> anyoine using happstack.com? looks sick
00:02:04 × jedii quits (~g@209.6.150.53) (Quit: leaving)
00:05:41 <d34df00d> Dang, Xeno.SAX is strict on the bytestrings.
00:06:31 <dsal> I wasn't using it for anything big.
00:06:36 <d34df00d> …but there's bytestring-mmap!
00:07:00 borne joins (~fritjof@200116b864ada80007933c164a08810c.dip.versatel-1u1.de)
00:10:25 ft joins (~ft@shell.chaostreff-dortmund.de)
00:11:23 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Ping timeout: 240 seconds)
00:16:30 conal joins (~conal@66.115.157.94)
00:16:38 × cosimone quits (~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Quit: Quit.)
00:16:52 <cohn> hi, how do I create a minimal .cabal file for experimenting?
00:17:50 × jedws quits (~jedws@121.209.139.222) (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:18:38 jedws joins (~jedws@121.209.139.222)
00:18:55 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Ping timeout: 240 seconds)
00:20:13 × jgt quits (~jgt@188.239.64.32) (Ping timeout: 265 seconds)
00:20:35 <OmegaDoug> Aeson fieldLabelModifier doesn't seem to get applied to by data type. I can't see what I'm doing which is different from any online example. I'm wondering if I could get a second set of eyes: https://gist.github.com/DouglasBrunner/5bf94447f57db989f9df5b6682a7fdf6
00:24:02 fendor__ joins (~fendor@178.165.130.169.wireless.dyn.drei.com)
00:24:39 <dsal> cohn: I just use stack, tbh. But stack will make your cabal file for you.
00:25:16 <dsal> OmegaDoug: Why would you expect the latter?
00:25:42 <dsal> Er, *not* expect the latter. I think you're looking at different things.
00:26:36 × fendor_ quits (~fendor@91.141.0.198.wireless.dyn.drei.com) (Ping timeout: 260 seconds)
00:26:37 <OmegaDoug> dsal, I think I'm making a simple mistake and didn't encode it.
00:26:53 <OmegaDoug> I think I'm just printing the output directly.
00:27:15 <dsal> You're using the Show instance, which isn't related to JSON (it's not even valid JSON).
00:27:17 <OmegaDoug> printing the type as serialized by Show, not as serialized by Aeson
00:27:29 <OmegaDoug> Yeah, you beat me to it. ;)
00:27:50 <dsal> But you also don't want "drop 1" here.
00:28:03 × ech quits (~user@gateway/tor-sasl/ech) (Ping timeout: 240 seconds)
00:28:13 × hiroaki quits (~hiroaki@ip4d176049.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
00:28:23 <dsal> `dropWhile (== '_')` would be safer, unless you prefix all your fields with `_` (which is common in lens code, anyway)
00:29:36 <OmegaDoug> I agree 100%. But when I was mistakenly using "Show" instead of "toJson" I wanted to use a function which should have been guaranteed to work. I'll switch back to dropWhile once I have it working.
00:30:01 ech joins (~user@gateway/tor-sasl/ech)
00:30:22 × mozzarella quits (~sam@unaffiliated/sam113101) (Ping timeout: 265 seconds)
00:30:27 hackage immortal-worker 0.1.0.0 - Create worker threads that logs exceptions and restarts. https://hackage.haskell.org/package/immortal-worker-0.1.0.0 (NCrashed)
00:31:16 <OmegaDoug> dsal, it's working perfectly now. Thanks for the help.
00:31:51 <dsal> Yeah. I've spent a bunch of time in weird bits of aeson
00:32:34 × carlomagno1 quits (~cararell@inet-hqmc02-o.oracle.com) (Ping timeout: 256 seconds)
00:32:41 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
00:34:05 mozzarella joins (~sam@unaffiliated/sam113101)
00:36:57 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
00:37:53 <d34df00d> dsal: yeah, xeno is super fast, modulo a space leak in their `fold` abstraction.
00:38:00 <d34df00d> (modify instead of modify'? srsly?)
00:38:08 <d34df00d> Thanks for pointing me to that!
00:38:14 <OmegaDoug> I was looking through https://artyom.me/aeson and it's a library with a large surface area. I'll be curious to see how it is to work with compared with some of the JSON libraries I regularly use at work going forward.
00:38:29 <dsal> d34df00d: Cool. Yeah, nobody uses xml, so it's not surprising it has bad parts. heh
00:39:21 <OmegaDoug> We use XML a fair bit. We favour JSON, but XML is hard to escape.
00:39:33 <dsal> &lt;
00:40:24 <dsal> aeson + lens is pretty magical. Advent of code 2015 had a problem where you had to calculate the sum of all of the numbers in an arbitrary xml document. It's like, 40 characters of code.
00:42:19 lemmih_ joins (~lemmih@218.186.157.57)
00:42:25 × ddellacosta quits (~dd@86.106.121.168) (Ping timeout: 240 seconds)
00:44:25 × lemmih quits (~lemmih@2406:3003:2072:44:640b:57cc:705a:e759) (Ping timeout: 240 seconds)
00:45:03 <cohn> dsal: I'm just trying to make a sandbox. Looks like I can just run `stack init` but I don't see where to plug in the package names I want to use in stack.yaml
00:45:43 <dsal> Oh. Now I'm curious how you've been building stuff. heh
00:46:26 snakemasterflex joins (~snakemast@213.100.206.23)
00:47:02 <dsal> cohn: I have a template I use when starting projects. Here's an example of what that might look like: stack new awesomeproject https://gist.githubusercontent.com/dustin/e1a519e6d699ceb04c7542afe0282d56/raw/8066c389ff14799bddbb9278c5d986c20ed6d4b9/mytemplate.hsfiles
00:47:17 nbloomf joins (~nbloomf@2600:1700:83e0:1f40:9dc0:c910:ee4d:fcdf)
00:47:35 <dsal> (that's my default template, so I just do 'stack new awesomeproject' and start running stuff)
00:47:48 <cohn> nice! thanks
00:47:52 <dsal> Packages don't go in stack.yaml, but in package.yaml
00:48:15 <dsal> I don't have a lot of default deps other than for tests.
00:48:18 <cohn> I created a package.yaml but when I run `stack ghci`, it doesn't install anything
00:48:51 <dsal> It shouldn't "install" anything. It's going to grab deps for whatever it's making a repl for.
00:48:56 <dsal> e.g. try that in this project: https://github.com/dustin/gopro/blob/master/package.yaml :)
00:49:02 <cohn> ok
00:49:03 × nbloomf quits (~nbloomf@2600:1700:83e0:1f40:9dc0:c910:ee4d:fcdf) (Client Quit)
00:49:30 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
00:49:51 <dsal> (don't actually try that in that project -- it uses half of hackage)
00:50:07 <cohn> yea, I noticed... yeesh! :D
00:51:20 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
00:51:28 nbloomf joins (~nbloomf@2600:1700:83e0:1f40:7c32:dfd5:ea25:990f)
00:52:58 <cohn> hmm. still nothing.
00:53:55 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
00:54:35 <cohn> ah, fixed it! I had to comment out the "packages: []" line in stack.yaml
00:55:11 <cohn> suhweeeet
00:56:01 shortdudey1231 joins (~shortdude@178.162.204.214)
00:56:28 <cohn> dsal: thanks yet again! You should probably start charging for support. hehe
00:56:47 × xff0x quits (~fox@2001:1a81:528f:c400:e801:3cdf:9d3a:43d8) (Ping timeout: 260 seconds)
00:57:37 xff0x joins (~fox@2001:1a81:528f:c400:e12b:e4ce:eff2:a3d5)
01:01:03 quazimodo joins (~quazimodo@60-240-169-126.static.tpgi.com.au)
01:01:21 <quazimodo> sorry for o/t, is there an ocaml channel on freenode?
01:02:38 xerox_ joins (~xerox@unaffiliated/xerox)
01:02:49 <cohn> quazimodo: /join #ocaml seems to be an actual OCaml channel
01:02:54 × quazimodo quits (~quazimodo@60-240-169-126.static.tpgi.com.au) (Client Quit)
01:05:08 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
01:07:01 zoom66 joins (44beb1c9@068-190-177-201.res.spectrum.com)
01:07:38 carlomagno joins (~cararell@inet-hqmc02-o.oracle.com)
01:08:05 <zoom66> Question regarding polymorphic type associated with Num typeclass
01:08:22 <zoom66> Each of the following three funcs simply return the value passed to them:
01:08:25 <zoom66> retNum:: (Num a) => a -> a ; retNum x = x
01:08:29 <zoom66> retInt :: Int -> Int ; retInt x = x
01:08:33 <zoom66> retInteger :: Integer -> Integer ; retInteger x = x
01:08:38 <zoom66> if in GHCI I do retInt (retNum 10000000000000000000), I get an Int out of range warning, which is expected
01:08:42 <zoom66> however, if I do z = retNum 10000000000000000000
01:08:50 <zoom66> and then retInt z, I get an Int value which has wrapped since 'z' is too large for an Int to hold
01:09:46 <zoom66> retInt z displays -8446744073709551616
01:10:16 <zoom66> i'm a noob and trying to understand what bounding var checking I should be expecting, if any
01:10:31 × alp quits (~alp@2a01:e0a:58b:4920:d804:7750:2986:4170) (Ping timeout: 272 seconds)
01:10:58 <zoom66> naturally if I do retInteger z, I get the correct value
01:12:07 <dolio> Where are you doing the second thing?
01:12:16 <zoom66> ghci
01:12:39 <dolio> Well, z is probably a polymorphic value.
01:12:54 <dolio> Then retInt is instantiating it to Int.
01:13:10 <zoom66> so is there no type bounds checking for retInt?
01:13:19 <dolio> The warning only happens when you use a literal at a type known to be Int, I think.
01:13:44 toorevitimirp joins (~tooreviti@117.182.181.38)
01:14:02 <zoom66> it's basically just truncating the value to an Int. is that typical for a polymorphic type of Num typeclass?
01:14:11 × solonarv quits (~solonarv@astrasbourg-653-1-252-112.w92-161.abo.wanadoo.fr) (Ping timeout: 240 seconds)
01:14:19 vicfred joins (~vicfred@unaffiliated/vicfred)
01:15:50 <zoom66> ok, just tried it in compiled code and the z = retNum 10000000000000000000 generates the -Woverflowed-literals warning
01:15:53 <dolio> Numeric literals just wrap around on the finite integer types in base.
01:16:12 <zoom66> i don't get the warning doing the same statement interactively in ghci
01:16:17 <dolio> Because the `fromInteger` function wraps around.
01:17:06 <dolio> Well, in the compiled code, it will probably be trying to find a monomorphic type for `z`, and it will see that it needs to be `Int`.
01:17:27 <dolio> Which means that the literal's type is Int, and then it can warn.
01:17:44 <dolio> When you're doing it in GHCi, the literal's type is `forall a. Num a => a`.
01:17:59 <zoom66> so when constructing real-world logic, if there's ever a function that may exceed the bounds of Int, I guess I can't guess a polymorphic type variable?
01:18:03 <dolio> Because it's doing things line-by-line.
01:18:26 <dolio> So if it didn't leave it polymorphic, you wouldn't be able to use it at arbitrary other types later.
01:18:35 <zoom66> ok, got it
01:18:59 <zoom66> what if I have two Int that are polymorphic and do an operation where the result exceeds Int. Does it just wrap?
01:19:25 <dolio> Yes. There are packages with other Int types that will throw exceptions, though.
01:19:53 <zoom66> great, thanks
01:21:40 × OmegaDoug quits (8e749d03@lnsm3-torontoxn-142-116-157-3.internet.virginmobile.ca) (Remote host closed the connection)
01:22:01 × mozzarella quits (~sam@unaffiliated/sam113101) (Ping timeout: 256 seconds)
01:22:25 × raehik1 quits (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
01:24:02 × GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
01:24:13 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
01:24:13 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
01:24:13 GyroW joins (~GyroW@unaffiliated/gyrow)
01:27:10 <Squarism> I used to know why this was a bad idea but I've been away from haskell to long.
01:27:17 × jb55 quits (~jb55@gateway/tor-sasl/jb55) (Remote host closed the connection)
01:27:21 <Squarism> I want to create a function returning a generic interface. foo :: Int -> SomeGenericInterface. So I think classes + instance is the thing. So foo :: Int -> SomeClass a. But then I need to provide "a" at invokation. Is the right answer to create a datatype (unparamterized) SomeType with accessors for funktions I want in this generic interface? Classes are just usefule when working with a known type.
01:27:54 wroathe_ joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
01:28:25 × wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
01:28:32 × wroathe_ quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Client Quit)
01:28:48 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
01:29:19 jb55 joins (~jb55@gateway/tor-sasl/jb55)
01:32:01 mozzarella joins (~sam@unaffiliated/sam113101)
01:33:12 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
01:37:55 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
01:39:00 <nitrix> Squarism, Type classes don't appear like that on the right of an arrow.
01:39:19 <Squarism> Yeah, its coming back to me
01:39:39 <nitrix> Squarism, You normally have a type variable with a constraint to restrict it to one of the types that implements the typeclass.
01:39:41 <Squarism> Just feels like it would be possible to create classes where the type is not used in functions that could be "anonymous" like this. But I guess Its out of their scope
01:40:00 <nitrix> Squarism, e.g. foo :: SomeClass c => Int -> c a
01:40:09 <Squarism> yeah.
01:41:46 <infinisil> Squarism: You may be looking for existential types, see https://wiki.haskell.org/Existential_type
01:41:55 × Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds)
01:46:28 reallymemorable joins (~quassel@ip68-9-215-56.ri.ri.cox.net)
01:46:54 × conal quits (~conal@66.115.157.94) (Quit: Computer has gone to sleep.)
01:46:55 × xff0x quits (~fox@2001:1a81:528f:c400:e12b:e4ce:eff2:a3d5) (Ping timeout: 240 seconds)
01:47:22 × cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 272 seconds)
01:47:27 <koz_> I've noticed that most (effectful) streaming libraries (aside from conduit and io-streams) don't have a notion of 'peeking' a stream (namely, looking at the next value, but without removing it from said stream). How come this is the case?
01:48:47 xff0x joins (~fox@2001:1a81:52c9:f600:e12b:e4ce:eff2:a3d5)
01:50:33 polyrain joins (~polyrain@2001:8003:e501:6901:44d8:84ba:175f:dd38)
01:50:54 cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net)
01:53:51 conal joins (~conal@64.71.133.70)
01:55:23 CMCDragonkai1 joins (~Thunderbi@120.17.204.172)
01:56:52 × mirrorbird quits (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f) (Remote host closed the connection)
01:57:05 mirrorbird joins (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f)
01:59:29 × Tops2 quits (~Tobias@dyndsl-095-033-018-208.ewe-ip-backbone.de) (Read error: Connection reset by peer)
02:03:17 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
02:04:55 × thc202 quits (~thc202@unaffiliated/thc202) (Ping timeout: 240 seconds)
02:05:50 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
02:09:10 × ryansmccoy quits (~ryansmcco@68.235.48.108) (Ping timeout: 246 seconds)
02:09:47 ryansmccoy joins (~ryansmcco@156.96.151.132)
02:13:51 × mirrorbird quits (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f) (Ping timeout: 272 seconds)
02:14:25 × ericsagnes quits (~ericsagne@2405:6580:0:5100:80c3:1766:ef39:bb4c) (Ping timeout: 240 seconds)
02:16:54 HaskellYogi joins (~vivekrama@49.207.213.15)
02:18:12 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: leaving)
02:23:03 elliott__ joins (~elliott@pool-108-45-154-71.washdc.fios.verizon.net)
02:23:43 × cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
02:26:28 × nbloomf quits (~nbloomf@2600:1700:83e0:1f40:7c32:dfd5:ea25:990f) (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:27:24 ericsagnes joins (~ericsagne@2405:6580:0:5100:9458:e3c2:d11d:f00a)
02:30:49 sand_dull joins (~theuser@cpe-67-252-1-237.nycap.res.rr.com)
02:31:25 × LKoen quits (~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr) (Read error: Connection reset by peer)
02:31:32 LKoen joins (~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr)
02:32:13 × zoom66 quits (44beb1c9@068-190-177-201.res.spectrum.com) (Remote host closed the connection)
02:33:41 nbloomf joins (~nbloomf@2600:1700:83e0:1f40:190b:21b1:e82d:dbc9)
02:34:48 snakemasterflex joins (~snakemast@213.100.206.23)
02:39:49 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 264 seconds)
02:40:27 × Amras quits (~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
02:42:12 ksixty joins (~Adium@109-252-45-112.nat.spd-mgts.ru)
02:45:45 × theDon quits (~td@94.134.91.90) (Ping timeout: 240 seconds)
02:47:55 theDon joins (~td@94.134.91.94)
02:49:05 <lechner> Hi, I recently discovered Haskell and love it. At the same time, I wonder if it can express all of a programmer's common intentions. Functional programming seems strictly inferential, and H. Curry read Whitehead and Russell. Do I have to worry about Haskell being incomplete similar to algebra?
02:50:57 × reallymemorable quits (~quassel@ip68-9-215-56.ri.ri.cox.net) (Remote host closed the connection)
02:52:16 <sm[m]> lechner: someone more knowledgeable on this will come along, but you don't have to worry about being able to express practical software
02:53:36 lagothrix is now known as Guest27951
02:53:36 × Guest27951 quits (~lagothrix@unaffiliated/lagothrix) (Killed (hitchcock.freenode.net (Nickname regained by services)))
02:53:42 lagothrix joins (~lagothrix@unaffiliated/lagothrix)
02:53:52 <sm[m]> what sort of situation could arise if your fear is true ?
02:59:20 × nineonine quits (~nineonine@216.81.48.202) (Remote host closed the connection)
03:00:01 × shortdudey1231 quits (~shortdude@178.162.204.214) ()
03:01:02 GyroW_ joins (~GyroW@d54C03E98.access.telenet.be)
03:01:03 × GyroW_ quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
03:01:03 GyroW_ joins (~GyroW@unaffiliated/gyrow)
03:01:32 × elliott__ quits (~elliott@pool-108-45-154-71.washdc.fios.verizon.net) (Ping timeout: 260 seconds)
03:01:55 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
03:02:48 <dsal> lechner: I write almost all of my software in Haskell.
03:06:07 <dsal> heh, my cachix CI task takes about 2 hours to run for my mqttd. About 3m for my old stack thing now that I've fixed it.
03:06:10 <davean> lechner: its turing complete, it can do exactly what any other programming system can do.
03:08:44 ksixty1 joins (~Adium@static.100.218.46.78.clients.your-server.de)
03:10:52 × ksixty quits (~Adium@109-252-45-112.nat.spd-mgts.ru) (Ping timeout: 260 seconds)
03:11:38 nineonine joins (~nineonine@216-19-190-182.dyn.novuscom.net)
03:12:01 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
03:14:28 hackage silkscreen 0.0.0.0 - Prettyprinting transformers. https://hackage.haskell.org/package/silkscreen-0.0.0.0 (robrix)
03:16:00 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 260 seconds)
03:16:06 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
03:16:06 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
03:16:06 GyroW joins (~GyroW@unaffiliated/gyrow)
03:16:40 × nineonine quits (~nineonine@216-19-190-182.dyn.novuscom.net) (Ping timeout: 272 seconds)
03:16:45 × bloodstalker quits (~bloodstal@46.166.187.188) (Read error: Connection reset by peer)
03:17:26 zoom joins (44beb1c9@068-190-177-201.res.spectrum.com)
03:17:31 conal joins (~conal@64.71.133.70)
03:17:48 × conal quits (~conal@64.71.133.70) (Client Quit)
03:19:03 <zoom> I have a basic polymorphic type question. I have default (Int, Float) set for my module. In compiled code, I have "z = 0". GHCI reports z's type as Int, as expected.
03:19:15 × irc_user quits (uid423822@gateway/web/irccloud.com/x-qmbsqpmesujkhtzf) (Quit: Connection closed for inactivity)
03:19:20 <zoom> If I then pass z to the following function:
03:19:33 <zoom> retInteger :: Integer -> Integer ; retInteger x = x
03:19:46 <zoom> and store it in z2, the type of z is now Integer instead of Int
03:19:51 <zoom> to recap:
03:20:02 × sis7 quits (~user@2001:15e8:110:473e::1) (Ping timeout: 260 seconds)
03:20:05 <zoom> z = 0 (type is Int)
03:20:14 <zoom> z2 = retInteger z
03:20:26 <zoom> z now compiles as Integer
03:20:30 conal joins (~conal@64.71.133.70)
03:20:30 × conal quits (~conal@64.71.133.70) (Client Quit)
03:21:36 <zoom> why is the type of z affected by the fact that it was passed to retInteger, which returned a separate immutable value
03:22:05 <dsal> I think you're inferring too hard. If z should be an Int and fail here, you should say `z :: Int`
03:22:24 <zoom> understood I can explicitly cast. Just trying to understand the compiler / language behavior
03:22:38 <dolio> :: isn't casting.
03:22:41 <dsal> I don't think cast is the right word.
03:22:43 <zoom> didn't mean to say casting
03:23:02 <zoom> I mean I understand I can explicitly specify the type
03:23:43 <zoom> but trying to understand why the compiler implicitly switches z from an Int to Integer if z is passed to a function that treats z as an Integer
03:23:59 <zoom> i would expect z2 would be an Integer and z would remain an Int
03:24:00 <dsal> It's not totally clear what you're doing.
03:24:01 elliott__ joins (~elliott@pool-108-45-154-71.washdc.fios.verizon.net)
03:24:15 <zoom> default (Int, Float)
03:24:16 <zoom> z = 0
03:24:22 <zoom> when compiled, the type of z is an Int, as expected
03:24:33 <dolio> z needs to have type `Integer` to be an argument of `retInteger`.
03:24:42 <dolio> So defaulting isn't even happening.
03:25:02 <cohn> zoom: maybe this helps? https://stackoverflow.com/questions/3429291/what-is-the-difference-between-int-and-integer
03:25:05 <dsal> Are you playing in ghci?
03:25:13 <zoom> not ghci, this is compiled code
03:25:24 <dolio> Defaulting only happens when something needs a monomorphic type, but nothing else in the code determines the choice.
03:25:55 × CMCDragonkai1 quits (~Thunderbi@120.17.204.172) (Ping timeout: 240 seconds)
03:26:10 <dsal> You mentioned ghci. You're being vague about what you're doing, because you can't both have something you're asking GHCI for the default type of, and have a thing you're compiling that passes a value to a function with a known type.
03:26:28 <zoom> i only use ghci to check the type the compiler inferred. code is compiled
03:26:29 sis7 joins (~user@80.211.200.62)
03:26:55 × borne quits (~fritjof@200116b864ada80007933c164a08810c.dip.versatel-1u1.de) (Ping timeout: 240 seconds)
03:27:21 <dsal> But if you're passing z to a function that requires an Integer, then you know the type that was inferred is Integer.
03:28:30 <zoom> ok, i guess the compiler infers z1 is an Integer from the call. what threw me off is if I compile z = 0 by itself it's an Int. If I then add the line to call retInteger it's an Integer. I considered them two separate statements but I guess the compiler changes the inferences of z1 = 0 when it sees the call to retInteger
03:29:00 <zoom> If I explicitly set z :: Int and then call retInteger I get the type mismatch error, as expected
03:29:49 <dsal> In general, you don't want to do that. -Wall will enable a warning telling you a) what it inferred the type to be and b) that it shouldn't have to do that because you should declare your toplevel types.
03:30:47 × ksixty1 quits (~Adium@static.100.218.46.78.clients.your-server.de) (Quit: Leaving.)
03:32:32 <zoom> ok, tried the -Wall and see the warning you mentioned.
03:34:43 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
03:34:59 <zoom> does top-level binding refer to scope?
03:35:08 <zoom> ie, the outermost scope?
03:35:22 conal joins (~conal@64.71.133.70)
03:35:45 × conal quits (~conal@64.71.133.70) (Client Quit)
03:35:58 × ym555 quits (~ym@41.42.203.37) (Ping timeout: 265 seconds)
03:36:36 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
03:39:07 <dsal> Yeah. I don't annotate all my types, just at the toplevel and whenever it's otherwise helpful or avoids confusion.
03:39:07 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
03:40:50 <zoom> thanks. i'm surprised it's suggested practice considering how useful type inference is. is the suggestion limited to top-level binding because it's assumed all subsequent calls/uses flow from the types at the top-level?
03:41:19 <dsal> It's a good boundary. You can get *massively* confused if you let the type system guess your whole program.
03:41:25 ym555 joins (~ym@41.42.203.37)
03:41:58 <zoom> my preference coming from C is to specify all my types. I thought I was actually adapting by using inference instead.
03:42:13 <dsal> You think you're working with a list of ints or something, but no, it's a Foldable Semigroup of an Integral value.
03:42:20 <zoom> ie, adapting to the haskell way. thanks for setting me straight
03:43:22 <hololeap> using type annotations here and there (e.g. all top level definitions) helps to make sure that your thought process and the compiler are in-sync
03:43:24 <dsal> -Wall is generally a good idea. :)
03:44:01 <zoom> makes perfect sense to me. and would my preference now that I see it's recommended practice anyway
03:44:03 <dsal> It makes your code far easier for you as a human to read, but it also means your error messages won't be just an arbitrary permutation of type classes and a frowny face.
03:44:43 <hololeap> ghc outputs frowny faces?
03:45:04 <dsal> I don't know... if you get too deep into inference, the error is too large for anyone to really know what happens.
03:45:14 <dsal> Well, except for C++ programmers, I guess. They won't notice the error scroll by.
03:46:17 <dolio> It's not necessarily that it's large. It's more that it's non-local.
03:47:08 × ym555 quits (~ym@41.42.203.37) (Ping timeout: 260 seconds)
03:47:39 <dolio> You can write code where the types accidentally work out until a part that isn't really related to where the problem is.
03:48:21 <dsal> Yeah, and as you make things more generic, they can work in more places, so you use them in more places, and then just weird happens.
03:49:05 <hololeap> "Occurs check: cannot construct infinite type" is usually the hardest one for me to understand what i did wrong
03:49:34 <dsal> > foldMap (*1) [0, 1, 2, 3, 4]
03:49:36 <lambdabot> error:
03:49:36 <lambdabot> • Ambiguous type variable ‘a0’ arising from a use of ‘show_M650599424046...
03:49:36 <lambdabot> prevents the constraint ‘(Show a0)’ from being solved.
03:49:57 <dsal> Errors like this will ramble on for a bit.
03:50:03 <dsal> > foldMap (*1) [0, 1, 2, 3, 4] :: Sum Int
03:50:07 <lambdabot> Sum {getSum = 10}
03:50:11 <dsal> > foldMap (*1) [0, 1, 2, 3, 4] :: Product Int
03:50:14 <lambdabot> Product {getProduct = 0}
03:50:18 <dsal> Stupid zero.
03:51:25 <dsal> It gets *really* exciting when you enable OverloadedLists
03:52:04 <c_wraith> hololeap: that error means that GHC tried to unify a pair of types where one occurs inside the other. Just declaring them to be equal would mean the full expansion is infinite.
03:52:44 <dsal> a ~ [a] kinds of things
03:52:47 <hololeap> c_wraith: it often crops up when i refactor to pointfree and i forgot to remove one of the arguments from the function definition
03:52:55 wei2912 joins (~wei2912@unaffiliated/wei2912)
03:53:11 <dsal> OMG, I'm trying to figure out where I've used OverloadedLists, and I have a tiny file here with it on, but I'm still using Map.fromList
03:53:14 <c_wraith> hololeap: sure, a -> b and b could unify if infinite types were allowed
03:53:17 <dolio> You can actually have type systems that allow that. But it catches so many incidental errors it'd be kind of terrible.
03:53:31 <dsal> Ah, I use it in tests sometimes.
03:53:33 <c_wraith> hololeap: but it would also imply a -> a -> b is the same type as b
03:53:37 <dolio> At least, you don't want it without requesting it.
03:54:17 × GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
03:54:27 <hololeap> c_wraith: i am glad that it throws _some_ error, but that particular error message usually leaves me scratching my head for a minute. at least it gives a line number so i can stare at it until i see what i did wrong
03:54:30 <dsal> The error message confuses people because it's accurate in type theorist language, but it generally means, "I don't think you're saying what you mean."
03:54:35 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
03:54:35 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
03:54:35 GyroW joins (~GyroW@unaffiliated/gyrow)
03:54:51 <c_wraith> Just look at the two types it tells you
03:54:54 × jedws quits (~jedws@121.209.139.222) (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:55:31 <c_wraith> If the bigger one is a function type, it means you have differing numbers of arguments in different branches.
03:55:49 <hololeap> that's a very useful tip that i will keep in mind
03:56:00 <dsal> It's usually `a ~ [a]` for me which is always a dumb error.
03:56:21 <c_wraith> > let f 0 = Nothing ; f x = show x in f ()
03:56:23 <lambdabot> error:
03:56:24 <lambdabot> • Couldn't match type ‘[Char]’ with ‘Maybe a2’
03:56:24 <lambdabot> Expected type: Maybe a2
03:56:25 <dolio> Yeah, it usually has something to do with too many or too few arguments, or arguments in the wrong order or something.
03:56:29 <c_wraith> Oh, whoops.
03:56:34 <c_wraith> > let f 0 = Nothing ; f x = x in f ()
03:56:36 <lambdabot> error:
03:56:36 <lambdabot> • Couldn't match expected type ‘Maybe a’ with actual type ‘()’
03:56:37 <lambdabot> • In the first argument of ‘f’, namely ‘()’
03:56:43 <dolio> Or forgetting to map/bind something.
03:56:46 <c_wraith> Oh, too much inference. Oh well.
03:56:59 <c_wraith> Anyway. Look at the two types it's telling you it's trying to unify
03:57:15 <c_wraith> The difference between them is the important part
03:57:17 <dolio> I'm not sure if GHC tries to tell you what's wrong, but I'm not sure how it would narrow it down.
03:58:59 <hololeap> don't get me wrong, i'm not complaining. the fact that ghc uses type theory to allow a huge number of valid things is awesome. but at first it complaining that i was trying to construct an infinite type for some mundane function made me go WTF
03:59:29 <c_wraith> the thing to remember is that GHC tries *really* hard to make your code work.
03:59:58 <c_wraith> In this case, it's reaching the conclusion "this code would type-check if these two types are the same."
04:00:13 <c_wraith> And then going "oops, I'm not allowed to make these two types the same"
04:00:59 <c_wraith> And it reports that last problem, because that's the point from which it could make no more progress.
04:03:22 × Jesin quits (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Ping timeout: 258 seconds)
04:03:28 <hololeap> it's like if i was trying to skip rocks, and failed, and someone came up to me and said "why are you trying to subvert the laws of physics by skipping a rock at that velocity and trajectory?"
04:03:36 <zoom> kind of an open-ended questions but I'm in the midst of learning haskell and I'm about 2/3 through the learnyouhaskell guide. I can see the steep learning curve and I'm fine with that but I'm wondering if there's any hidden learning curves I don't forsee. for example, quirks in the language that you really only learn "on the job" after using it in
04:03:36 <zoom> a production environment.
04:04:00 <zoom> and if so, how significant those additional learning curves might be
04:04:21 <c_wraith> You can bounce hard off of some of the more high-powered libraries used in production code
04:05:45 <c_wraith> like... lenses are so useful it's hard to justify not using them on sufficiently large projects, but there's another huge upfront cost to learn.
04:06:17 <cohn> agree --^
04:06:22 <zoom> maybe quirks isn't the right word. I guess I'm asking how deep the rabbit hole goes beyond the basic language. like undocumented or lightly documented behaviors
04:06:28 <MarcelineVQ> it is a bit of a cost, I wrote a lens library and still don't know how to use them ^^;
04:06:42 × sand_dull quits (~theuser@cpe-67-252-1-237.nycap.res.rr.com) (Ping timeout: 272 seconds)
04:07:10 <c_wraith> debugging performance issues is probably the one big thing with poor documentation.
04:07:34 <hololeap> zoom: it isn't as bad as you might think. there are some well known thorns such as lazy IO and space leaks, but overall, the scariness overshoots the actual dangers
04:07:47 <c_wraith> There are a ton of tools that are all documented individually, but there's little in the way of unified big-picture documentation for the process
04:08:01 <zoom> i actually enjoy exploring the nuances and corner-cases of languages but that seems like kids play to what I'm facing with haskell
04:08:22 <c_wraith> for the language itself, Haskell has fewer corner cases than most.
04:08:25 sand_dull joins (~theuser@179.48.249.132)
04:08:37 <c_wraith> Unless you start turning on every type system extension you can find :)
04:09:21 <hololeap> but, then again, there are many benign language extensions that shouldn't be off-limits for a beginner
04:09:49 <c_wraith> Sure. There are lots of extensions that don't hurt anything. But *some* of them add all sorts of corner cases.
04:09:50 <zoom> for example i discovered a few of the {-# LANGUAGE ... } behaviors and the breadth of what's there is a bit scary to me
04:10:05 <hololeap> i was scared of using any language extensions when i first started, and now i see how many of them really don't hurt at all
04:10:55 <zoom> it almost seems like one has to learn or at least understand all the antecedent versions and behaviors
04:11:20 <c_wraith> *most* extensions can be learned in isolation. They're just a thing that can be added to the base language.
04:11:52 <c_wraith> There are exceptions. Functional dependencies only make any sense with multiple parameter type classes, for instance.
04:12:47 <c_wraith> But for the most part, extensions try to be focused additions to the language.
04:13:34 <hololeap> i remember seeing a list of language extensions that was sorted by relative safety
04:13:49 <dolio> You can use functional dependencies without multi-parameter classes. It means you can only write one instance. :)
04:14:01 <dolio> Like `class C a | -> a where ...`
04:14:24 <c_wraith> so... the same as just writing a function? :P
04:14:26 <hololeap> and it included which ones you could have turned on all the time without having any dangerous corner cases
04:14:30 <c_wraith> (or set thereof)
04:15:22 <hololeap> there were quite a few that were deemed totally safe, like MultiParamTypeClasses, FlexibleContexts, FlexibleInstances, LambdaCase, etc...
04:15:34 <MarcelineVQ> hololeap: search for What I Wish I Knew when learning haskell or something
04:15:40 <zoom> A comment I watched from Simon Peyton Jones scared me too - he said they put as much complication they could get away with without programmers running away.
04:16:04 <hololeap> zoom, it's well-typed complications :)
04:16:18 <c_wraith> It's useful to remember that SPJ is all about accessibility.
04:16:56 <cohn> MarcelineVQ: http://dev.stephendiehl.com/hask/ <-- great read
04:16:58 × LKoen quits (~LKoen@lstlambert-657-1-123-43.w92-154.abo.wanadoo.fr) (Remote host closed the connection)
04:17:20 <hololeap> MarcelineVQ: thank you
04:17:27 <hololeap> zoom: check this out: http://dev.stephendiehl.com/hask/#the-benign
04:17:53 <zoom> cohn and hololeap, thanks, i'll give it a read
04:18:02 × nbloomf quits (~nbloomf@2600:1700:83e0:1f40:190b:21b1:e82d:dbc9) (Quit: My MacBook has gone to sleep. ZZZzzz…)
04:18:05 × machinedgod quits (~machinedg@d67-193-126-196.home3.cgocable.net) (Ping timeout: 240 seconds)
04:18:13 <cohn> np
04:19:47 × GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
04:19:57 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
04:19:57 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
04:19:57 GyroW joins (~GyroW@unaffiliated/gyrow)
04:22:03 conal joins (~conal@64.71.133.70)
04:22:21 <cohn> zoom: this is another good book if you can stomach working through ~ 1,200 pages of text.
04:22:24 <cohn> https://haskellbook.com/
04:25:23 <hololeap> zoom, i remember when i really started to grok haskell was when i understood monad transformers. i'm not sure why, but that was the key for me feeling less overwhelmed and more excited by learning the language
04:27:20 <cohn> this is also worth reading: http://norvig.com/21-days.html
04:27:55 <zoom> cohn, thanks. I have that book on my list. I read through a little of the 21-days but decided ping-ponging back and forth between learnyou and it was a little distracting. my plan is to finish learnyou, then do the 21 days, then the book
04:28:51 <zoom> oops, meant https://www.seas.upenn.edu/~cis194/spring13/lectures.html, not the 21-days
04:30:05 <lechner> hololeap cohn MarcelineVQ: I like Stephen Diehl's book too!
04:30:06 <cohn> zoom: yep, that's a good resource too.
04:30:21 × NemesisD quits (sid24071@gateway/web/irccloud.com/x-tvpdgcumyqbfkxuv) (Read error: Connection reset by peer)
04:30:23 × teehemkay_ quits (sid14792@gateway/web/irccloud.com/x-hzwbijcgsbcqqaio) (Read error: Connection reset by peer)
04:30:31 NemesisD joins (sid24071@gateway/web/irccloud.com/x-fiagphfooejfsfnx)
04:30:34 <cohn> lechner: yea, it's really good stuff! :D
04:30:42 teehemkay_ joins (sid14792@gateway/web/irccloud.com/x-lutymgyquuykwmsi)
04:33:47 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
04:35:32 <dsal> I really liked haskellbook.com.
04:35:52 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
04:35:58 <dsal> It let me pretend like I didn't know anything, which made it a lot easier to learn things.
04:38:54 × zoom quits (44beb1c9@068-190-177-201.res.spectrum.com) (Remote host closed the connection)
04:40:36 day_ joins (~Unknown@unaffiliated/day)
04:42:24 × JSharp quits (sid4580@wikia/JSharp) (Ping timeout: 256 seconds)
04:43:33 JSharp joins (sid4580@wikia/JSharp)
04:44:36 zoom joins (44beb1c9@068-190-177-201.res.spectrum.com)
04:44:40 × day quits (~Unknown@unaffiliated/day) (Ping timeout: 260 seconds)
04:44:40 day_ is now known as day
04:48:57 hackage little-logger 0.2.0 - Basic logging based on co-log https://hackage.haskell.org/package/little-logger-0.2.0 (ejconlon)
04:49:21 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
04:49:25 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
04:49:42 Saukk joins (~Saukk@2001:998:f1:3966:96a6:dee2:2e9:fdf3)
04:50:21 conal joins (~conal@64.71.133.70)
04:50:28 × conal quits (~conal@64.71.133.70) (Client Quit)
04:53:16 × urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna)
04:53:52 × nullheroes quits (~danielvu@168.235.66.22) (Quit: WeeChat 2.9)
04:54:13 conal joins (~conal@64.71.133.70)
04:55:09 × johnw quits (~johnw@haskell/developer/johnw) (Quit: ZNC - http://znc.in)
04:56:37 × howdoi quits (uid224@gateway/web/irccloud.com/x-olozehqnejtdionh) (Quit: Connection closed for inactivity)
04:57:49 × elliott__ quits (~elliott@pool-108-45-154-71.washdc.fios.verizon.net) (Ping timeout: 264 seconds)
04:58:56 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
04:59:26 nullheroes joins (~danielvu@168.235.66.22)
05:01:42 × conal quits (~conal@64.71.133.70) (Read error: Connection reset by peer)
05:01:47 lestrrat joins (~lestrrat@178.162.209.171)
05:03:48 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
05:04:25 × ryansmccoy quits (~ryansmcco@156.96.151.132) (Ping timeout: 240 seconds)
05:04:54 ryansmccoy joins (~ryansmcco@68.235.48.108)
05:06:21 conal joins (~conal@64.71.133.70)
05:10:20 × HarveyPwca quits (~HarveyPwc@c-98-220-98-201.hsd1.il.comcast.net) (Quit: Leaving)
05:11:11 × vk3wtf quits (~doc@27-32-252-91.tpgi.com.au) (Ping timeout: 265 seconds)
05:13:05 × justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 272 seconds)
05:14:36 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
05:16:22 drbean joins (~drbean@TC210-63-209-220.static.apol.com.tw)
05:18:56 cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
05:20:09 justanotheruser joins (~justanoth@unaffiliated/justanotheruser)
05:23:37 bitmagie joins (~Thunderbi@200116b8069e56008db808514c00860b.dip.versatel-1u1.de)
05:29:39 × zoom quits (44beb1c9@068-190-177-201.res.spectrum.com) (Ping timeout: 245 seconds)
05:33:55 × wowi42 quits (~wowi42@51.15.249.183) (Quit: Kowa Bunga!!!)
05:36:01 wowi42 joins (~wowi42@51.15.249.183)
05:36:13 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
05:36:33 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
05:36:55 × sand_dull quits (~theuser@179.48.249.132) (Ping timeout: 240 seconds)
05:39:44 jgt joins (~jgt@188.239.64.32)
05:39:49 × polyrain quits (~polyrain@2001:8003:e501:6901:44d8:84ba:175f:dd38) (Quit: My MacBook has gone to sleep. ZZZzzz…)
05:40:25 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
05:40:31 livvy joins (~livvy@gateway/tor-sasl/livvy)
05:41:09 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
05:44:53 polyrain joins (~polyrain@2001:8003:e501:6901:44d8:84ba:175f:dd38)
05:44:59 × Sheilong quits (uid293653@gateway/web/irccloud.com/x-pmnoughzcdhyigas) (Quit: Connection closed for inactivity)
05:50:44 zeta_0 joins (~zeta@96-64-157-181-static.hfc.comcastbusiness.net)
05:50:52 nineonine joins (~nineonine@216-19-190-182.dyn.novuscom.net)
05:51:14 shafox joins (~shafox@106.51.234.111)
05:53:13 × zeta_0 quits (~zeta@96-64-157-181-static.hfc.comcastbusiness.net) (Quit: rcirc on GNU Emacs 26.3)
05:55:55 gewaltdisney joins (~proletkul@115.79.31.1)
05:56:30 <gewaltdisney> what is the best way to do live coding in haskell in 2020?
05:56:44 <gewaltdisney> ghci?
05:59:43 × kreyren_ quits (~kreyren@fsf/member/kreyren) (Remote host closed the connection)
06:00:02 × lestrrat quits (~lestrrat@178.162.209.171) ()
06:00:08 kreyren_ joins (~kreyren@fsf/member/kreyren)
06:02:00 Jesin joins (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net)
06:03:13 elliott_ joins (~elliott_@pool-108-45-154-71.washdc.fios.verizon.net)
06:03:25 snakemasterflex joins (~snakemast@213.100.206.23)
06:04:58 × constR quits (uid58205@gateway/web/irccloud.com/x-efrkxtuegwrgtzug) (Quit: Connection closed for inactivity)
06:05:22 × ixian8 quits (~mgold@2002:4a74:ba78:1701:0:ff:fe78:6269) (Ping timeout: 260 seconds)
06:06:05 <dsal> ghci is probably the worst.
06:06:55 × vqrs quits (~vqrs@learnprogramming/regular/vqrs) (Ping timeout: 272 seconds)
06:07:02 <dsal> I've done it on occasion in emacs with the interpreter in place over a file, but I usually just write code in files.
06:07:10 × tzh quits (~tzh@2601:448:c500:5300::143b) (Quit: zzz)
06:08:00 <c_wraith> it depends on what you're doing.
06:08:12 vqrs joins (~vqrs@learnprogramming/regular/vqrs)
06:08:13 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
06:08:16 <c_wraith> if you're using tidal, you use ghci
06:10:56 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
06:13:24 × aaaaaa quits (~ArthurStr@host-91-90-11-13.soborka.net) (Quit: leaving)
06:13:37 vk3wtf joins (~doc@14-202-30-62.static.tpgi.com.au)
06:14:00 <gewaltdisney> cool, ghci seems to be the way then :)
06:15:00 × bitmagie quits (~Thunderbi@200116b8069e56008db808514c00860b.dip.versatel-1u1.de) (Quit: bitmagie)
06:15:53 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
06:16:49 GyroW_ joins (~GyroW@d54C03E98.access.telenet.be)
06:16:49 × GyroW_ quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
06:16:49 GyroW_ joins (~GyroW@unaffiliated/gyrow)
06:18:13 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 264 seconds)
06:20:49 × jgt quits (~jgt@188.239.64.32) (Ping timeout: 246 seconds)
06:21:33 × wei2912 quits (~wei2912@unaffiliated/wei2912) (Quit: Lost terminal)
06:24:06 p0a joins (~user@unaffiliated/p0a)
06:24:18 <p0a> Hello how can I offer some documentation corrections in a package on hackage?
06:24:37 <gewaltdisney> curious why you say its the worst dsal
06:25:30 <dsal> It's hard to do multiline, and if you're doing anything remotely complicated, you're going to be sad about having to either throw away a bunch of state or try to recreate it in a file. It's easier to just have a file.
06:25:37 <sshine> p0a, 1) find the project on GitHub (link is on Hackage), 2) search for the thing you want to correct, 3) submit a pull request.
06:26:00 <sshine> p0a, if you want a t-shirt for your efforts, sign up for Hacktoberfest before you do this.
06:26:54 <p0a> sshine: thank you! I am against paraphanelia tho (I still shiver about being given a yo-yo in a math conference)
06:28:16 <nshepperd> true, yoyos are spooky
06:28:37 <sshine> also, yoyos mainly collect dust.
06:28:45 thir joins (~thir@pd9e1baba.dip0.t-ipconnect.de)
06:29:09 <sshine> p0a, there's no guarantee that the package is hosted on GitHub, but it's so often the case.
06:29:28 <p0a> Yeah, it's sqlite-simple which is on github. I didn't realize there's github links, I definitely know what to do now
06:30:07 <sshine> gewaltdisney, I'd go with Emacs + haskell-mode since there's a keyboard shortcut for sending your file to be evaluated in a split-screen REPL. perhaps this is equally doable with VSCode or some other editor. but that's the user experience I'd aim for. :)
06:30:28 <p0a> I can't get Emacs and haskell-mode to work with stack projects, am I doing something wrong?
06:30:43 <p0a> I can give the error if needed
06:30:53 <sshine> gewaltdisney, typing into GHCi is too limiting for anything above one-liners, and you can't easily save.
06:31:32 sshine hasn't run Emacs for a year now and can't remember.
06:31:48 <p0a> NEvermind. I was running haskell-process-cabal-build on a stack project, that's why. lol
06:31:54 <sshine> hehe :)
06:32:11 <p0a> sshine: as with many other issues, I solve it as I'm about to explain it on IRC
06:32:12 <sshine> when I use editor/IDE tooling, I mostly tab into the console and run build commands, anyways...
06:32:37 <p0a> Yeah but one useful feature is to be able to examine the type of a symbol/expression in the source
06:32:45 <sshine> p0a, that's the story of why I never ask questions on StackOverflow. I want to provide enough context for people to be able to help me, and that's usually enough context for me to help myself.
06:32:57 <p0a> hah
06:33:18 <sshine> like, I want to rule out the "did you look in <obvious place X>?" and "did you try <obvious thing Y>?"
06:34:21 <sshine> with obvious being anything I can easily come up with while formulating the question, of course. :) it's just that if I ever try to bite off more than I can chew, I usually have to ask a *lot* of questions.
06:34:46 <p0a> So a basic question now, but can I use sqlite-simple with RIO?
06:34:55 <sshine> why not?
06:35:11 <p0a> For example, SQLText is !Text, but RIO has RIO.Text
06:35:21 <gewaltdisney> sshine thanks! I use emacs but am new to haskell (coming from ocaml). i'll figure out how to set things up this way
06:35:25 <p0a> I'm not sure how that works. Does it know to use RIO.Text instead of Data.Text?
06:35:33 <sshine> p0a, RIO.Text is just a re-export
06:36:03 × ericsagnes quits (~ericsagne@2405:6580:0:5100:9458:e3c2:d11d:f00a) (Ping timeout: 272 seconds)
06:36:08 ixian joins (~mgold@terra.bitplane.org)
06:36:24 <p0a> I don't know what you mean
06:36:30 <sshine> p0a, https://hackage.haskell.org/package/rio-0.1.19.0/docs/src/RIO.Text.html <- all it does is import Data.Text and then only export some of that.
06:36:58 <p0a> okay, but it's called RIO.Text and not Data.Text. So it works anyway?
06:37:20 <sshine> so RIO.Text is just convenience for Data.Text. I think the points RIO is trying to make are 1) Text is so common, let's just have it in our version of Prelude, and 2) let's not include the bad functions.
06:38:09 <sshine> so I don't think you even need to 'import RIO.Text' if you have followed one of the recommended ways of using RIO as your Prelude replacement.
06:38:34 <p0a> Right the introduction to RIO mentions these things more or less, I am just not sure how haskell code works. In the sense that if I write a module that imports Data.Text (how else would they have SQLText be !Text), how can that then be replaced by RIO.Text.Text?
06:38:34 <sshine> p0a, https://github.com/commercialhaskell/rio#import-practices
06:39:13 <p0a> I did read that but I'm still confused about how a module that was built for/with Data.Text would work ok with RIO
06:39:31 <p0a> say I have f :: Data.Text.Text -> Int with f _ = 1. How would that function work if I import RIO instead?
06:39:36 <sshine> so, sqlite-simple may import Data.Text explicitly and your module may import RIO.Text implicitly, but in the end, the same module that exports the same data type is referred to in two places, and they get unified...
06:40:10 <sshine> I think it's actually pretty neat that that works. I remember that you *don't* get that kind of convenience across Standard ML functor (as in parameterised module) application.
06:40:18 <p0a> the signature wouldn't match would it? f ("foo" :: RIO.Text.Text)
06:40:47 <sshine> the type's name is just 'Text'. when you see it as e.g. 'RIO.Text.Text', that's mostly an indicator of how you imported it.
06:41:00 <p0a> Aha. Tricky
06:41:19 <p0a> Thank you
06:41:31 <sshine> if RIO.Text defined 'newtype Text = Derpy Text deriving ...', then RIO.Text.Text would kinda be the same type but you'd get a type mismatch error.
06:42:08 <sshine> but that wouldn't benefit the purpose of RIO's RIO.Text module.
06:42:25 <sshine> they just want to import Text-related stuff automatically and not have partial functions.
06:43:18 ym555 joins (~ym@41.42.210.219)
06:44:13 <koz_> sshine: Derpy Text rofl.
06:44:20 <sshine> I think that if you had to explicitly import RIO.Text, then this would actually be confusing: is their Text even the same? but since it's automatically imported, the purpose of the library is just to provide a list of the Text functions they like (and provide a place for extending this collection without having to deal with upstream).
06:44:45 <sshine> sorry, s/the library/the module/
06:48:16 ericsagnes joins (~ericsagne@2405:6580:0:5100:1d5c:d7d1:5cb4:1102)
06:53:37 × Jeanne-Kamikaze quits (~Jeanne-Ka@68.235.43.166) (Quit: Leaving)
06:54:48 HaeB1 joins (~HaeB@178.239.168.171)
06:57:36 <p0a> When I use `stack new projectname rio' there's some code that let's me use command line arguments
06:57:50 <p0a> I can't understand from looking at the source, is that a hand-crafted solution or does it use getOpt somewhere?
06:58:21 <p0a> Is it logOptionsHandle?
06:59:42 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
07:01:33 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
07:01:33 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
07:01:33 GyroW joins (~GyroW@unaffiliated/gyrow)
07:01:43 jgt joins (~jgt@188.239.64.32)
07:01:55 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
07:05:45 × jgt quits (~jgt@188.239.64.32) (Ping timeout: 240 seconds)
07:05:55 × xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 240 seconds)
07:06:05 <dsal> I've never seen this rio template, but I don't think I like it.
07:06:50 <p0a> Okay, I think I figured out that I now need to read the intro to rio from https://www.fpcomplete.com/haskell/library/rio/
07:06:50 × polyrain quits (~polyrain@2001:8003:e501:6901:44d8:84ba:175f:dd38) (Quit: My MacBook has gone to sleep. ZZZzzz…)
07:07:03 <p0a> Are there any other sources to learn rio from? A book perhaps?
07:09:31 <dsal> I've just seen blog posts and stuff. It looks like it wants to be the next big thing, but makes me learn stuff and accept opinions without me seeing the obvious benefit.
07:10:04 <p0a> what about their exceptions? I read a bit on it and it seemed cool
07:11:00 <dsal> I don't know. I've read some of the stuff and the goal sounded interesting. I like unliftio, but too much of this "I've solved all the problems" kinds of things from that camp. -- someone who can't quit stack
07:11:49 <p0a> Would you recommend I do my project without rio then?
07:12:28 <dsal> Not really. Part of my problem is having to unlearn stuff to learn new stuff to get marginal benefit. If you don't have patterns you're comfortable with, RIO might be good for you.
07:12:41 <p0a> that's what I was thinking dsal
07:13:12 <p0a> I haven't developed a style yet and rio appears to be developed by experts
07:17:39 GyroW_ joins (~GyroW@d54c03e98.access.telenet.be)
07:17:39 × GyroW_ quits (~GyroW@d54c03e98.access.telenet.be) (Changing host)
07:17:39 GyroW_ joins (~GyroW@unaffiliated/gyrow)
07:18:35 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
07:22:46 × thir quits (~thir@pd9e1baba.dip0.t-ipconnect.de) (Remote host closed the connection)
07:23:56 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
07:24:34 no-n joins (sid257727@gateway/web/irccloud.com/x-rjqspinjxdvineod)
07:24:41 × HaskellYogi quits (~vivekrama@49.207.213.15) (Remote host closed the connection)
07:25:49 HaskellYogi joins (~vivekrama@49.207.213.15)
07:26:58 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 246 seconds)
07:27:33 GyroW joins (~GyroW@d54c03e98.access.telenet.be)
07:27:33 × GyroW quits (~GyroW@d54c03e98.access.telenet.be) (Changing host)
07:27:33 GyroW joins (~GyroW@unaffiliated/gyrow)
07:27:40 danvet_ joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
07:31:48 takuan joins (~takuan@178-116-218-225.access.telenet.be)
07:32:27 mathlover2 joins (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4)
07:33:03 × toorevitimirp quits (~tooreviti@117.182.181.38) (Ping timeout: 258 seconds)
07:36:20 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 272 seconds)
07:36:50 GyroW_ joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
07:36:50 × GyroW_ quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
07:36:50 GyroW_ joins (~GyroW@unaffiliated/gyrow)
07:37:28 HaskellYogi joins (~vivekrama@49.207.213.15)
07:37:34 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 256 seconds)
07:37:44 × gentauro quits (~gentauro@unaffiliated/gentauro) (Ping timeout: 256 seconds)
07:40:57 × mathlover2 quits (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4) (Quit: Leaving)
07:42:01 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 260 seconds)
07:43:03 mathlover2 joins (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4)
07:46:50 Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
07:51:43 snakemasterflex joins (~snakemast@213.100.206.23)
07:51:58 polyrain joins (~polyrain@2001:8003:e501:6901:44d8:84ba:175f:dd38)
07:53:05 × vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving)
07:55:16 knupfer joins (~Thunderbi@mue-88-130-61-071.dsl.tropolys.de)
07:56:05 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
08:00:15 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
08:04:25 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
08:19:12 ggole joins (~ggole@2001:8003:8119:7200:10c6:17b0:327d:27c2)
08:20:49 chaosmasttter joins (~chaosmast@p200300c4a73b2e0168c1f453f2fcf16d.dip0.t-ipconnect.de)
08:24:22 xerox_ joins (~xerox@unaffiliated/xerox)
08:25:36 DataComputist joins (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net)
08:26:12 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
08:26:43 × cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 258 seconds)
08:29:28 GyroW_ joins (~GyroW@d54c03e98.access.telenet.be)
08:29:28 × GyroW_ quits (~GyroW@d54c03e98.access.telenet.be) (Changing host)
08:29:28 GyroW_ joins (~GyroW@unaffiliated/gyrow)
08:36:27 × HaeB1 quits (~HaeB@178.239.168.171) (Remote host closed the connection)
08:36:40 coot joins (~coot@37.30.52.16.nat.umts.dynamic.t-mobile.pl)
08:37:58 alp joins (~alp@2a01:e0a:58b:4920:a44e:37a8:158b:d27f)
08:38:17 HaskellYogi joins (~vivekrama@49.207.213.15)
08:41:07 × alexelcu quits (~alexelcu@142.93.180.198) (Quit: ZNC 1.8.2 - https://znc.in)
08:41:49 alexelcu joins (~alexelcu@142.93.180.198)
08:42:41 × alexelcu quits (~alexelcu@142.93.180.198) (Client Quit)
08:43:04 alexelcu joins (~alexelcu@142.93.180.198)
08:43:54 × alexelcu quits (~alexelcu@142.93.180.198) (Client Quit)
08:44:46 alexelcu joins (~alexelcu@142.93.180.198)
08:46:56 Zetagon joins (~leo@c151-177-52-233.bredband.comhem.se)
08:47:27 hackage these-lens 1.0.1 - Lenses for These https://hackage.haskell.org/package/these-lens-1.0.1 (phadej)
08:47:59 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 256 seconds)
08:48:27 hackage these-optics 1.0.1 - Optics for These https://hackage.haskell.org/package/these-optics-1.0.1 (phadej)
08:49:51 madjestic joins (~madjestic@86-88-72-244.fixed.kpn.net)
08:51:15 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Remote host closed the connection)
08:52:50 × Buntspecht quits (~user@unaffiliated/siracusa) (Quit: Bye!)
08:53:55 HaskellYogi joins (~vivekrama@49.207.213.15)
08:57:33 × taurux quits (~taurux@net-188-152-1-207.cust.vodafonedsl.it) (Quit: ZNC 1.7.5 - https://znc.in)
08:57:36 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
08:58:36 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 256 seconds)
08:59:02 polyrain_ joins (~polyrain@203.51.166.163)
08:59:51 HaskellYogi joins (~vivekrama@49.207.213.15)
09:00:50 taurux joins (~taurux@net-188-152-1-207.cust.vodafonedsl.it)
09:00:55 × polyrain quits (~polyrain@2001:8003:e501:6901:44d8:84ba:175f:dd38) (Ping timeout: 240 seconds)
09:01:18 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
09:01:25 × knupfer quits (~Thunderbi@mue-88-130-61-071.dsl.tropolys.de) (Quit: knupfer)
09:02:08 knupfer joins (~Thunderbi@200116b82c6778000192b189ecec5aa7.dip.versatel-1u1.de)
09:05:28 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
09:06:41 m0rphism joins (~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de)
09:08:33 × Flonk quits (~Flonk@ec2-52-40-29-25.us-west-2.compute.amazonaws.com) (Ping timeout: 260 seconds)
09:09:02 Flonk joins (~Flonk@ec2-52-40-29-25.us-west-2.compute.amazonaws.com)
09:09:24 GyroW joins (~GyroW@d54c03e98.access.telenet.be)
09:09:24 × GyroW quits (~GyroW@d54c03e98.access.telenet.be) (Changing host)
09:09:24 GyroW joins (~GyroW@unaffiliated/gyrow)
09:10:04 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 272 seconds)
09:10:42 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 272 seconds)
09:13:01 × hnOsmium0001 quits (uid453710@gateway/web/irccloud.com/x-hdtidkhqzeetbjwg) (Quit: Connection closed for inactivity)
09:15:46 snakemasterflex joins (~snakemast@213.100.206.23)
09:18:11 × xff0x quits (~fox@2001:1a81:52c9:f600:e12b:e4ce:eff2:a3d5) (Ping timeout: 272 seconds)
09:20:03 rusua_ joins (uid124537@gateway/web/irccloud.com/x-sysvorkqwbosrbwq)
09:20:16 xff0x joins (~fox@port-92-193-150-89.dynamic.as20676.net)
09:21:04 blase joins (~blase@4e69b241.skybroadband.com)
09:21:31 rusua_ is now known as rusua
09:22:24 gentauro joins (~gentauro@unaffiliated/gentauro)
09:22:50 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Remote host closed the connection)
09:27:47 mirrorbird joins (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f)
09:27:56 × tiru quits (tiru@gateway/web/irccloud.com/x-xnxbjyohgerhrzfb) (Ping timeout: 240 seconds)
09:28:24 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
09:28:27 × dmj` quits (sid72307@gateway/web/irccloud.com/x-lgfndhesvflaajhx) (Ping timeout: 240 seconds)
09:28:27 × elvishjerricco quits (sid237756@NixOS/user/ElvishJerricco) (Ping timeout: 240 seconds)
09:29:28 dmj` joins (sid72307@gateway/web/irccloud.com/x-adxoyhgdabwnfahc)
09:29:46 avdb joins (~avdb@ip-213-49-123-156.dsl.scarlet.be)
09:29:49 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 246 seconds)
09:30:26 haasn` joins (~haasn@mpv/developer/haasn)
09:30:30 elvishjerricco joins (sid237756@NixOS/user/ElvishJerricco)
09:31:07 Sgeo_ joins (~Sgeo@ool-18b982ad.dyn.optonline.net)
09:31:20 m-renaud_ joins (sid333785@gateway/web/irccloud.com/x-tkucctivkfyvgvtj)
09:31:36 × madjestic quits (~madjestic@86-88-72-244.fixed.kpn.net) (Ping timeout: 272 seconds)
09:31:50 JSharp_ joins (sid4580@wikia/JSharp)
09:31:56 mathlover3 joins (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4)
09:32:07 × alp quits (~alp@2a01:e0a:58b:4920:a44e:37a8:158b:d27f) (Ping timeout: 272 seconds)
09:32:13 × mathlover3 quits (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4) (Remote host closed the connection)
09:32:19 eruditass_ joins (uid248673@gateway/web/irccloud.com/x-iuzbfjvdrultjkys)
09:32:29 × eruditass quits (uid248673@gateway/web/irccloud.com/x-velielirfiuvbxms) (Ping timeout: 240 seconds)
09:32:37 eruditass_ is now known as eruditass
09:32:52 drbrule_ joins (sid395654@gateway/web/irccloud.com/x-upjwrhbxkttxvnlr)
09:33:00 × SrPx quits (sid108780@gateway/web/irccloud.com/x-fufsvtgbqbrimkxs) (Ping timeout: 240 seconds)
09:33:00 × drbrule quits (sid395654@gateway/web/irccloud.com/x-xszuswimxvtaajbg) (Ping timeout: 240 seconds)
09:33:00 × m-renaud quits (sid333785@gateway/web/irccloud.com/x-ucmnbonuwpygsdsu) (Ping timeout: 240 seconds)
09:33:00 m-renaud_ is now known as m-renaud
09:33:00 × JSharp quits (sid4580@wikia/JSharp) (Ping timeout: 240 seconds)
09:33:00 × teehemkay_ quits (sid14792@gateway/web/irccloud.com/x-lutymgyquuykwmsi) (Ping timeout: 240 seconds)
09:33:00 × NemesisD quits (sid24071@gateway/web/irccloud.com/x-fiagphfooejfsfnx) (Ping timeout: 240 seconds)
09:33:00 × carter quits (sid14827@gateway/web/irccloud.com/x-psnnzawtqaxxdkxa) (Ping timeout: 240 seconds)
09:33:00 × Forkk quits (forkk@2600:3c00::f03c:91ff:fe84:de4d) (Ping timeout: 240 seconds)
09:33:00 × mathlover2 quits (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4) (Ping timeout: 240 seconds)
09:33:01 × haasn quits (~haasn@mpv/developer/haasn) (Ping timeout: 240 seconds)
09:33:01 × copypasteque_ quits (~copypaste@2001:41d0:8:b325::1) (Ping timeout: 240 seconds)
09:33:01 JSharp_ is now known as JSharp
09:33:02 drbrule_ is now known as drbrule
09:33:04 bwe_ joins (~bwe@2a01:4f8:1c1c:4878::2)
09:33:04 × bwe quits (~bwe@unaffiliated/bwe) (Ping timeout: 240 seconds)
09:33:16 SrPx joins (sid108780@gateway/web/irccloud.com/x-xulqbpplkjjfywzr)
09:33:17 mathlover2 joins (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4)
09:33:47 Forkk joins (forkk@2600:3c00::f03c:91ff:fe84:de4d)
09:33:53 carter joins (sid14827@gateway/web/irccloud.com/x-qxwtkltudlralpiz)
09:33:56 × Sgeo quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Ping timeout: 240 seconds)
09:33:56 × whataday quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Ping timeout: 240 seconds)
09:33:56 × acertain quits (~acertain@unaffiliated/fread2281) (Ping timeout: 240 seconds)
09:34:05 teehemkay_ joins (sid14792@gateway/web/irccloud.com/x-qrujkmhnrbttdvyo)
09:34:22 NemesisD joins (sid24071@gateway/web/irccloud.com/x-efgfqnbmzmvsdzmv)
09:34:25 tiru joins (tiru@gateway/web/irccloud.com/x-rvknmwmzawzectui)
09:34:34 × liszt quits (sid336875@gateway/web/irccloud.com/x-fgjnvuscjsssyrqb) (Ping timeout: 240 seconds)
09:34:34 × benwr___ quits (sid372383@gateway/web/irccloud.com/x-jllzmgdqvwjjsvpo) (Ping timeout: 240 seconds)
09:34:34 × conjunctive quits (sid433686@gateway/web/irccloud.com/x-kjvfsgpfgehmptub) (Ping timeout: 240 seconds)
09:34:34 × mcfilib quits (sid302703@gateway/web/irccloud.com/x-yljnzhytqmeffwcq) (Ping timeout: 240 seconds)
09:34:34 × lukelau quits (~lukelau@2a03:b0c0:1:d0::1bc:b001) (Ping timeout: 240 seconds)
09:34:37 mcfilib_ joins (sid302703@gateway/web/irccloud.com/x-rzhinfafokictnxq)
09:34:37 lukelau_ joins (~lukelau@2a03:b0c0:1:d0::1bc:b001)
09:34:43 liszt_ joins (sid336875@gateway/web/irccloud.com/x-yllqqkokdlggifua)
09:34:52 copypasteque_ joins (~copypaste@2001:41d0:8:b325::1)
09:34:53 × mathlover2 quits (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4) (Client Quit)
09:34:55 × mantovani quits (~mantovani@104.131.207.121) (Ping timeout: 240 seconds)
09:35:06 × mflux quits (flux@coffee.modeemi.fi) (Remote host closed the connection)
09:35:19 flx_ joins (flux@coffee.modeemi.fi)
09:35:19 mathlover2 joins (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4)
09:35:34 flx_ is now known as mflux
09:35:36 acertain joins (~acertain@unaffiliated/fread2281)
09:36:03 whataday joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
09:36:19 benwr___ joins (sid372383@gateway/web/irccloud.com/x-katbkeqzspxvymgm)
09:36:31 fendor__ is now known as fendor
09:36:33 conjunctive joins (sid433686@gateway/web/irccloud.com/x-ddwejxzgxrdkpmwd)
09:36:46 thir joins (~thir@pd9e1baba.dip0.t-ipconnect.de)
09:37:05 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Ping timeout: 240 seconds)
09:37:29 mantovani joins (~mantovani@104.131.207.121)
09:37:54 × mathlover2 quits (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4) (Client Quit)
09:38:12 mathlover2 joins (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4)
09:39:36 × thir quits (~thir@pd9e1baba.dip0.t-ipconnect.de) (Remote host closed the connection)
09:40:28 × polyrain_ quits (~polyrain@203.51.166.163) (Quit: My MacBook has gone to sleep. ZZZzzz…)
09:40:32 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
09:41:48 carlomagno1 joins (~cararell@inet-hqmc01-o.oracle.com)
09:43:45 × carlomagno quits (~cararell@inet-hqmc02-o.oracle.com) (Ping timeout: 240 seconds)
09:47:56 Lycurgus joins (~niemand@98.4.96.130)
09:50:36 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 272 seconds)
09:54:24 LKoen joins (~LKoen@81.255.219.130)
09:54:50 × LKoen quits (~LKoen@81.255.219.130) (Read error: Connection reset by peer)
09:55:19 LKoen joins (~LKoen@81.255.219.130)
09:55:29 mav1 joins (~mav@p5b02806a.dip0.t-ipconnect.de)
09:56:20 larsivi joins (~larsivi@84.39.117.57)
10:01:54 ggole- joins (~ggole@2001:8003:8119:7200:10c6:17b0:327d:27c2)
10:02:03 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
10:05:10 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 246 seconds)
10:05:20 flx_ joins (flux@coffee.modeemi.fi)
10:05:24 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
10:05:25 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
10:05:25 GyroW joins (~GyroW@unaffiliated/gyrow)
10:05:47 ibloom_ joins (sid350277@gateway/web/irccloud.com/x-tcspdyzziimwvrpe)
10:06:00 coot_ joins (~coot@37.30.52.16.nat.umts.dynamic.t-mobile.pl)
10:06:46 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
10:07:02 × avdb quits (~avdb@ip-213-49-123-156.dsl.scarlet.be) (Quit: WeeChat 2.9)
10:07:11 alexelcu_ joins (~alexelcu@142.93.180.198)
10:07:32 xerox__ joins (~xerox@unaffiliated/xerox)
10:07:34 HaskellYogi joins (~vivekrama@49.207.213.15)
10:08:15 × ggole quits (~ggole@2001:8003:8119:7200:10c6:17b0:327d:27c2) (Remote host closed the connection)
10:08:15 × ixian quits (~mgold@terra.bitplane.org) (Ping timeout: 240 seconds)
10:08:15 ixian joins (~mgold@2002:4a74:ba78:1701:0:ff:fe78:6269)
10:08:15 × tiru quits (tiru@gateway/web/irccloud.com/x-rvknmwmzawzectui) (Ping timeout: 240 seconds)
10:08:15 × ibloom quits (sid350277@gateway/web/irccloud.com/x-ymkdxafhqeygykpz) (Ping timeout: 240 seconds)
10:08:15 × mflux quits (flux@coffee.modeemi.fi) (Read error: Connection reset by peer)
10:08:15 tiru joins (tiru@gateway/web/irccloud.com/session)
10:08:15 × alexelcu quits (~alexelcu@142.93.180.198) (Ping timeout: 240 seconds)
10:08:16 × i7c quits (DJeiGgXtyX@unaffiliated/i7c) (Ping timeout: 240 seconds)
10:08:16 × tiru quits (tiru@gateway/web/irccloud.com/session) (Changing host)
10:08:16 tiru joins (tiru@gateway/web/irccloud.com/x-flbugcikdclyotgz)
10:08:16 ibloom_ is now known as ibloom
10:08:24 flx_ is now known as mflux
10:08:25 × luigy quits (~luigy@104.236.106.229) (Ping timeout: 240 seconds)
10:09:23 i7c joins (C10NftuPJ8@unaffiliated/i7c)
10:09:43 Wuzzy joins (~Wuzzy@p5790e6f5.dip0.t-ipconnect.de)
10:09:53 × coot quits (~coot@37.30.52.16.nat.umts.dynamic.t-mobile.pl) (Ping timeout: 265 seconds)
10:09:53 coot_ is now known as coot
10:09:59 × p0a quits (~user@unaffiliated/p0a) (Quit: bye)
10:10:14 × xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 272 seconds)
10:10:54 luigy joins (~luigy@104.236.106.229)
10:12:31 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 246 seconds)
10:13:33 HaskellYogi joins (~vivekrama@49.207.213.15)
10:14:25 Lord_of_Life joins (~Lord@unaffiliated/lord-of-life/x-0885362)
10:14:58 hackage wai-feature-flags 0.1.0.0 - Feature flag support for WAI applications. https://hackage.haskell.org/package/wai-feature-flags-0.1.0.0 (JasperWoudenberg)
10:15:33 × xerox__ quits (~xerox@unaffiliated/xerox) (Ping timeout: 260 seconds)
10:15:57 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Remote host closed the connection)
10:16:24 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
10:17:36 p0a joins (~user@unaffiliated/p0a)
10:17:43 p0a parts (~user@unaffiliated/p0a) ()
10:19:17 pangol joins (~pangol@5.202.178.210)
10:19:17 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 260 seconds)
10:20:53 × chaosmasttter quits (~chaosmast@p200300c4a73b2e0168c1f453f2fcf16d.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
10:21:03 xerox_ joins (~xerox@unaffiliated/xerox)
10:21:38 × Lycurgus quits (~niemand@98.4.96.130) (Quit: Exeunt)
10:23:25 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
10:25:01 <maralorn> Is there a nicer function for \(x :: IO ()) -> race_ (concurrently_ x (threadDelay 20000)) (threadDelay 500000)?
10:25:08 avdb joins (~avdb@ip-213-49-123-156.dsl.scarlet.be)
10:26:09 HaskellYogi joins (~vivekrama@49.207.213.15)
10:27:18 × pangol quits (~pangol@5.202.178.210) (Quit: Leaving)
10:29:49 × xelxebar quits (~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection)
10:30:25 × xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 240 seconds)
10:30:48 × knupfer quits (~Thunderbi@200116b82c6778000192b189ecec5aa7.dip.versatel-1u1.de) (Quit: knupfer)
10:30:54 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 256 seconds)
10:30:54 xelxebar joins (~xelxebar@gateway/tor-sasl/xelxebar)
10:30:56 knupfer joins (~Thunderbi@200116b82c677800f4b51c23ff7d0e57.dip.versatel-1u1.de)
10:31:38 HaskellYogi joins (~vivekrama@49.207.213.15)
10:32:45 × bollu quits (~bollu@139.59.46.74) (Remote host closed the connection)
10:32:54 × avdb quits (~avdb@ip-213-49-123-156.dsl.scarlet.be) (Quit: WeeChat 2.9)
10:33:04 × shafox quits (~shafox@106.51.234.111) (Remote host closed the connection)
10:33:50 mathlover3 joins (~mathlover@cpe-67-248-97-14.nycap.res.rr.com)
10:33:55 xerox_ joins (~xerox@unaffiliated/xerox)
10:34:49 × ericsagnes quits (~ericsagne@2405:6580:0:5100:1d5c:d7d1:5cb4:1102) (Ping timeout: 272 seconds)
10:35:28 × jwynn6 quits (~jwynn6@050-088-122-078.res.spectrum.com) (Ping timeout: 260 seconds)
10:35:35 shafox joins (~shafox@106.51.234.111)
10:36:37 × mathlover2 quits (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4) (Ping timeout: 260 seconds)
10:36:50 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 272 seconds)
10:40:28 AlterEgo- joins (~ladew@124-198-158-163.dynamic.caiway.nl)
10:41:47 × xff0x quits (~fox@port-92-193-150-89.dynamic.as20676.net) (Ping timeout: 265 seconds)
10:44:58 shatriff joins (~vitaliish@130.180.218.188)
10:45:57 × shatriff quits (~vitaliish@130.180.218.188) (Remote host closed the connection)
10:47:19 ericsagnes joins (~ericsagne@2405:6580:0:5100:f195:61e7:b1b6:6036)
10:47:37 GyroW_ joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
10:47:38 × GyroW_ quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
10:47:38 GyroW_ joins (~GyroW@unaffiliated/gyrow)
10:48:18 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 260 seconds)
10:50:54 × Sgeo_ quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer)
10:51:07 Franciman joins (~francesco@host-212-171-42-250.retail.telecomitalia.it)
10:51:42 xff0x joins (~fox@2001:1a81:52c9:f600:1d0d:f15:77e4:d5da)
10:53:56 cosimone joins (~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6)
10:58:05 × ixlun quits (~matthew@213.205.241.94) (Ping timeout: 240 seconds)
11:00:22 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
11:00:49 × mav1 quits (~mav@p5b02806a.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
11:02:47 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
11:03:37 sagax joins (~sagax_nb@213.138.71.146)
11:04:49 snakemasterflex joins (~snakemast@213.100.206.23)
11:05:59 × coot quits (~coot@37.30.52.16.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
11:07:20 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
11:07:27 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
11:07:28 × zariuq quits (~zar@fw2.ciirc.cvut.cz) (Remote host closed the connection)
11:08:27 zariuq joins (~zar@fw2.ciirc.cvut.cz)
11:09:25 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
11:12:45 × rprije quits (~rprije@203.214.95.251) (Ping timeout: 240 seconds)
11:14:05 solonarv joins (~solonarv@astrasbourg-653-1-252-112.w92-161.abo.wanadoo.fr)
11:18:02 HaskellYogi joins (~vivekrama@49.207.213.15)
11:18:48 mav1 joins (~mav@p5b02806a.dip0.t-ipconnect.de)
11:27:10 zargoertzel joins (~zar@fw5.ciirc.cvut.cz)
11:28:38 × Saukk quits (~Saukk@2001:998:f1:3966:96a6:dee2:2e9:fdf3) (Remote host closed the connection)
11:29:34 raehik1 joins (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
11:30:13 × zariuq quits (~zar@fw2.ciirc.cvut.cz) (Ping timeout: 264 seconds)
11:30:58 hackage publish 2.1.5 - Publishing tools for papers, books, and presentations https://hackage.haskell.org/package/publish-2.1.5 (AndrewCowie)
11:34:37 hekkaidekapus} joins (~tchouri@gateway/tor-sasl/hekkaidekapus)
11:35:00 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 256 seconds)
11:35:33 thir joins (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de)
11:36:09 __monty__ joins (~toonn@unaffiliated/toonn)
11:36:23 × hekkaidekapus{ quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
11:41:52 Tops2 joins (~Tobias@dyndsl-095-033-090-035.ewe-ip-backbone.de)
11:44:24 quazimodo joins (~quazimodo@60-240-169-126.static.tpgi.com.au)
11:44:52 × thir quits (~thir@p200300f27f0fc60004d129737887aa72.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
11:48:53 × alx741_ quits (~alx741@181.196.69.166) (Ping timeout: 260 seconds)
11:48:57 hackage elm-street 0.1.0.3 - Crossing the road between Haskell and Elm https://hackage.haskell.org/package/elm-street-0.1.0.3 (HolmuskTechTeam)
11:49:49 irc_bot_9000 joins (~irc_bot_9@60.54.96.226)
11:50:45 ksixty joins (~Adium@static.100.218.46.78.clients.your-server.de)
11:50:51 <irc_bot_9000> hi, haskell n00b here. From the paper "Why Functional Programming Matters" by John Hughes, can someone explain the optimization performed by the introduction of maximize`/minimize` ?
11:51:13 <irc_bot_9000> it seems to be that it have to iterate through the tree anyways, I don't see how it optimizes the search algorithm
11:55:27 hackage silkscreen 0.0.0.1 - Prettyprinting transformers. https://hackage.haskell.org/package/silkscreen-0.0.0.1 (robrix)
11:55:54 × whataday quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
11:56:24 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 258 seconds)
11:57:01 whataday joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
11:57:09 × mirrorbird quits (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f) (Ping timeout: 272 seconds)
11:57:45 HaskellYogi joins (~vivekrama@49.207.213.15)
11:58:06 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
12:00:01 × larsivi quits (~larsivi@84.39.117.57) ()
12:00:20 jle` joins (~mstksg@unaffiliated/mstksg)
12:02:58 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 272 seconds)
12:03:07 alx741_ joins (~alx741@186.178.110.22)
12:03:47 HaskellYogi joins (~vivekrama@49.207.213.15)
12:03:52 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
12:05:42 madjestic joins (~madjestic@86-88-72-244.fixed.kpn.net)
12:06:58 hackage free-functors 1.2 - Free functors, adjoint to functors that forget class constraints. https://hackage.haskell.org/package/free-functors-1.2 (SjoerdVisscher)
12:08:02 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 272 seconds)
12:08:05 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
12:08:14 oo_miguel joins (~miguel@89-72-187-203.dynamic.chello.pl)
12:08:29 × HaskellYogi quits (~vivekrama@49.207.213.15) (Ping timeout: 260 seconds)
12:10:18 × solonarv quits (~solonarv@astrasbourg-653-1-252-112.w92-161.abo.wanadoo.fr) (Read error: Connection reset by peer)
12:10:39 solonarv joins (~solonarv@astrasbourg-653-1-252-112.w92-161.abo.wanadoo.fr)
12:11:16 × gewaltdisney quits (~proletkul@115.79.31.1) (Quit: Lost terminal)
12:11:38 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
12:13:24 × oo_miguel quits (~miguel@89-72-187-203.dynamic.chello.pl) (Quit: WeeChat 2.3)
12:15:19 oo_miguel joins (~miguel@89-72-187-203.dynamic.chello.pl)
12:15:33 × irc_bot_9000 quits (~irc_bot_9@60.54.96.226) (Ping timeout: 265 seconds)
12:15:42 × oo_miguel quits (~miguel@89-72-187-203.dynamic.chello.pl) (Client Quit)
12:16:59 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 240 seconds)
12:21:39 × madjestic quits (~madjestic@86-88-72-244.fixed.kpn.net) (Quit: Lost terminal)
12:26:38 × ksixty quits (~Adium@static.100.218.46.78.clients.your-server.de) (Quit: Leaving.)
12:27:10 polyrain joins (~polyrain@2001:8003:e501:6901:750a:d8b5:8b8:5ae6)
12:27:27 hackage vulkan 3.6.8 - Bindings to the Vulkan graphics API. https://hackage.haskell.org/package/vulkan-3.6.8 (jophish)
12:28:21 × polyrain quits (~polyrain@2001:8003:e501:6901:750a:d8b5:8b8:5ae6) (Client Quit)
12:30:10 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
12:31:49 × taurux quits (~taurux@net-188-152-1-207.cust.vodafonedsl.it) (Ping timeout: 256 seconds)
12:32:53 taurux joins (~taurux@net-188-152-78-10.cust.vodafonedsl.it)
12:34:15 shatriff joins (~vitaliish@130.180.218.188)
12:37:12 × knupfer quits (~Thunderbi@200116b82c677800f4b51c23ff7d0e57.dip.versatel-1u1.de) (Quit: knupfer)
12:37:16 × taurux quits (~taurux@net-188-152-78-10.cust.vodafonedsl.it) (Ping timeout: 256 seconds)
12:37:23 knupfer joins (~Thunderbi@200116b82c677800f4b51c23ff7d0e57.dip.versatel-1u1.de)
12:37:45 taurux joins (~taurux@net-93-144-10-156.cust.vodafonedsl.it)
12:38:03 × perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 2.9)
12:38:21 _Alleria joins (~AllahuAkb@2604:2000:1484:26:40a5:ffd0:b706:8d98)
12:38:25 × shatriff quits (~vitaliish@130.180.218.188) (Ping timeout: 240 seconds)
12:39:05 × jb55 quits (~jb55@gateway/tor-sasl/jb55) (Remote host closed the connection)
12:39:31 jb55 joins (~jb55@gateway/tor-sasl/jb55)
12:41:40 Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas)
12:41:41 mirrorbird joins (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f)
12:41:47 × Alleria_ quits (~AllahuAkb@2604:2000:1484:26:49a5:3539:b389:fbc6) (Ping timeout: 260 seconds)
12:46:33 × mirrorbird quits (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f) (Ping timeout: 272 seconds)
12:52:58 snakemasterflex joins (~snakemast@213.100.206.23)
12:54:31 mirrorbird joins (~psutcliff@m83-185-94-227.cust.tele2.se)
12:57:36 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 265 seconds)
12:59:16 perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
13:03:14 × perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Client Quit)
13:05:43 × mirrorbird quits (~psutcliff@m83-185-94-227.cust.tele2.se) (Quit: Leaving)
13:06:04 guest74637 joins (~guest7463@cryptofree.cstorm.is)
13:09:33 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
13:09:56 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
13:10:06 × Rudd0 quits (~Rudd0@185.189.115.103) (Ping timeout: 272 seconds)
13:10:15 × guest74637 quits (~guest7463@cryptofree.cstorm.is) (Remote host closed the connection)
13:10:32 guest74637 joins (~guest7463@cryptofree.cstorm.is)
13:10:32 × guest74637 quits (~guest7463@cryptofree.cstorm.is) (Max SendQ exceeded)
13:11:22 × jle` quits (~mstksg@unaffiliated/mstksg) (Ping timeout: 272 seconds)
13:13:39 perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
13:19:20 × perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 2.9)
13:22:17 × xff0x quits (~fox@2001:1a81:52c9:f600:1d0d:f15:77e4:d5da) (Ping timeout: 260 seconds)
13:22:52 × ishutin_ quits (~Ishutin@92-249-150-146.static.digikabel.hu) (Read error: Connection reset by peer)
13:22:59 ishutin joins (~Ishutin@92-249-150-146.static.digikabel.hu)
13:24:15 × Zetagon quits (~leo@c151-177-52-233.bredband.comhem.se) (Remote host closed the connection)
13:25:05 × notzmv quits (~user@unaffiliated/zmv) (Ping timeout: 256 seconds)
13:25:35 snakemasterflex joins (~snakemast@213.100.206.23)
13:32:20 machinedgod joins (~machinedg@d67-193-126-196.home3.cgocable.net)
13:32:43 polyrain joins (~polyrain@2001:8003:e501:6901:5451:58df:dd7d:42b9)
13:34:23 Amedeo joins (~Username@host-79-51-170-9.retail.telecomitalia.it)
13:35:02 × Amedeo quits (~Username@host-79-51-170-9.retail.telecomitalia.it) (Read error: Connection reset by peer)
13:38:29 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
13:40:03 Amras joins (~Amras@unaffiliated/amras0000)
13:41:42 × knupfer quits (~Thunderbi@200116b82c677800f4b51c23ff7d0e57.dip.versatel-1u1.de) (Quit: knupfer)
13:41:50 knupfer joins (~Thunderbi@200116b82c6778009150ae4589703a3d.dip.versatel-1u1.de)
13:43:31 × drbean quits (~drbean@TC210-63-209-220.static.apol.com.tw) (Ping timeout: 265 seconds)
13:47:17 HaskellYogi joins (~vivekrama@49.207.213.15)
13:51:39 notzmv joins (~user@unaffiliated/zmv)
13:52:50 berberman joins (~berberman@123.118.108.235)
13:53:38 × HaskellYogi quits (~vivekrama@49.207.213.15) (Quit: Sayonara. Long live Haskell)
13:54:52 Zetagon joins (~leo@c151-177-52-233.bredband.comhem.se)
13:56:11 xff0x joins (~fox@217.110.198.158)
13:56:43 × polyrain quits (~polyrain@2001:8003:e501:6901:5451:58df:dd7d:42b9) (Quit: My MacBook has gone to sleep. ZZZzzz…)
13:56:44 plutoniix joins (~q@ppp-27-55-78-20.revip3.asianet.co.th)
13:57:13 × MindlessDrone quits (~MindlessD@unaffiliated/mindlessdrone) (Ping timeout: 264 seconds)
14:00:19 MindlessDrone joins (~MindlessD@unaffiliated/mindlessdrone)
14:01:57 hackage pretty-diff 0.2.0.1 - Pretty printing a diff of two values. https://hackage.haskell.org/package/pretty-diff-0.2.0.1 (JasperWoudenberg)
14:02:01 geekosaur joins (ae68c070@cpe-174-104-192-112.neo.res.rr.com)
14:03:47 Maijin joins (~Maijin@84.39.116.180)
14:04:22 × notzmv quits (~user@unaffiliated/zmv) (Remote host closed the connection)
14:05:20 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
14:07:13 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 260 seconds)
14:08:22 × justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) ()
14:09:13 notzmv joins (~user@unaffiliated/zmv)
14:09:25 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
14:13:45 urodna joins (~urodna@unaffiliated/urodna)
14:14:12 × ericsagnes quits (~ericsagne@2405:6580:0:5100:f195:61e7:b1b6:6036) (Ping timeout: 260 seconds)
14:16:14 renzhi joins (~renzhi@modemcable070.17-177-173.mc.videotron.ca)
14:19:13 tzh joins (~tzh@2601:448:c500:5300::143b)
14:20:28 nbloomf joins (~nbloomf@2600:1700:83e0:1f40:190b:21b1:e82d:dbc9)
14:20:55 × fendor quits (~fendor@178.165.130.169.wireless.dyn.drei.com) (Remote host closed the connection)
14:21:25 × plutoniix quits (~q@ppp-27-55-78-20.revip3.asianet.co.th) (Ping timeout: 240 seconds)
14:26:45 snakemasterflex joins (~snakemast@213.100.206.23)
14:26:51 ericsagnes joins (~ericsagne@2405:6580:0:5100:303d:1ce9:8a60:670b)
14:27:33 × xff0x quits (~fox@217.110.198.158) (Ping timeout: 260 seconds)
14:29:55 jollygood2 joins (~bc815b99@217.29.117.252)
14:32:19 <jollygood2> > printf "%g" 1.0 :: String
14:32:21 <lambdabot> "1.0"
14:32:32 <jollygood2> is this expected and deliberate? it doesn't match behavior of printf in C
14:34:37 plutoniix joins (~q@node-uib.pool-125-24.dynamic.totinternet.net)
14:35:46 × elliott_ quits (~elliott_@pool-108-45-154-71.washdc.fios.verizon.net) (Read error: Connection reset by peer)
14:36:05 elliott_ joins (~elliott_@pool-108-45-154-71.washdc.fios.verizon.net)
14:39:16 thir joins (~thir@p200300f27f0fc6006d5b5f66c58af271.dip0.t-ipconnect.de)
14:39:57 jneira joins (501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206)
14:42:10 × notzmv quits (~user@unaffiliated/zmv) (Remote host closed the connection)
14:42:52 notzmv joins (~user@unaffiliated/zmv)
14:45:26 × notzmv quits (~user@unaffiliated/zmv) (Remote host closed the connection)
14:46:17 notzmv joins (~user@unaffiliated/zmv)
14:47:37 × elliott_ quits (~elliott_@pool-108-45-154-71.washdc.fios.verizon.net) (Ping timeout: 260 seconds)
14:49:16 × nbloomf quits (~nbloomf@2600:1700:83e0:1f40:190b:21b1:e82d:dbc9) (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:49:34 <tomsmeding> jollygood2: see the last part of the documentation: https://hackage.haskell.org/package/base-4.14.0.0/docs/Text-Printf.html#v:printf
14:50:53 × plutoniix quits (~q@node-uib.pool-125-24.dynamic.totinternet.net) (Ping timeout: 260 seconds)
14:51:47 × Franciman quits (~francesco@host-212-171-42-250.retail.telecomitalia.it) (Ping timeout: 240 seconds)
14:53:44 <jollygood2> tomsmeding ok. I like C's behavior better, but it is what it is
14:54:06 × thir quits (~thir@p200300f27f0fc6006d5b5f66c58af271.dip0.t-ipconnect.de) (Remote host closed the connection)
14:54:21 nbloomf joins (~nbloomf@2600:1700:83e0:1f40:190b:21b1:e82d:dbc9)
14:54:56 <tomsmeding> ¯\_(ツ)_/¯
14:56:18 jchia1 joins (~jchia@58.32.34.80)
14:56:38 ddellacosta joins (~dd@86.106.121.168)
14:56:47 jchia_1 joins (~jchia@58.32.37.149)
14:56:54 jchia__1 joins (~jchia@58.32.37.149)
14:56:55 × jchia quits (~jchia@58.32.37.1) (Ping timeout: 244 seconds)
14:57:10 × jchia_ quits (~jchia@58.32.37.220) (Read error: Connection reset by peer)
14:57:28 × jchia__ quits (~jchia@58.32.37.220) (Ping timeout: 265 seconds)
14:57:58 oisdk joins (~oisdk@2001:bb6:3329:d100:693b:1e64:c063:cc27)
15:00:02 × Maijin quits (~Maijin@84.39.116.180) ()
15:00:36 × jchia1 quits (~jchia@58.32.34.80) (Read error: Connection reset by peer)
15:02:16 × Axman6 quits (~Axman6@pdpc/supporter/student/Axman6) (Remote host closed the connection)
15:02:39 jchia__ joins (~jchia@58.32.33.217)
15:03:25 × jchia__1 quits (~jchia@58.32.37.149) (Ping timeout: 240 seconds)
15:03:28 × jchia_1 quits (~jchia@58.32.37.149) (Ping timeout: 258 seconds)
15:04:55 <maerwald> "I like C's behavior better" ...so as long as you don't pass user input into it :p
15:05:28 plutoniix joins (~q@ppp-27-55-78-20.revip3.asianet.co.th)
15:06:07 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
15:07:25 × knupfer quits (~Thunderbi@200116b82c6778009150ae4589703a3d.dip.versatel-1u1.de) (Remote host closed the connection)
15:07:38 knupfer joins (~Thunderbi@200116b82c677800151afd79b449efac.dip.versatel-1u1.de)
15:08:31 × plutoniix quits (~q@ppp-27-55-78-20.revip3.asianet.co.th) (Client Quit)
15:08:43 <tomsmeding> maerwald: that's not really what the question was about ;)
15:08:49 jaj[m] joins (jajjoachim@gateway/shell/matrix.org/x-uayrvcrqbmwzsqhw)
15:09:23 <maerwald> I wasn't answering the question :)
15:10:14 thir joins (~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
15:10:35 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
15:12:50 jchia_ joins (~jchia@45.32.62.73)
15:13:17 jle` joins (~mstksg@cpe-23-240-75-236.socal.res.rr.com)
15:13:17 × jle` quits (~mstksg@cpe-23-240-75-236.socal.res.rr.com) (Changing host)
15:13:17 jle` joins (~mstksg@unaffiliated/mstksg)
15:14:06 fendor joins (~fendor@178.165.130.169.wireless.dyn.drei.com)
15:14:25 × thir quits (~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
15:14:25 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Ping timeout: 240 seconds)
15:16:09 × jchia_ quits (~jchia@45.32.62.73) (Remote host closed the connection)
15:16:31 bloodstalker joins (~bloodstal@46.166.187.154)
15:17:05 jchia_ joins (~jchia@58.32.33.217)
15:17:46 thir joins (~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de)
15:24:09 jchia joins (~jchia@58.32.34.52)
15:25:04 × jneira quits (501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206) (Ping timeout: 246 seconds)
15:26:23 xff0x joins (~fox@2001:1a81:52c9:f600:1d0d:f15:77e4:d5da)
15:26:37 kritzefitz joins (~kritzefit@212.86.56.80)
15:32:27 <jollygood2> %10s flag in printf alignts to right, %-10s to the left, but is there a way to center the text?
15:33:08 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
15:33:15 × LKoen quits (~LKoen@81.255.219.130) (Remote host closed the connection)
15:33:18 GyroW joins (~GyroW@d54C03E98.access.telenet.be)
15:33:19 × GyroW quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
15:33:19 GyroW joins (~GyroW@unaffiliated/gyrow)
15:33:39 <geekosaur> there is not, neither in haskell nor C printf
15:33:57 × nbloomf quits (~nbloomf@2600:1700:83e0:1f40:190b:21b1:e82d:dbc9) (Quit: My MacBook has gone to sleep. ZZZzzz…)
15:35:25 × ddellacosta quits (~dd@86.106.121.168) (Ping timeout: 240 seconds)
15:37:58 × thir quits (~thir@p200300f27f0fc60038c1b16891cbfa03.dip0.t-ipconnect.de) (Remote host closed the connection)
15:38:05 zacts joins (~zacts@dragora/developer/zacts)
15:40:51 × notzmv quits (~user@unaffiliated/zmv) (Remote host closed the connection)
15:41:19 justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311)
15:41:36 notzmv joins (~user@unaffiliated/zmv)
15:42:20 × Gerula quits (~Gerula@unaffiliated/gerula) (Quit: Leaving)
15:42:31 elliott__ joins (~elliott@pool-108-45-154-71.washdc.fios.verizon.net)
15:44:56 todda7 joins (~torstein@athedsl-4367507.home.otenet.gr)
15:45:21 conal joins (~conal@64.71.133.70)
15:45:45 × conal quits (~conal@64.71.133.70) (Client Quit)
15:45:49 × mav1 quits (~mav@p5b02806a.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
15:48:42 × jchia__ quits (~jchia@58.32.33.217) (Read error: Connection reset by peer)
15:48:42 × jchia_ quits (~jchia@58.32.33.217) (Read error: Connection reset by peer)
15:49:04 × jchia quits (~jchia@58.32.34.52) (Read error: Connection reset by peer)
15:49:39 × notzmv quits (~user@unaffiliated/zmv) (Remote host closed the connection)
15:49:50 jchia_ joins (~jchia@58.32.35.239)
15:50:18 notzmv joins (~user@unaffiliated/zmv)
15:51:45 cfricke joins (~cfricke@unaffiliated/cfricke)
15:51:53 × ekleog quits (~ii@prologin/ekleog) (Quit: back soon)
15:53:49 ekleog joins (~ii@prologin/ekleog)
15:54:56 jchia__ joins (~jchia@58.32.35.239)
15:55:29 <jollygood2> @hoogle Show a => IO a
15:55:30 <lambdabot> System.Exit exitFailure :: IO a
15:55:30 <lambdabot> System.Exit exitSuccess :: IO a
15:55:30 <lambdabot> GHC.IO.Handle.Internals ioe_closedHandle :: IO a
15:55:44 <jollygood2> what function is that? reading a line from stdin, and then trying to read it with read
15:55:49 <jollygood2> @hoogle Read a => IO a
15:55:50 <lambdabot> Prelude readLn :: Read a => IO a
15:55:50 <lambdabot> System.IO readLn :: Read a => IO a
15:55:50 <lambdabot> Test.Hspec.Discover readLn :: Read a => IO a
15:55:55 <jollygood2> nm ;)
15:56:03 [RuCTFE]tswr joins (~RuCTFE]ts@195.140.213.38)
15:57:20 × cfricke quits (~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
15:57:26 jchia joins (~jchia@58.32.32.136)
15:57:29 <geekosaur> the Show version is `print', fwiw
15:58:58 hackage simple-cabal 0.1.3 - Cabal file wrapper library https://hackage.haskell.org/package/simple-cabal-0.1.3 (JensPetersen)
15:59:27 × justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) (Ping timeout: 240 seconds)
16:00:19 wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
16:01:17 Rudd0 joins (~Rudd0@185.189.115.108)
16:04:02 LKoen joins (~LKoen@81.255.219.130)
16:06:52 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
16:07:22 GyroW_ joins (~GyroW@d54C03E98.access.telenet.be)
16:07:22 × GyroW_ quits (~GyroW@d54C03E98.access.telenet.be) (Changing host)
16:07:22 GyroW_ joins (~GyroW@unaffiliated/gyrow)
16:07:34 Gerula joins (~Gerula@unaffiliated/gerula)
16:08:25 × GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
16:09:24 mpickering_ is now known as mpicekring
16:09:27 mpicekring is now known as mpickering
16:09:43 chrpape joins (~user@2a01:4f9:c010:632d::1)
16:11:04 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
16:11:16 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds)
16:12:22 <tomsmeding> is there a simple way to make command-line hoogle print the _package_ a particular module is from?
16:19:25 × aarvar quits (~foewfoiew@50.35.43.33) (Ping timeout: 240 seconds)
16:21:06 × raehik1 quits (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
16:23:10 raehik1 joins (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
16:24:55 × xff0x quits (~fox@2001:1a81:52c9:f600:1d0d:f15:77e4:d5da) (Ping timeout: 240 seconds)
16:25:40 notzmv` joins (~user@177.45.26.174)
16:26:08 xff0x joins (~fox@2001:1a81:52c9:f600:f5f2:9982:d51b:11e1)
16:27:53 knupfer1 joins (~Thunderbi@200116b82c67780049b0f8914a41620c.dip.versatel-1u1.de)
16:28:36 <c_wraith> can't ghc-pkg do that?
16:28:59 ping is now known as niko
16:30:12 <c_wraith> yeah... it depends on having a package database, of course, but ghc-pkg find-module does exist
16:30:52 × notzmv` quits (~user@177.45.26.174) (Ping timeout: 258 seconds)
16:31:17 × knupfer quits (~Thunderbi@200116b82c677800151afd79b449efac.dip.versatel-1u1.de) (Ping timeout: 260 seconds)
16:31:17 knupfer1 is now known as knupfer
16:31:53 × notzmv quits (~user@unaffiliated/zmv) (Ping timeout: 260 seconds)
16:32:25 × renzhi quits (~renzhi@modemcable070.17-177-173.mc.videotron.ca) (Ping timeout: 240 seconds)
16:34:40 vicfred joins (~vicfred@unaffiliated/vicfred)
16:38:28 hackage irc-client 1.1.2.0 - An IRC client library. https://hackage.haskell.org/package/irc-client-1.1.2.0 (barrucadu)
16:38:42 Sheilong joins (uid293653@gateway/web/irccloud.com/x-kqkqyowmnuomwlmo)
16:38:56 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
16:40:06 conal joins (~conal@64.71.133.70)
16:41:30 × wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Quit: leaving)
16:41:54 wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
16:43:12 <tomsmeding> c_wraith: oh that's exactly what I wanted!
16:43:42 <tomsmeding> though I still wonder why hoogle can't seem to, especially since its web interface does list the source package :p
16:47:01 × machinedgod quits (~machinedg@d67-193-126-196.home3.cgocable.net) (Ping timeout: 264 seconds)
16:48:04 constR joins (uid58205@gateway/web/irccloud.com/x-tksgpowcrsjwxjgo)
16:48:33 dcoutts_ joins (~duncan@70.14.75.194.dyn.plus.net)
16:48:33 × dcoutts_ quits (~duncan@70.14.75.194.dyn.plus.net) (Changing host)
16:48:33 dcoutts_ joins (~duncan@unaffiliated/dcoutts)
16:50:49 × dcoutts quits (~duncan@unaffiliated/dcoutts) (Ping timeout: 246 seconds)
16:52:22 <[exa]> (also ghc-pkg doesn't really help you if you don't have the package installed, right?)
16:52:50 <geekosaur> right
16:53:37 dcoutts joins (~duncan@90.14.75.194.dyn.plus.net)
16:53:37 × dcoutts quits (~duncan@90.14.75.194.dyn.plus.net) (Changing host)
16:53:37 dcoutts joins (~duncan@unaffiliated/dcoutts)
16:53:45 Jeanne-Kamikaze joins (~Jeanne-Ka@68.235.43.110)
16:53:49 <ibloom> Let's say I have a buffer that I created in the IO monad using mallocBytes. I wrote a bunch of data to it in using poke. Is there a way I can freeze that buffer and access it, read only, from a pure function.
16:54:07 mirrorbird joins (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f)
16:54:11 × mirrorbird quits (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f) (Remote host closed the connection)
16:54:25 × dcoutts_ quits (~duncan@unaffiliated/dcoutts) (Ping timeout: 240 seconds)
16:55:08 dcoutts_ joins (~duncan@33.14.75.194.dyn.plus.net)
16:55:08 × dcoutts_ quits (~duncan@33.14.75.194.dyn.plus.net) (Changing host)
16:55:08 dcoutts_ joins (~duncan@unaffiliated/dcoutts)
16:55:51 × DataComputist quits (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Quit: Leaving...)
16:56:07 <rotaerk> ibloom, it would involve copying the contents of it into a pure value
16:56:07 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
16:56:45 <ibloom> Would I need to actually copy it or can I tell the compiler that it's frozen somehow?
16:56:45 <[exa]> there are some ways for wrapping it in a "nice" interface, e.g. ByteString can be created from ForeignPtr
16:56:58 <[exa]> (without copying ofc)
16:57:00 <c_wraith> ibloom: mallocBytes and poke are part of the FFI, they're not really designed to support freezing. the array/vector packages give you an interface that does support freezing.
16:57:11 Franciman joins (~francesco@host-212-171-42-250.retail.telecomitalia.it)
16:57:30 <[exa]> ibloom: why the raw malloc btw?
16:57:51 <ibloom> The reason I'm doing this is because I have functions in OpenCL, Cuda and reference functions in Haskell.
16:58:20 <ibloom> I'd like the haskell functions to just read from the same structures.
16:58:23 <[exa]> probably better allocate an unboxed vector, convert it to Ptr and send that pointer
16:58:30 × dcoutts quits (~duncan@unaffiliated/dcoutts) (Ping timeout: 256 seconds)
16:58:51 <[exa]> or are the structures allocated in the foreign code?
17:00:02 <ibloom> The other reason I'm using malloc is because I homebrewed an append only buffer that can grow indefinitely. So maybe what I'm looking for is a package with a datatype that can be appended indefinitely and then frozen.
17:00:30 justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311)
17:00:47 × natechan quits (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Quit: WeeChat 2.9)
17:00:55 <rotaerk> the problem with freezing-without-copying is that it can still be mutated through the original pointer to it
17:01:14 <rotaerk> unless it's an interface that forces the pointer to go out of scope just before the freeze
17:01:21 <ski> (unless you ensure that you have a unique reference to the mutable block)
17:01:45 <ski> ibloom : `realloc' ?
17:02:23 <ibloom> I'm currently using realloc to grow my homebrew buffers.
17:02:56 <ibloom> Basically I serialize haskell structures into buffers to send them to the GPU. I'm also maintaining haskell versions of the GPU code and I'd like that code to read the same buffers while being pretty clean.
17:04:03 <ski> you could look at how <https://hackage.haskell.org/package/bytestring-0.11.0.0/docs/Data-ByteString-Internal.html> does things, e.g.
17:04:49 × ryansmccoy quits (~ryansmcco@68.235.48.108) (Ping timeout: 246 seconds)
17:05:20 ryansmccoy joins (~ryansmcco@193.37.254.27)
17:05:42 <ibloom> ski: I'll take a look at that thanks. I read about a newer variable size vector implementation a while back but I forgot the name.
17:07:06 conal joins (~conal@64.71.133.70)
17:08:01 × michalrus quits (m@michalrus.com) (Ping timeout: 264 seconds)
17:08:37 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 264 seconds)
17:10:27 cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
17:11:39 × mathlover3 quits (~mathlover@cpe-67-248-97-14.nycap.res.rr.com) (Quit: Leaving)
17:17:13 ddellacosta joins (~dd@86.106.121.168)
17:17:50 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
17:18:07 × sphalerite quits (~sphalerit@NixOS/user/lheckemann) (Quit: boot, boot, boot, boot, reboot the outdated server)
17:19:26 × nschoe quits (~quassel@2a01:e0a:3c4:c7b0:49a5:212c:e2d5:4010) (Remote host closed the connection)
17:20:29 machinedgod joins (~machinedg@45.78.189.122)
17:22:19 sphalerite joins (~sphalerit@NixOS/user/lheckemann)
17:23:23 mav1 joins (~mav@i5E86200D.versanet.de)
17:24:24 × blase quits (~blase@4e69b241.skybroadband.com) (Ping timeout: 265 seconds)
17:24:45 haasn` is now known as haasn
17:26:11 conal joins (~conal@64.71.133.70)
17:27:36 perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
17:33:39 mathlover2 joins (~mathlover@2604:6000:1013:129e:c3f:af24:28bd:eee4)
17:35:38 ksixty joins (~Adium@109-252-45-112.nat.spd-mgts.ru)
17:35:53 × ksixty quits (~Adium@109-252-45-112.nat.spd-mgts.ru) (Client Quit)
17:36:10 <justsomeguy> What do you think of using Haskell to write devops tooling? (Stuff to talk to APIs over http, move files, ssh into things and run commands remotely, log analysis, talk to dbus, etc.)
17:36:23 <maerwald> use bash
17:36:49 <maerwald> all you gonna do is trying to wrap existing tools (like curl), what for
17:37:00 Guest_4963 joins (542bfb51@cable-84-43-251-81.mnet.bg)
17:37:15 × Franciman quits (~francesco@host-212-171-42-250.retail.telecomitalia.it) (Quit: Leaving)
17:37:45 <Guest_4963> complete novice to ghcup - run installation but no ghci - is that normal?
17:37:59 <Guest_4963> complete novice to ghcup - I ran the ghcup installation but no ghci - is that normal?
17:38:12 <maerwald> Guest_4963: source ~/.ghcup/env
17:38:28 thir joins (~thir@pd9e1baba.dip0.t-ipconnect.de)
17:38:50 hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-ppmzllfatsxcxgfj)
17:39:40 × perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 2.9)
17:40:15 × mozzarella quits (~sam@unaffiliated/sam113101) (Quit: WeeChat 2.8)
17:42:49 × thir quits (~thir@pd9e1baba.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
17:43:15 <Guest_4963> @maerwald thanks! turns out I had to run 'ghcup set'
17:43:15 <lambdabot> Unknown command, try @list
17:43:33 × Guest_4963 quits (542bfb51@cable-84-43-251-81.mnet.bg) (Remote host closed the connection)
17:43:53 DataComputist joins (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net)
17:45:00 × fresheyeball quits (~isaac@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.7.1)
17:51:18 × elliott__ quits (~elliott@pool-108-45-154-71.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
17:53:47 alp joins (~alp@2a01:e0a:58b:4920:f043:ba1b:f5d1:917)
17:56:48 DTZUZU_ joins (~DTZUZU@S0106bcd165662a4d.vs.shawcable.net)
17:56:53 × ericsagnes quits (~ericsagne@2405:6580:0:5100:303d:1ce9:8a60:670b) (Ping timeout: 272 seconds)
17:58:04 elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net)
17:58:39 × DTZUZU quits (~DTZUZU@205.ip-149-56-132.net) (Ping timeout: 258 seconds)
18:00:02 × [RuCTFE]tswr quits (~RuCTFE]ts@195.140.213.38) ()
18:00:55 × wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
18:01:30 mozzarella joins (~sam@unaffiliated/sam113101)
18:02:50 × nineonine quits (~nineonine@216-19-190-182.dyn.novuscom.net) (Remote host closed the connection)
18:04:50 wroathe_ joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
18:04:51 kindaro joins (1f08f246@h31-8-242-70.dyn.bashtel.ru)
18:05:38 nineonine joins (~nineonine@216-19-190-182.dyn.novuscom.net)
18:05:59 <kindaro> What monad transformer should I use for modeling non-determinism? I read that the obvious `Control.Monad.Trans.List` is deprecated. My underlying monad is Q from Template Haskell.
18:07:29 <kindaro> A quick search shows that there is a number of alternatives and I wonder if any of them is considered superiour.
18:08:44 ericsagnes joins (~ericsagne@2405:6580:0:5100:546d:33c9:eb39:ecef)
18:08:50 <sm[m]> justsomeguy: you might be interested in http://hackage.haskell.org/package/propellor
18:09:27 hackage rib-core 1.0.0.0 - Static site generator based on Shake https://hackage.haskell.org/package/rib-core-1.0.0.0 (sridca)
18:09:40 × wroathe_ quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
18:09:45 × nineonine quits (~nineonine@216-19-190-182.dyn.novuscom.net) (Ping timeout: 240 seconds)
18:10:28 hackage rib 1.0.0.0 - Static site generator based on Shake https://hackage.haskell.org/package/rib-1.0.0.0 (sridca)
18:12:21 <ski> @hackage ListT done right
18:12:22 <lambdabot> https://hackage.haskell.org/package/ListT done right
18:12:27 <ski> er, right
18:12:32 <ski> @hackage ListT_done_right
18:12:33 <lambdabot> https://hackage.haskell.org/package/ListT_done_right
18:13:05 × elliott__ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
18:13:50 <ski> oh. sorry, i'm actually using the wrong lambdabot command (which explains why the link was incorrect) ..
18:13:52 <ddellacosta> https://hackage.haskell.org/package/list-t
18:13:55 <ski> @wiki ListT_done_right
18:13:55 <lambdabot> https://wiki.haskell.org/ListT_done_right
18:14:05 <ddellacosta> ^ think you're looking for that ski?
18:14:05 idhugo joins (~idhugo@563472ae.rev.stofanet.dk)
18:14:37 <ski> no, i was looking for that wiki page (having just looked at it, before, in the browser)
18:14:45 <ddellacosta> oh, gotcha, sorry to muddy the waters
18:14:51 <ski> (but it does mention `list-t', yes)
18:15:22 × mav1 quits (~mav@i5E86200D.versanet.de) (Ping timeout: 272 seconds)
18:15:55 <justsomeguy> sm[m]: Looks awesome <3. Thanks for bringing it to my attention.
18:15:58 conal_ joins (~conal@209.58.131.35)
18:16:25 <sm[m]> it's interesting, I have used it a bit but not in anger. Let me know if you do
18:16:45 <kindaro> @sk
18:16:46 <lambdabot> Who should I ask?
18:16:55 <sm[m]> the downside is you have to install a haskell toolchain before you use it, unlike a bash script
18:17:04 nineonine joins (~nineonine@216.81.48.202)
18:17:35 <sm[m]> an upside is that it converges to the desired state, unlike most bash scripts
18:17:36 elliott__ joins (~elliott@2607:fb90:18d5:a5f3:100d:8762:6765:2dc)
18:17:37 <kindaro> ski, I am aware of that page, but it does not single out a specific package. Besides, my impression is that Haskell Wiki is mostly obsolete.
18:17:56 <sm[m]> (when is that really useful ? I'm not sure)
18:18:03 <ddellacosta> some parts remain very useful, but unfortunately it can be hard to filter out what is and isn't deprecated info
18:18:14 <ski> kindaro : it's not too clear what you're looking for, i guess
18:18:43 <maerwald> I've used propellor and I would not recommend it
18:18:54 <kindaro> What is not clear? I am looking for a monad transformer for running non-deterministic effectful computations.
18:18:55 × conal quits (~conal@64.71.133.70) (Ping timeout: 240 seconds)
18:19:07 <kindaro> Preferably one that enjoys community support.
18:19:32 <ski> are you looking for some sort of incremental streaming ?
18:19:34 <justsomeguy> Even if it's not a practical tool, it will be interesting for me to read the code to see how it works.
18:19:37 <maerwald> For the kind of stuff propellor does, you don't actually care much about types. You care about: 1. documentation, 2. help and community and 3. correctness of the recipes
18:19:44 <maerwald> propellor scores low on all of these
18:20:10 <ski> by "non-deterministic", do you have angelic non-determinism in mind ? erratic ? demonic ?
18:20:51 Deide joins (~Deide@217.155.19.23)
18:20:52 <ski> there should be some CPS-based `ListT' alternative, although i forget the package name
18:20:57 <maerwald> ansible scores higher on 1. and 2., but not on 3.
18:21:28 <maerwald> but it's much easier to use and has better support
18:21:55 michalrus joins (m@michalrus.com)
18:22:04 <geekosaur> I haven't seen much that scores high on 3. because everyone's after "just good enough"
18:22:07 <maerwald> if you want support for propellor... there's not even a github issue tracker
18:22:09 kenperkins1 joins (~kenperkin@185.163.110.116)
18:22:13 × Amras quits (~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
18:22:14 <kindaro> I have functions like `a → m [b]`, `b → m Bool` and so on. I want to get a composition of functors `m` and `[ ]` that happens to be a monad.
18:22:26 <maerwald> you sign up for some weird forum where no one ever replies
18:22:29 <ski> if you're looking for a backtracking monad transformer, with fair scheduling, then you could try `logict'
18:22:32 <geekosaur> ( </grump> )
18:22:43 × michalrus quits (m@michalrus.com) (Client Quit)
18:22:49 <justsomeguy> I'm pretty disillusioned when it comes to configuration management systems, overall, to be honest.
18:23:10 <ski> kindaro : you want the `b's to be produced incrementally, with `m'-effects interleaved inbetween ?
18:23:24 <maerwald> I replaced propellor with ansible in one company and we never looked back. It was a good decision.
18:23:39 <justsomeguy> Yes, that sounds like a good choice.
18:23:49 <maerwald> Just make sure you don't use 90% of those silly playbooks
18:23:50 <kindaro> I have no preference as to the order of execution, everything will be forced in the end.
18:24:07 × elliott__ quits (~elliott@2607:fb90:18d5:a5f3:100d:8762:6765:2dc) (Ping timeout: 272 seconds)
18:24:39 <maerwald> (even the "install python" playbooks are mostly broken... )
18:24:48 <maerwald> so geekosaur is pretty much correct :p
18:24:56 <monochrom> logict is probably the CPS-based ListT alternative
18:25:14 <monochrom> err you already know logict
18:25:30 × cheater quits (~user@unaffiliated/cheater) (Ping timeout: 272 seconds)
18:25:40 michalrus joins (m@michalrus.com)
18:25:57 elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net)
18:26:11 sand_dull joins (~theuser@179.48.249.132)
18:26:47 <sm[m]> maerwald these are good points. One plus I found for propellor was that (for a haskeller) it's small and simple enough to understand relatively quickly, unlike all the other config management tools
18:27:01 <maerwald> sm[m]: the types are not easy
18:27:12 <sm[m]> no
18:27:39 <sm[m]> but I was just following the examples
18:27:42 <maerwald> https://hackage.haskell.org/package/propellor-5.12/docs/Propellor-Types-MetaTypes.html#t:DebianLike
18:28:04 <ski> iirc, there may've been some simpler one (without interleaving)
18:28:39 <maerwald> check the IfStuck type family :p
18:28:57 cheater joins (~user@unaffiliated/cheater)
18:28:58 × conal_ quits (~conal@209.58.131.35) (Quit: Computer has gone to sleep.)
18:29:10 × zacts quits (~zacts@dragora/developer/zacts) (Quit: leaving)
18:29:42 <maerwald> config doesn't need strong types, because you don't need to compile config... you need to *check* it
18:29:50 p0a joins (~user@unaffiliated/p0a)
18:30:44 <maerwald> propellor goes the opposite way and extending the expressivity instead of minimizing it
18:30:57 <maerwald> which I think is the wrong approach for the problem domain
18:31:51 × Cale quits (~cale@CPEf48e38ee8583-CM0c473de9d680.cpe.net.cable.rogers.com) (Remote host closed the connection)
18:33:10 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
18:33:10 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
18:33:10 GyroW joins (~GyroW@unaffiliated/gyrow)
18:33:13 × raehik1 quits (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
18:33:35 <sm[m]> maerwald: nowadays some would say nixos or nixpkgs is the way
18:33:44 Cale joins (~cale@CPEf48e38ee8583-CM0c473de9d680.cpe.net.cable.rogers.com)
18:33:45 × GyroW_ quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 240 seconds)
18:33:54 <maerwald> sm[m]: theoretically, if you ignore the bad ergonomics
18:33:55 × elliott__ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
18:34:57 <sm[m]> it has the same problem as the other tools (big and complicated, big investment required)
18:35:19 Amras joins (~Amras@unaffiliated/amras0000)
18:35:31 <maerwald> it leaks memory, disk space and you need someone with a minimum of 3 years experience to fix any non-trivial nix problems
18:35:39 × kindaro quits (1f08f246@h31-8-242-70.dyn.bashtel.ru) (Remote host closed the connection)
18:35:53 geekosaur observes that ansible started out as "the answer" to those problems
18:36:12 <geekosaur> i.e. they come with the territory, it turns out
18:36:17 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Remote host closed the connection)
18:36:17 elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net)
18:36:35 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
18:36:57 hackage reflex-dom-pandoc 0.4.0.0 - Render Pandoc documents to HTML using reflex-dom https://hackage.haskell.org/package/reflex-dom-pandoc-0.4.0.0 (sridca)
18:37:04 <maerwald> last time I ran nix-env on my pc it locked 6GB of ram doing nothing and then ate 20GB of disk space while it was compiling unrelated GHC versions (8.4.4 or something) until it OOMed out
18:37:25 conal joins (~conal@209.58.131.35)
18:38:17 <maerwald> I don't know why tools keep installing random GHC versions for me
18:39:17 <maerwald> but yes, it's nice in theory :)
18:40:52 × GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
18:41:35 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
18:41:35 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
18:41:35 GyroW joins (~GyroW@unaffiliated/gyrow)
18:41:44 snakemasterflex joins (~snakemast@213.100.206.23)
18:42:29 mav1 joins (~mav@i5E86200D.versanet.de)
18:42:45 <Rembane> maerwald: I think they don't want the installed GHCs to feel lonely.
18:44:19 × conal quits (~conal@209.58.131.35) (Quit: Computer has gone to sleep.)
18:44:22 <maerwald> and I don't even know how to decrease disk space in nix. I'm scared to touch any of it, because next time it will build for 3 hours again.
18:44:27 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
18:45:37 <dolio> ski: LogicT doesn't do any fancy interleaving on its own. It's CPS list like monochrom said. The interleaving comes from using different (overloaded) functions.
18:45:43 <geekosaur> supposedly it's open to garbage collection but I've not played with it enough to know how
18:46:01 <dolio> But those could be implemented for list, even.
18:47:02 × elliott__ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
18:47:20 p-core joins (~Thunderbi@cst-prg-34-77.cust.vodafone.cz)
18:48:24 John20 joins (~John@82.46.59.122)
18:48:37 <dolio> At least, if you mean 'interleaving choice' type stuff.
18:49:28 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds)
18:50:50 × DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Ping timeout: 272 seconds)
18:53:49 × jle` quits (~mstksg@unaffiliated/mstksg) (Ping timeout: 265 seconds)
18:54:55 chaosmasttter joins (~chaosmast@p200300c4a73b2e0168c1f453f2fcf16d.dip0.t-ipconnect.de)
18:56:58 shatriff joins (~vitaliish@217.27.153.240)
18:57:15 elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net)
18:59:45 raehik1 joins (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
18:59:55 × machinedgod quits (~machinedg@45.78.189.122) (Ping timeout: 240 seconds)
19:00:07 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
19:01:02 conal joins (~conal@209.58.131.35)
19:02:29 Sgeo joins (~Sgeo@ool-18b982ad.dyn.optonline.net)
19:02:35 × xelxebar quits (~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection)
19:02:55 × xff0x quits (~fox@2001:1a81:52c9:f600:f5f2:9982:d51b:11e1) (Ping timeout: 240 seconds)
19:02:58 xelxebar joins (~xelxebar@gateway/tor-sasl/xelxebar)
19:03:48 × conal quits (~conal@209.58.131.35) (Client Quit)
19:03:49 xff0x joins (~fox@2001:1a81:52c9:f600:e0a1:2683:5939:2315)
19:04:47 × Tops2 quits (~Tobias@dyndsl-095-033-090-035.ewe-ip-backbone.de) (Read error: Connection reset by peer)
19:07:14 × otulp quits (~otulp@ti0187q162-5025.bb.online.no) (Remote host closed the connection)
19:09:51 coot joins (~coot@37.30.49.218.nat.umts.dynamic.t-mobile.pl)
19:12:48 × idhugo quits (~idhugo@563472ae.rev.stofanet.dk) (Ping timeout: 256 seconds)
19:12:54 × polyphem quits (~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Read error: Connection reset by peer)
19:13:38 × elliott__ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
19:13:53 isovector1 joins (~isovector@172.103.216.166)
19:15:11 polyphem joins (~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889)
19:15:47 × chaosmasttter quits (~chaosmast@p200300c4a73b2e0168c1f453f2fcf16d.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
19:15:58 hackage exotic-list-monads 1.0.1 - Non-standard monads on lists and non-empty lists https://hackage.haskell.org/package/exotic-list-monads-1.0.1 (maciejpirog)
19:18:11 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
19:20:33 elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net)
19:22:18 DavidEichmann joins (~david@43.240.198.146.dyn.plus.net)
19:22:23 × ericsagnes quits (~ericsagne@2405:6580:0:5100:546d:33c9:eb39:ecef) (Ping timeout: 272 seconds)
19:27:12 jonatanb joins (~jonatanb@79.184.190.239.ipv4.supernova.orange.pl)
19:27:19 tchar joins (sid301738@gateway/web/irccloud.com/x-squtmljpvmzfdfsk)
19:27:24 perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
19:28:15 fosterite joins (~fosterite@2600:6c46:7880:410a:204f:112a:e761:cf0c)
19:28:44 × elliott__ quits (~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 256 seconds)
19:28:55 × p-core quits (~Thunderbi@cst-prg-34-77.cust.vodafone.cz) (Ping timeout: 240 seconds)
19:29:40 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
19:30:25 × sand_dull quits (~theuser@179.48.249.132) (Ping timeout: 260 seconds)
19:30:49 zacts joins (~zacts@dragora/developer/zacts)
19:31:09 × raehik1 quits (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
19:31:24 chaosmasttter joins (~chaosmast@p200300c4a73b2e0168c1f453f2fcf16d.dip0.t-ipconnect.de)
19:33:34 × DataComputist quits (~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Quit: Leaving...)
19:33:46 quazimod1 joins (~quazimodo@27-33-123-50.tpgi.com.au)
19:34:03 miguicho joins (~miguel@host-186-101-215-54.netlife.ec)
19:34:05 × p0a quits (~user@unaffiliated/p0a) (Quit: bye)
19:34:36 ericsagnes joins (~ericsagne@2405:6580:0:5100:1532:a71d:fbe4:fbaf)
19:36:15 × quazimodo quits (~quazimodo@60-240-169-126.static.tpgi.com.au) (Ping timeout: 256 seconds)
19:36:45 conal joins (~conal@209.58.131.35)
19:37:58 × Zetagon quits (~leo@c151-177-52-233.bredband.comhem.se) (Ping timeout: 260 seconds)
19:38:17 × urdh quits (~urdh@unaffiliated/urdh) (Remote host closed the connection)
19:39:19 eboladoc joins (~chris@141.70.80.5)
19:40:55 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
19:41:08 urdh joins (~urdh@unaffiliated/urdh)
19:41:38 OmegaDoug joins (d1ab5889@209.171.88.137)
19:42:55 raehik joins (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
19:46:20 snakemasterflex joins (~snakemast@213.100.206.23)
19:48:27 × conal quits (~conal@209.58.131.35) (Quit: Computer has gone to sleep.)
19:48:41 machinedgod joins (~machinedg@142.169.78.74)
19:49:47 × stree quits (~stree@50-108-126-14.adr01.mskg.mi.frontiernet.net) (Ping timeout: 240 seconds)
19:50:11 renzhi joins (~renzhi@modemcable070.17-177-173.mc.videotron.ca)
19:50:41 × Graypup_ quits (Graypup@lfcode.ca) (Quit: ZNC 1.6.1 - http://znc.in)
19:51:17 Graypup_ joins (Graypup@lfcode.ca)
19:51:23 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
19:52:25 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
19:53:26 Buntspecht joins (~user@unaffiliated/siracusa)
19:53:30 conal joins (~conal@64.71.133.70)
19:55:14 × mav1 quits (~mav@i5E86200D.versanet.de) (Quit: WeeChat 2.9)
19:58:08 × Sheilong quits (uid293653@gateway/web/irccloud.com/x-kqkqyowmnuomwlmo) (Quit: Connection closed for inactivity)
19:59:16 × oisdk quits (~oisdk@2001:bb6:3329:d100:693b:1e64:c063:cc27) (Quit: oisdk)
19:59:49 × machinedgod quits (~machinedg@142.169.78.74) (Ping timeout: 246 seconds)
20:02:14 × cosimone quits (~cosimone@2001:b07:ae5:db26:b248:7aff:feea:34b6) (Quit: Quit.)
20:02:45 stree joins (~stree@50-108-126-14.adr01.mskg.mi.frontiernet.net)
20:03:17 × miguicho quits (~miguel@host-186-101-215-54.netlife.ec) (Max SendQ exceeded)
20:03:35 miguicho joins (~miguel@host-186-101-215-54.netlife.ec)
20:03:36 × miguicho quits (~miguel@host-186-101-215-54.netlife.ec) (Max SendQ exceeded)
20:03:56 miguicho joins (~miguel@host-186-101-215-54.netlife.ec)
20:03:57 × miguicho quits (~miguel@host-186-101-215-54.netlife.ec) (Max SendQ exceeded)
20:04:15 miguicho joins (~miguel@host-186-101-215-54.netlife.ec)
20:05:43 <OmegaDoug> Is there a way to catch 'Ctrl-C' on windows when testing code in GHCi? The purpose is to close a socket. I'm using Control.Exception.bracket but when I press Ctrl-C I have to go into the task manager and kill the ghc.exe instance to close the socket.
20:05:44 <OmegaDoug> https://gist.github.com/DouglasBrunner/5bf94447f57db989f9df5b6682a7fdf6
20:06:19 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
20:07:16 OmegaDoug84 joins (8e749d03@lnsm3-torontoxn-142-116-157-3.internet.virginmobile.ca)
20:07:51 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
20:08:19 <koz_> OmegaDoug: GHCi isn't the place to test this in.
20:08:23 rprije joins (~rprije@203.214.95.251)
20:08:33 <koz_> Since I believe it has its own signal handling.
20:09:27 conal joins (~conal@64.71.133.70)
20:09:42 × geekosaur quits (ae68c070@cpe-174-104-192-112.neo.res.rr.com) (Remote host closed the connection)
20:09:46 × conal quits (~conal@64.71.133.70) (Client Quit)
20:10:04 × OmegaDoug quits (d1ab5889@209.171.88.137) (Ping timeout: 245 seconds)
20:10:25 <OmegaDoug84> koz_, a shame since the REPL is nice to use and I jump in and out of it a lot. I don't suppose you happen to know the recommended approach to kill a long running process in GHCi?
20:10:47 <koz_> OmegaDoug84: That's a different question. You want to test signal handling in your program, correct?
20:10:55 <koz_> My answer was 'GHCi isn't the way to do this'.
20:11:08 <koz_> When it comes to killing long-running processes in GHCi, I dunno.
20:11:28 <OmegaDoug84> Yes. I want to ensure the sockets are released when the program exits.
20:12:02 <koz_> Yeah, GHCi isn't the place to do this kind of testing. Write an actual test suite.
20:12:58 × perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 2.9)
20:13:10 bollu joins (~bollu@139.59.46.74)
20:13:29 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
20:14:46 <koz_> (you are correct in that bracket is a good idea in such a case)
20:15:40 <OmegaDoug84> I'll certainly do that. But for now I'd like to stop leaking resources as I'm developing in the REPL.
20:15:58 <koz_> Yeah, that's not really gonna happen in GHCi.
20:16:07 <OmegaDoug84> It would be a nicer development experience not to have to consistently kill GHC.
20:16:19 <OmegaDoug84> lol, good to know how far down the rabbit hole I should go ;)
20:16:41 <koz_> Basically, you're at the stage where you should have tests, and be running them regularly.
20:16:51 <koz_> GHCi is good for small scratch stuff.
20:16:55 × knupfer quits (~Thunderbi@200116b82c67780049b0f8914a41620c.dip.versatel-1u1.de) (Ping timeout: 240 seconds)
20:17:05 <koz_> Or asking questions like 'what is the type of this random off-the-wall thing I just thought up'.
20:18:08 <OmegaDoug84> Good advice. What about the runhaskell command? Will that suffer from the same problems that GHCi does?
20:18:35 <koz_> I don't use it, so no idea. Isn't it just a wrapper around 'ghc && ./executable-name'?
20:19:04 <OmegaDoug84> I'll read up on it. I can't remember if it used the compiler or interpreter.
20:19:10 machinedgod joins (~machinedg@d67-193-126-196.home3.cgocable.net)
20:20:48 <OmegaDoug84> koz_, the exception handler gets called using runhaskell. I'll stick with that approach for now. Thanks.
20:21:19 × AlterEgo- quits (~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving)
20:21:21 <koz_> OmegaDoug84: Glad that helped. I still 100% suggest writing an actual test suite for this purpose.
20:21:31 mav1 joins (~mav@p5b02806a.dip0.t-ipconnect.de)
20:22:33 <OmegaDoug84> koz_, I'll definitely be doing that. For now I'm just exploring the design space.
20:24:27 cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net)
20:24:38 × fosterite quits (~fosterite@2600:6c46:7880:410a:204f:112a:e761:cf0c) ()
20:25:04 tito_04 joins (~taurux@net-93-151-203-67.cust.dsl.teletu.it)
20:25:12 × taurux quits (~taurux@net-93-144-10-156.cust.vodafonedsl.it) (Ping timeout: 272 seconds)
20:26:31 × coot quits (~coot@37.30.49.218.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
20:27:04 × shafox quits (~shafox@106.51.234.111) (Remote host closed the connection)
20:27:49 <ski> dolio : oic. for some reason my vague memory suggested it did some sort of interleaving "out of the box", with the usual `Monad' and `MonadPlus' operations
20:28:16 × eboladoc quits (~chris@141.70.80.5) (Quit: Cure for an obsession: get another one!)
20:29:21 × zacts quits (~zacts@dragora/developer/zacts) (Quit: leaving)
20:30:34 aenesidemus joins (~aenesidem@c-73-53-247-25.hsd1.fl.comcast.net)
20:34:43 × NinjaTrappeur quits (~ninja@unaffiliated/ninjatrappeur) (Quit: WeeChat 2.9)
20:37:39 jneira joins (501e65ce@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.206)
20:41:17 elliott__ joins (~elliott@pool-108-51-141-12.washdc.fios.verizon.net)
20:43:14 × ggole- quits (~ggole@2001:8003:8119:7200:10c6:17b0:327d:27c2) (Quit: Leaving)
20:46:15 NinjaTrappeur joins (~ninja@unaffiliated/ninjatrappeur)
20:49:25 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
20:53:16 × Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa)
20:54:05 falafel joins (~falafel@2605:e000:1527:d491:706d:90a5:67aa:1cd9)
20:54:26 × __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving)
21:00:01 × kenperkins1 quits (~kenperkin@185.163.110.116) ()
21:00:56 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
21:01:27 sQVe joins (~sQVe@unaffiliated/sqve)
21:01:54 × motherfsck quits (~motherfsc@unaffiliated/motherfsck) (Quit: quit)
21:05:37 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
21:07:29 × theDon quits (~td@94.134.91.94) (Ping timeout: 260 seconds)
21:08:10 mirrorbird joins (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f)
21:08:18 <koz_> maerwald: You're the person who deals with ghcup right?
21:09:02 <maerwald> koz_: yes
21:09:05 Sheilong joins (uid293653@gateway/web/irccloud.com/x-bxwmidpkndksabez)
21:09:20 <koz_> Part of the compilation process for 'ghcup compile ghc' is this: cd bindistprep && "/usr/bin/tar" hcf - -T ../bindist-list.uniq | /usr/bin/xz -c > ../bindistprep/ghc-8.8.4-x86_64-unknown-linux.tar.xz
21:09:43 <maerwald> yeah
21:09:44 <koz_> Is there a way we can parallelize this step? xz can take a -T argument for parallel cores to use.
21:09:52 <koz_> (-T0 means 'as many as I can')
21:10:06 <koz_> We already feed -j to ghcup compile ghc, so that could be translated in.
21:11:12 <koz_> It's actually quite a long step, and it's _needlessly_ quite long IMHO.
21:11:26 <maerwald> https://gitlab.haskell.org/ghc/ghc/-/blob/master/ghc.mk#L1096
21:11:49 <koz_> Ah, so it's hardwired.
21:12:00 <koz_> So I guess I need to take it up with folks in #GHC?
21:12:04 <maerwald> yeah
21:12:09 <koz_> maerwald: OK, thanks!
21:12:19 <koz_> How do you feed -j12 into the compile process in ghcup?
21:12:24 <koz_> (or -jwhatever, rather)
21:12:32 <maerwald> -j 12
21:12:48 <koz_> Ah, so do you just pass it into GHC's own build system thingo?
21:13:08 <maerwald> `ghcup compile ghc --help` is quite verbose
21:13:16 <maerwald> yeah
21:16:26 <koz_> maerwald: OK, gonna chat to them.
21:17:25 jgt joins (~jgt@109.122.28.107)
21:21:05 × John20 quits (~John@82.46.59.122) (Ping timeout: 240 seconds)
21:21:08 hexfive joins (~hexfive@50.35.90.193)
21:21:40 Hellaenergy joins (~Hellaener@185.244.214.216)
21:22:36 × hexfive quits (~hexfive@50.35.90.193) (Client Quit)
21:23:12 × jollygood2 quits (~bc815b99@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout))
21:25:20 × sQVe quits (~sQVe@unaffiliated/sqve) (Quit: Bye!)
21:28:24 × OmegaDoug84 quits (8e749d03@lnsm3-torontoxn-142-116-157-3.internet.virginmobile.ca) (Ping timeout: 245 seconds)
21:29:19 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
21:34:17 × raehik quits (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net) (Ping timeout: 265 seconds)
21:35:28 hackage recursion-schemes 5.2.1 - Representing common recursion patterns as higher-order functions https://hackage.haskell.org/package/recursion-schemes-5.2.1 (ryanglscott)
21:37:55 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
21:38:34 wroathe joins (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
21:39:13 stree_ joins (~stree@50-108-75-26.adr01.mskg.mi.frontiernet.net)
21:39:28 mpereira joins (~mpereira@2a02:810d:f40:d96:1c35:7f2e:59ff:953)
21:39:43 nbloomf joins (~nbloomf@2600:1700:83e0:1f40:413a:68d0:b0f8:a104)
21:39:56 × todda7 quits (~torstein@athedsl-4367507.home.otenet.gr) (Ping timeout: 272 seconds)
21:41:12 × stree quits (~stree@50-108-126-14.adr01.mskg.mi.frontiernet.net) (Ping timeout: 272 seconds)
21:43:06 sep2 joins (49dc4892@c-73-220-72-146.hsd1.ca.comcast.net)
21:45:27 conal joins (~conal@64.71.133.70)
21:45:33 raehik joins (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
21:45:40 jaj[m] parts (jajjoachim@gateway/shell/matrix.org/x-uayrvcrqbmwzsqhw) ("User left")
21:51:12 <sep2> https://dpaste.org/0jMi I am doing a finite state machine check, for transition function am I on the right path? I'm not sure if I'm understanding it correctly.
21:53:48 × darjeeling_ quits (~darjeelin@122.245.210.179) (Ping timeout: 256 seconds)
21:54:57 hackage these-lens 1.0.1.1 - Lenses for These https://hackage.haskell.org/package/these-lens-1.0.1.1 (phadej)
21:55:08 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
21:55:39 perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
21:55:39 × chaosmasttter quits (~chaosmast@p200300c4a73b2e0168c1f453f2fcf16d.dip0.t-ipconnect.de) (Quit: WeeChat 2.9)
21:55:57 hackage these-optics 1.0.1.1 - Optics for These https://hackage.haskell.org/package/these-optics-1.0.1.1 (phadej)
21:56:36 darjeeling_ joins (~darjeelin@122.245.210.179)
21:56:43 × fendor quits (~fendor@178.165.130.169.wireless.dyn.drei.com) (Remote host closed the connection)
21:56:56 conal joins (~conal@64.71.133.70)
21:57:25 × solonarv quits (~solonarv@astrasbourg-653-1-252-112.w92-161.abo.wanadoo.fr) (Quit: Lost terminal)
21:57:57 hackage strict-lens 0.4.0.1 - Lenses for types in strict package https://hackage.haskell.org/package/strict-lens-0.4.0.1 (phadej)
21:58:57 hackage strict-optics 0.4.0.1 - Optics for types in strict package https://hackage.haskell.org/package/strict-optics-0.4.0.1 (phadej)
21:59:23 <Buntspecht> sep2: Does that code compile for you?
22:01:58 oisdk joins (~oisdk@2001:bb6:3329:d100:89a1:5b05:b385:265f)
22:02:34 pqwy[m]1 joins (pqwymatrix@gateway/shell/matrix.org/x-xmdgkqmgtiqeqonc)
22:02:37 solonarv joins (~solonarv@astrasbourg-653-1-252-112.w92-161.abo.wanadoo.fr)
22:03:31 × petersen quits (~petersen@redhat/juhp) (Quit: petersen)
22:03:43 <sep2> I suppose not I was wondering if I had the right idea of going about it
22:04:00 × miguicho quits (~miguel@host-186-101-215-54.netlife.ec) (Ping timeout: 272 seconds)
22:04:11 petersen joins (~petersen@redhat/juhp)
22:05:35 × kritzefitz quits (~kritzefit@212.86.56.80) (Remote host closed the connection)
22:07:13 <Buntspecht> sep2: The logic look okay too me, but there's a syntax error at the bottom. If you introduce lokal definitions for a function, you use the "where" keyword
22:07:32 <Buntspecht> Also there's a spurious $ in line 29
22:08:51 <int-e> that looks like a cut-off line actuall
22:09:41 <int-e> And the $ is the 80th character on that line, making that idea more plausible.
22:12:35 <Cheery> I installed LanguageClient to Vim and trying things out. Any idea of what convenient things I can do with this thing?
22:13:05 <Cheery> For example, can I see the stuff for the type holes, and can this thing evaluate things for me?
22:13:49 × sep2 quits (49dc4892@c-73-220-72-146.hsd1.ca.comcast.net) (Ping timeout: 245 seconds)
22:15:05 × mirrorbird quits (~psutcliff@2a00:801:42a:82eb:6edc:4c78:a574:2a8f) (Quit: Leaving)
22:15:43 <maerwald> evaluating selections it cannot do
22:16:26 × isovector1 quits (~isovector@172.103.216.166) (Quit: Leaving)
22:16:40 × renzhi quits (~renzhi@modemcable070.17-177-173.mc.videotron.ca) (Ping timeout: 246 seconds)
22:17:04 × mrchampion quits (~mrchampio@216-211-57-41.dynamic.tbaytel.net) (Remote host closed the connection)
22:17:22 irc_user joins (uid423822@gateway/web/irccloud.com/x-jgthhmutdxudiomv)
22:19:16 <Cheery> It shows a cross in the column on the left side, and I'd like to see the whole error message at that point.
22:19:21 × michalrus quits (m@michalrus.com) (Ping timeout: 260 seconds)
22:20:59 × mpereira quits (~mpereira@2a02:810d:f40:d96:1c35:7f2e:59ff:953) (Ping timeout: 272 seconds)
22:21:37 × danvet_ quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds)
22:23:15 <justsomeguy> Is C a weakly typed language?
22:24:03 <maerwald> Cheery: open quickfix window
22:24:33 <justsomeguy> (For context, I'm learning about type systems, and don't know any C, but suspect that it may be weakly typed since I see a lot of errors related to pointers.)
22:24:45 notzmv` joins (~user@177.45.26.174)
22:24:45 × notzmv` quits (~user@177.45.26.174) (Read error: Connection reset by peer)
22:25:13 zmv joins (~user@177.45.26.174)
22:25:17 × jonatanb quits (~jonatanb@79.184.190.239.ipv4.supernova.orange.pl) (Quit: Leaving...)
22:25:36 zmv is now known as Guest90969
22:25:49 <justsomeguy> I'm actually not sure if this is a productive question to ask. Maybe I shouldn't have. But I thought it would be interesting to hear a Haskellers opinion about it.
22:26:10 × whiteline quits (~whiteline@unaffiliated/whiteline) (Ping timeout: 272 seconds)
22:26:42 × xelxebar quits (~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection)
22:26:56 Guest90969 is now known as notzmv
22:27:03 xelxebar joins (~xelxebar@gateway/tor-sasl/xelxebar)
22:27:07 × notzmv quits (~user@177.45.26.174) (Changing host)
22:27:07 notzmv joins (~user@unaffiliated/zmv)
22:27:40 <justsomeguy> ...in fact, please just ignore me; I'm about to go for a run, anyways, and this seems like a spicy topic.
22:29:45 <dolio> "Weakly typed" doesn't have any definitive meaning, really.
22:30:55 × Jeanne-Kamikaze quits (~Jeanne-Ka@68.235.43.110) (Ping timeout: 240 seconds)
22:30:56 michalrus joins (m@michalrus.com)
22:31:10 × aenesidemus quits (~aenesidem@c-73-53-247-25.hsd1.fl.comcast.net) (Quit: Leaving)
22:31:11 × aenesidemus_ quits (~aenesidem@c-73-53-247-25.hsd1.fl.comcast.net) (Quit: Leaving)
22:31:27 <justsomeguy> One possible meaning that I've read is that weakly typed means that you can perform operations on a term of some type that is normally not permissible by, for example, an implicit coercion, or acting on it's underlying representation without going through the type system.
22:33:05 <justsomeguy> But it's interesting that you say that -- it seems like a lot of these ideas (about types) are more like general notions than very well defined and agreed on things.
22:34:18 × nbloomf quits (~nbloomf@2600:1700:83e0:1f40:413a:68d0:b0f8:a104) (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:34:22 <justsomeguy> (...and even the definition of functional programming seems to be not well agreed on, which kind of surprised me...)
22:35:07 <dolio> Well, there are more precise ideas out there. But the ones used by run of the mill programmers tend to be more intuitive ideas, and not precise.
22:35:53 × shatriff quits (~vitaliish@217.27.153.240) (Remote host closed the connection)
22:35:55 justsomeguy is just going to have to read TAPL some day. Scratching the surface by reading a few papers has made him curious about what's out there.
22:37:03 snakemasterflex joins (~snakemast@213.100.206.23)
22:37:51 <Cheery> maerwald: I have a quickfix window?
22:38:00 <maerwald> Cheery: yeah, you are a vim user?
22:38:31 <Cheery> maerwald: yup, but lsp is relatively new meet.
22:38:54 <maerwald> you should know about quickfix window and location window then
22:39:29 <maerwald> https://medium.com/@lakshmankumar12/quickfix-and-location-list-in-vim-ca0292ac894d
22:41:22 × jgt quits (~jgt@109.122.28.107) (Ping timeout: 272 seconds)
22:41:23 × snakemasterflex quits (~snakemast@213.100.206.23) (Ping timeout: 240 seconds)
22:42:15 <dolio> The closest formal thing I can think of that would match "weakly typed" is "unsound." But judging whether C is unsound would require thinking about what a "model" of C is supposed to be.
22:44:57 <justsomeguy> I've heard the term model come up a few times. What is a model?
22:45:19 kori joins (~kori@2804:14c:85a3:9105::1000)
22:45:19 × kori quits (~kori@2804:14c:85a3:9105::1000) (Changing host)
22:45:19 kori joins (~kori@arrowheads/kori)
22:45:57 jgt joins (~jgt@109.122.28.107)
22:46:04 <dolio> A model is a mathematical structure that can serve as a basis for interpreting what syntactic things 'mean'.
22:47:19 <justsomeguy> Interesting.
22:47:52 justsomeguy will save the rest of his questions for a web search, since he's about to leave
22:48:03 <justsomeguy> Thanks for humoring my silly questions ^_^
22:48:48 × justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) ()
22:50:02 JohnTalent joins (~john@unaffiliated/johntalent)
22:50:16 <JohnTalent> What are some decent tools/lib for programming websites in haskell?
22:50:57 hackage tasty-discover 4.2.2 - Test discovery for the tasty framework. https://hackage.haskell.org/package/tasty-discover-4.2.2 (haskellworks)
22:51:17 <dolio> Anyhow, whether or not C is sound probably depends on what you choose the models to be like, so you're just deciding whether or not you want it to be. If you choose the models to be like, "there's just bits," then it's probably all sound. If integers are not interpreted as the same things as floats which are not the same as structures, then it's probably not sound.
22:52:27 <dolio> "There's just bits" is a lot less useful, though.
22:52:43 × m0rphism quits (~m0rphism@HSI-KBW-046-005-177-122.hsi8.kabel-badenwuerttemberg.de) (Ping timeout: 246 seconds)
22:53:20 × LKoen quits (~LKoen@81.255.219.130) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
22:53:30 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
22:53:53 × jgt quits (~jgt@109.122.28.107) (Ping timeout: 260 seconds)
22:56:52 jgt joins (~jgt@109.122.28.107)
22:59:33 nbloomf joins (~nbloomf@2600:1700:83e0:1f40:c50d:40d9:7a86:602b)
22:59:33 ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
22:59:45 conal joins (~conal@64.71.133.70)
22:59:46 <maerwald> JohnTalent: miso
23:01:21 × jgt quits (~jgt@109.122.28.107) (Ping timeout: 260 seconds)
23:02:58 jgt joins (~jgt@109.122.28.107)
23:04:34 × ym555 quits (~ym@41.42.210.219) (Ping timeout: 256 seconds)
23:07:16 kupi joins (uid212005@gateway/web/irccloud.com/x-dndtziltoquslpzk)
23:07:25 × jgt quits (~jgt@109.122.28.107) (Ping timeout: 240 seconds)
23:08:50 × Jesin quits (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Quit: Leaving)
23:09:54 <JohnTalent> maerwald: thank you.
23:10:11 ski . o O ( progress and preservation, "well-typed programs don't go wrong" )
23:11:04 <JohnTalent> maerwald: firefox reports the examples are a security risk.
23:11:55 × emmanuel_erc quits (~user@2604:2000:1382:ce03:f102:da07:a063:e98b) (Ping timeout: 240 seconds)
23:12:08 jgt joins (~jgt@109.122.28.107)
23:12:38 mrchampion joins (~mrchampio@216-211-57-41.dynamic.tbaytel.net)
23:14:07 mav2 joins (~mav@p5b02806a.dip0.t-ipconnect.de)
23:15:25 × notzmv quits (~user@unaffiliated/zmv) (Remote host closed the connection)
23:15:38 notzmv joins (~user@177.45.26.174)
23:15:47 × solonarv quits (~solonarv@astrasbourg-653-1-252-112.w92-161.abo.wanadoo.fr) (Ping timeout: 265 seconds)
23:15:47 × mav1 quits (~mav@p5b02806a.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
23:16:02 notzmv is now known as Guest64877
23:16:25 × jgt quits (~jgt@109.122.28.107) (Ping timeout: 240 seconds)
23:17:23 Guest64877 is now known as zmv`
23:17:32 zmv` is now known as notzmv
23:17:40 × notzmv quits (~user@177.45.26.174) (Changing host)
23:17:40 notzmv joins (~user@unaffiliated/zmv)
23:18:55 × falafel quits (~falafel@2605:e000:1527:d491:706d:90a5:67aa:1cd9) (Ping timeout: 240 seconds)
23:21:17 jgt joins (~jgt@109.122.28.107)
23:22:08 × xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 256 seconds)
23:22:14 Jesin joins (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net)
23:23:12 blasius joins (~blasius@4e69b241.skybroadband.com)
23:26:05 × jgt quits (~jgt@109.122.28.107) (Ping timeout: 260 seconds)
23:30:20 × nineonine quits (~nineonine@216.81.48.202) (Remote host closed the connection)
23:30:26 jgt joins (~jgt@109.122.28.107)
23:34:25 × cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 240 seconds)
23:34:51 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
23:36:21 × ericsagnes quits (~ericsagne@2405:6580:0:5100:1532:a71d:fbe4:fbaf) (Ping timeout: 272 seconds)
23:38:38 sep2 joins (49dc4892@c-73-220-72-146.hsd1.ca.comcast.net)
23:41:18 miguicho joins (~miguel@host-186-101-215-54.netlife.ec)
23:41:53 × mav2 quits (~mav@p5b02806a.dip0.t-ipconnect.de) (Ping timeout: 265 seconds)
23:42:18 leapingfrogs joins (~leapingfr@host86-136-28-78.range86-136.btcentralplus.com)
23:42:28 emmanuel_erc joins (~user@2604:2000:1382:ce03:88f9:ad61:775c:c25)
23:43:32 obihann joins (~jhann@156.34.160.69)
23:46:07 seanvert joins (~user@177.84.244.242)
23:46:16 × seanvert quits (~user@177.84.244.242) (Remote host closed the connection)
23:46:53 seanvert joins (~user@177.84.244.242)
23:47:03 × leapingfrogs quits (~leapingfr@host86-136-28-78.range86-136.btcentralplus.com) (Ping timeout: 260 seconds)
23:48:28 ericsagnes joins (~ericsagne@2405:6580:0:5100:a157:330d:992b:2b45)
23:48:30 × conal quits (~conal@64.71.133.70) (Ping timeout: 272 seconds)
23:49:27 cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net)
23:49:59 xerox_ joins (~xerox@unaffiliated/xerox)
23:50:37 leapingfrogs joins (~leapingfr@host86-136-28-78.range86-136.btcentralplus.com)
23:51:50 × wroathe quits (~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 256 seconds)
23:51:55 conal joins (~conal@209.58.132.107)
23:52:46 × GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie)
23:53:00 GyroW joins (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be)
23:53:00 × GyroW quits (~GyroW@ptr-48ujrfd1ztq5fjywfw3.18120a2.ip6.access.telenet.be) (Changing host)
23:53:00 GyroW joins (~GyroW@unaffiliated/gyrow)
23:55:21 × alp quits (~alp@2a01:e0a:58b:4920:f043:ba1b:f5d1:917) (Ping timeout: 272 seconds)
23:55:54 × leapingfrogs quits (~leapingfr@host86-136-28-78.range86-136.btcentralplus.com) (Ping timeout: 265 seconds)
23:56:45 × motte quits (~weechat@unaffiliated/motte) (Ping timeout: 240 seconds)
23:57:29 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
23:57:30 × brettgilio quits (~brettgili@brettgilio.com) (Quit: Long live IRC! <https://brettgilio.com>)
23:57:36 mav2 joins (~mav@p5b02806a.dip0.t-ipconnect.de)

All times are in UTC on 2020-10-04.