2020/11/07

2020-11-07 00:00:15 +0100 <ski> anyway, this is just a suggestion. you don't have to do it, if it sounds too involved. perhaps you can think of some other interesting alternative or property. one cool property would be a method to actually render the shape on some graphical canvas or something. but then you'd have to dive into some graphical library
2020-11-07 00:00:21 +0100Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 256 seconds)
2020-11-07 00:00:37 +0100jff(~Thunderbi@a109-49-149-2.cpe.netcabo.pt) (Quit: jff)
2020-11-07 00:00:49 +0100jff(~Thunderbi@a109-49-149-2.cpe.netcabo.pt)
2020-11-07 00:04:08 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2020-11-07 00:04:18 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62)
2020-11-07 00:04:45 +0100jff(~Thunderbi@a109-49-149-2.cpe.netcabo.pt) (Ping timeout: 240 seconds)
2020-11-07 00:05:17 +0100 <ski> btw, the trade-off i expressed, between product/record types, and sum/variant types, is quite similar to the notion of shallow vs. deep embedding of an embedded domain-specific language (EDSL)
2020-11-07 00:05:24 +0100 <ski> @wiki Embedded domain specific language
2020-11-07 00:05:24 +0100 <lambdabot> https://wiki.haskell.org/Embedded_domain_specific_language
2020-11-07 00:07:21 +0100Tario(~Tario@201.192.165.173)
2020-11-07 00:10:20 +0100 <ski> (however, often the "shallow" embedding is just expressed as implementing the type of your EDSL expressions as the "main interpretation". for a parser, this might be a function of type `String -> Maybe (a,String)' (where `a' is the parse result of the parser). however, sometimes one also want to compute other "properties" or "alternative interpretations", which would then be other
2020-11-07 00:10:26 +0100 <ski> fields/methods/slots/components, alongside the main one, in a product/record type. e.g., for a parser, you might want (for optimization purposes) a (`nullable') `Bool' to express whether a parser can succeed, while consuming no input, and a (`first') `[Char]', to express what the initial character could possibly be, if the parser is to have any chance of succeeding)
2020-11-07 00:11:35 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-07 00:11:44 +0100Franciman(~francesco@host-79-36-167-172.retail.telecomitalia.it) (Quit: Leaving)
2020-11-07 00:11:57 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 00:13:28 +0100AlterEgo-(~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving)
2020-11-07 00:14:30 +0100hackagesexp-grammar 2.3.0 - Invertible grammar combinators for S-expressions https://hackage.haskell.org/package/sexp-grammar-2.3.0 (EugeneSmolanka)
2020-11-07 00:16:30 +0100hackagepersistent-documentation 0.1.0.2 - Documentation DSL for persistent entities https://hackage.haskell.org/package/persistent-documentation-0.1.0.2 (parsonsmatt)
2020-11-07 00:16:38 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 00:18:50 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
2020-11-07 00:21:12 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 00:24:14 +0100conal(~conal@198.8.81.71)
2020-11-07 00:25:22 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-07 00:28:07 +0100xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 256 seconds)
2020-11-07 00:28:35 +0100xerox_(~xerox@unaffiliated/xerox)
2020-11-07 00:32:02 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 00:32:51 +0100 <cohn> ski: ok, product type implementation: https://dpaste.org/M7vG
2020-11-07 00:33:14 +0100 <cohn> working on the sum type.
2020-11-07 00:34:26 +0100 <ski> > pi
2020-11-07 00:34:28 +0100 <lambdabot> 3.141592653589793
2020-11-07 00:35:07 +0100 <ski> (seems to me the rectangular circumference, and the circular area, isn't quite right)
2020-11-07 00:35:17 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-07 00:35:19 +0100twopoint718(~cjw@fsf/member/twopoint718) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 00:36:22 +0100falafel(~falafel@2601:247:c400:1390:7811:313f:d0f3:f9f4)
2020-11-07 00:36:49 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2020-11-07 00:37:17 +0100 <cohn> yep, easy fix
2020-11-07 00:38:04 +0100 <ski> btw, note that `rectangle' is corresponding to an OO class (it contains the implementations of the methods `circumference' and `area'), and also corresponds to its class constructor (it takes the parameters `width',`height', which acts like (private) instance variables)
2020-11-07 00:38:22 +0100 <ski> (and similarly for `circle' with its `radius' parameter)
2020-11-07 00:40:32 +0100whatisRT(~whatisRT@2002:5b41:6a33:0:dea6:32ff:fe5b:d45f)
2020-11-07 00:40:38 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2020-11-07 00:41:07 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 00:41:09 +0100 <ski> (and if you think you want mutable state in your objects, it's quite easy to have the "class constructor" (the function producing your object) to allocate some mutable cell(s), with `IO', and have some methods (with `IO Something' as return type) read from and write into it -- at least once you're a bit familiar with how `IO' works, and can figure out how to use `IORef' (or `IOArray', if you prefer))
2020-11-07 00:43:08 +0100 <ski> i think it's good to explicitly point out how one can "do OO", at least to some extent, in Haskell. of course, if you want implementation inheritance, possibly even with open recursion, then it'll be a little bit more involved (but quite possible) to get that. but simple OO coding, like this, is not that hard
2020-11-07 00:43:19 +0100nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2020-11-07 00:43:43 +0100 <cohn> fixed: https://dpaste.org/cSsn
2020-11-07 00:43:47 +0100da39a3ee5e6b4b0d(~textual@cm-171-98-70-75.revip7.asianet.co.th)
2020-11-07 00:44:05 +0100dcoutts_(~duncan@33.14.75.194.dyn.plus.net) (Ping timeout: 240 seconds)
2020-11-07 00:44:06 +0100 <ski> that looks fine :)
2020-11-07 00:44:33 +0100 <cohn> yea, I've briefly messed with UArray and STUArray
2020-11-07 00:44:34 +0100 <ski> (fwiw, i think most of your round brackets are redundant)
2020-11-07 00:44:39 +0100__monty__(~toonn@unaffiliated/toonn) (Quit: leaving)
2020-11-07 00:44:41 +0100skinods
2020-11-07 00:44:56 +0100 <cohn> probably are but OCD is what it is. heh
2020-11-07 00:45:40 +0100 <ski> (the only ones that aren't are the ones around `width+height')
2020-11-07 00:45:45 +0100 <cohn> ya
2020-11-07 00:45:57 +0100 <ski> any luck on the sum type version ?
2020-11-07 00:46:10 +0100 <cohn> working on it now.
2020-11-07 00:46:10 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-07 00:46:17 +0100 <ski> take your time
2020-11-07 00:50:38 +0100 <ski> (btw, perhaps it's obvious, but if you wanted a method to take any additional parameters, you'd simply stuff a function into the corresponding field in the record)
2020-11-07 00:51:32 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-07 00:52:04 +0100mdunnio(~mdunnio@208.59.170.5) (Remote host closed the connection)
2020-11-07 00:52:11 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-07 00:54:16 +0100gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
2020-11-07 00:54:18 +0100 <cohn> ok, sum type version: https://dpaste.org/5Fvz
2020-11-07 00:54:31 +0100 <cohn> brb.
2020-11-07 00:54:32 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce)
2020-11-07 00:55:02 +0100 <cohn> I added the `2` suffix since both types are defined in the same file.
2020-11-07 00:56:20 +0100 <ski> yea, i figured
2020-11-07 00:56:27 +0100 <ski> looks great ! :)
2020-11-07 00:57:18 +0100dxld(~dxld@2a01:4f8:201:89ff:7479:df6a:7ab8:8305) (Quit: Bye)
2020-11-07 00:57:39 +0100 <ski> now note how the "table" of the four alternative-property implementations ({circumference,area} * {circle,rectangle}) are distributed differently, in these two implementations
2020-11-07 00:57:54 +0100argent0(~argent0@168.227.98.85)
2020-11-07 00:58:48 +0100olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2020-11-07 00:58:51 +0100 <ski> with the "alternative rows" `rectangle' and `circle' in the product (OO) version, and the "property columns" `circumference' and `area' in the sum ("FP") version
2020-11-07 00:59:17 +0100 <ski> (and if you feel like it, you could try adding some new alternative, ior some new property)
2020-11-07 00:59:24 +0100CodeAlways(uid272474@gateway/web/irccloud.com/x-urtbqxrwhpvhyukz) (Quit: Connection closed for inactivity)
2020-11-07 00:59:30 +0100dxld(~dxld@80-109-136-248.cable.dynamic.surfer.at)
2020-11-07 00:59:55 +0100 <ski> but, anyway, hopefully this small exercise gives you at least a somewhat better feel and understanding for the difference, the trade-off, i was mentioning above
2020-11-07 01:00:01 +0100feedoo1(~feedoo@178.239.168.171) ()
2020-11-07 01:00:14 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 01:02:12 +0100 <ski> (btw, note that nested pattern-matching for sum types, corresponds, dually, to constructing a nested record (constructing an object (implementing some interface), where some method also constructs some object (implementing some interface)))
2020-11-07 01:02:52 +0100 <ski> oh .. and it would also be nice if one could use an alternative syntax for records, something like
2020-11-07 01:03:05 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 240 seconds)
2020-11-07 01:03:34 +0100 <ski> codata Shape = Circumference :: Double & Area :: Double deriving Show
2020-11-07 01:03:46 +0100 <ski> rectangle :: Double -> Double -> Shape
2020-11-07 01:04:11 +0100 <ski> #Circumference (rectangle w h) = 2 * (w + h)
2020-11-07 01:04:35 +0100 <ski> #Area (rectangle w h) = w * h
2020-11-07 01:04:55 +0100pfurla(~pfurla@64.145.79.100)
2020-11-07 01:05:25 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-11-07 01:05:25 +0100 <ski> (one might call this "message-dispatching" syntax (compare with pattern-matching syntax). the language Agda supports something like this, called "copatterns" there)
2020-11-07 01:06:12 +0100 <ski> (`rectangle' is defined, above, in terms of what each field/method of a call to `rectangle' is to be)
2020-11-07 01:07:14 +0100xff0x(~fox@2001:1a81:526d:d800:e0c1:ba75:a0ef:2a5b) (Ping timeout: 264 seconds)
2020-11-07 01:13:47 +0100xff0x(~fox@2001:1a81:526d:d800:e0c1:ba75:a0ef:2a5b)
2020-11-07 01:15:01 +0100Deide(~Deide@217.155.19.23) (Quit: Seeee yaaaa)
2020-11-07 01:15:36 +0100nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 265 seconds)
2020-11-07 01:16:25 +0100Tattletale(~Tattletal@unaffiliated/sundancertp)
2020-11-07 01:17:37 +0100 <cohn> b
2020-11-07 01:17:46 +0100darjeeling_(~darjeelin@115.215.43.51) (Ping timeout: 256 seconds)
2020-11-07 01:18:10 +0100Tattletale(~Tattletal@unaffiliated/sundancertp) ()
2020-11-07 01:18:20 +0100 <cohn> yes, it's very helpful. thank you!
2020-11-07 01:19:41 +0100danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds)
2020-11-07 01:20:15 +0100darjeeling_(~darjeelin@115.215.43.51)
2020-11-07 01:21:35 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-07 01:22:13 +0100Tops22(~Tobias@dyndsl-095-033-022-214.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2020-11-07 01:22:17 +0100hekkaidekapus_(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-11-07 01:22:57 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Read error: Connection reset by peer)
2020-11-07 01:23:42 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-07 01:23:43 +0100hekkaidekapus(~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
2020-11-07 01:26:29 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 01:27:13 +0100jff(~Thunderbi@a109-49-149-2.cpe.netcabo.pt)
2020-11-07 01:27:19 +0100isBEKaml(~isBEKaml@unaffiliated/isbekaml)
2020-11-07 01:27:46 +0100m0rphism(~m0rphism@HSI-KBW-095-208-098-207.hsi5.kabel-badenwuerttemberg.de) (Ping timeout: 246 seconds)
2020-11-07 01:28:12 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Remote host closed the connection)
2020-11-07 01:28:54 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
2020-11-07 01:29:10 +0100Rudd0(~Rudd0@185.189.115.103) (Ping timeout: 256 seconds)
2020-11-07 01:29:37 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-07 01:33:02 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2020-11-07 01:33:12 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-07 01:34:25 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 256 seconds)
2020-11-07 01:35:24 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr) (Ping timeout: 256 seconds)
2020-11-07 01:38:28 +0100pera(~pera@unaffiliated/pera) (Quit: leaving)
2020-11-07 01:42:29 +0100alp(~alp@2a01:e0a:58b:4920:7cc6:32d7:a280:df74) (Ping timeout: 272 seconds)
2020-11-07 01:44:49 +0100whatisRT(~whatisRT@2002:5b41:6a33:0:dea6:32ff:fe5b:d45f) (Read error: Connection reset by peer)
2020-11-07 01:45:25 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
2020-11-07 01:47:01 +0100codygman(~codygman@2600:380:f952:a05a:195d:2af8:616e:ca86) (Read error: Connection reset by peer)
2020-11-07 01:47:21 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net)
2020-11-07 01:49:00 +0100hackagegit-brunch 1.4.4.0 - git checkout command-line tool https://hackage.haskell.org/package/git-brunch-1.4.4.0 (andys8)
2020-11-07 01:49:58 +0100pfurla(~pfurla@64.145.79.100) (Ping timeout: 260 seconds)
2020-11-07 01:50:41 +0100Usurp(~Usurp@178.162.212.214)
2020-11-07 01:51:05 +0100jff(~Thunderbi@a109-49-149-2.cpe.netcabo.pt) (Ping timeout: 240 seconds)
2020-11-07 01:51:19 +0100 <ski> cohn : yw :)
2020-11-07 01:53:54 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2020-11-07 01:58:50 +0100Maxdamantus(~Maxdamant@unaffiliated/maxdamantus) (Ping timeout: 264 seconds)
2020-11-07 02:00:32 +0100Maxdamantus(~Maxdamant@unaffiliated/maxdamantus)
2020-11-07 02:00:56 +0100isBEKaml_(~isBEKaml@unaffiliated/isbekaml)
2020-11-07 02:01:14 +0100joaj(~joaj@2001:818:e326:8200:5273:55b7:3a86:e6ca) (Quit: WeeChat 2.9)
2020-11-07 02:02:52 +0100isBEKaml(~isBEKaml@unaffiliated/isbekaml) (Ping timeout: 272 seconds)
2020-11-07 02:02:54 +0100Varis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2020-11-07 02:04:11 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-07 02:05:54 +0100isBEKaml_isBEKaml
2020-11-07 02:08:57 +0100Varis(~Tadas@unaffiliated/varis)
2020-11-07 02:10:51 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2020-11-07 02:12:57 +0100da39a3ee5e6b4b0d(~textual@cm-171-98-70-75.revip7.asianet.co.th) (Ping timeout: 256 seconds)
2020-11-07 02:14:05 +0100xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 256 seconds)
2020-11-07 02:17:02 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-07 02:17:59 +0100Stanley00(~stanley00@unaffiliated/stanley00) (Remote host closed the connection)
2020-11-07 02:18:52 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2020-11-07 02:19:02 +0100Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Ping timeout: 256 seconds)
2020-11-07 02:21:49 +0100sw1nn(~sw1nn@2a00:23c6:2385:3a00:fd2b:5be1:b825:ba91) (Ping timeout: 268 seconds)
2020-11-07 02:22:52 +0100Jeanne-Kamikaze(~Jeanne-Ka@68.235.43.158)
2020-11-07 02:24:05 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 240 seconds)
2020-11-07 02:25:25 +0100isBEKaml(~isBEKaml@unaffiliated/isbekaml) (Quit: leaving)
2020-11-07 02:25:33 +0100Lord_of_Life_(~Lord@46.217.216.42)
2020-11-07 02:25:46 +0100Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 256 seconds)
2020-11-07 02:27:17 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-07 02:28:27 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62)
2020-11-07 02:34:22 +0100sw1nn(~sw1nn@2a00:23c6:2385:3a00:764e:ee26:f610:acc0)
2020-11-07 02:37:48 +0100solonarv(~solonarv@astrasbourg-653-1-263-62.w92-161.abo.wanadoo.fr) (Ping timeout: 258 seconds)
2020-11-07 02:39:04 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta)
2020-11-07 02:42:39 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
2020-11-07 02:43:28 +0100Tario(~Tario@201.192.165.173)
2020-11-07 02:44:03 +0100siggard(michalc@gateway/shell/xshellz/x-bewvahwmjpoxlmze) (Ping timeout: 265 seconds)
2020-11-07 02:45:45 +0100Ariakenom_(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se) (Quit: Leaving)
2020-11-07 02:46:05 +0100Stanley00(~stanley00@unaffiliated/stanley00) (Read error: Connection reset by peer)
2020-11-07 02:46:55 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
2020-11-07 02:53:18 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-07 02:54:25 +0100siggard(michalc@gateway/shell/xshellz/x-jnqqvyhozxttnqkw)
2020-11-07 02:54:37 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-07 02:56:00 +0100jakob_(~textual@p200300f49f162200b5116e36aec79be8.dip0.t-ipconnect.de)
2020-11-07 02:59:05 +0100 <bqv> ski: do you know polysemy?
2020-11-07 02:59:33 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
2020-11-07 03:00:10 +0100 <bqv> Actually, belay that
2020-11-07 03:00:22 +0100 <bqv> I should just avoid IO, then this is easy
2020-11-07 03:00:35 +0100 <bqv> DSL time
2020-11-07 03:00:43 +0100conal(~conal@198.8.81.71)
2020-11-07 03:01:36 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 03:02:20 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-07 03:02:27 +0100Usurp(~Usurp@178.162.212.214) (Remote host closed the connection)
2020-11-07 03:03:07 +0100mdunnio(~mdunnio@208.59.170.5) (Remote host closed the connection)
2020-11-07 03:05:30 +0100conal(~conal@198.8.81.71) (Ping timeout: 256 seconds)
2020-11-07 03:06:13 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2020-11-07 03:11:31 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-07 03:12:25 +0100olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 240 seconds)
2020-11-07 03:23:59 +0100conal(~conal@198.8.81.71)
2020-11-07 03:27:15 +0100xchg(~xchg@84.39.116.180)
2020-11-07 03:27:42 +0100mbomba(~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca)
2020-11-07 03:29:56 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 03:31:54 +0100xerox_(~xerox@unaffiliated/xerox)
2020-11-07 03:32:22 +0100texasmynsted(~texasmyns@097-085-244-180.biz.spectrum.com) (Remote host closed the connection)
2020-11-07 03:32:57 +0100texasmynsted(~texasmyns@64.44.55.116)
2020-11-07 03:33:59 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-07 03:34:19 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-07 03:34:50 +0100conal(~conal@198.8.81.71)
2020-11-07 03:34:58 +0100argent0(~argent0@168.227.98.85) (Ping timeout: 256 seconds)
2020-11-07 03:35:05 +0100conal(~conal@198.8.81.71) (Client Quit)
2020-11-07 03:36:47 +0100mbomba(~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca) (Quit: WeeChat 2.9)
2020-11-07 03:38:31 +0100texasmynsted(~texasmyns@64.44.55.116) (Ping timeout: 256 seconds)
2020-11-07 03:40:34 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 256 seconds)
2020-11-07 03:45:45 +0100st8less(~st8less@2603:a060:11fd:0:eda9:20b2:c735:3ae0) (Quit: WeeChat 2.7.1)
2020-11-07 03:48:46 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2020-11-07 03:52:07 +0100jakob_(~textual@p200300f49f162200b5116e36aec79be8.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
2020-11-07 03:52:14 +0100xff0x(~fox@2001:1a81:526d:d800:e0c1:ba75:a0ef:2a5b) (Ping timeout: 264 seconds)
2020-11-07 03:53:58 +0100xff0x(~fox@2001:1a81:52a6:6c00:fcfd:752d:109:276d)
2020-11-07 03:54:49 +0100HarveyPwca(~HarveyPwc@c-98-220-98-201.hsd1.il.comcast.net)
2020-11-07 03:55:01 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 04:00:02 +0100xchg(~xchg@84.39.116.180) ()
2020-11-07 04:02:27 +0100texasmynsted(~texasmyns@64.44.55.116)
2020-11-07 04:02:33 +0100texasmynsted(~texasmyns@64.44.55.116) (Remote host closed the connection)
2020-11-07 04:03:05 +0100mmohammadi981266(~mmohammad@188.210.99.150)
2020-11-07 04:03:10 +0100texasmynsted(~texasmyns@64.44.55.116)
2020-11-07 04:06:09 +0100lagothrix(~lagothrix@unaffiliated/lagothrix) (Killed (kornbluth.freenode.net (Nickname regained by services)))
2020-11-07 04:06:17 +0100lagothrix(~lagothrix@unaffiliated/lagothrix)
2020-11-07 04:06:32 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62)
2020-11-07 04:07:12 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
2020-11-07 04:07:40 +0100texasmynsted(~texasmyns@64.44.55.116) (Ping timeout: 265 seconds)
2020-11-07 04:07:50 +0100theDon(~td@94.134.91.182) (Ping timeout: 256 seconds)
2020-11-07 04:09:40 +0100theDon(~td@94.134.91.70)
2020-11-07 04:11:51 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-07 04:14:17 +0100oioi6912730(~raz@8afbda67.st-andrews.ac.uk) (Remote host closed the connection)
2020-11-07 04:16:42 +0100drbean(~drbean@TC210-63-209-78.static.apol.com.tw)
2020-11-07 04:17:25 +0100aoei(~aoei@240.223.246.35.bc.googleusercontent.com)
2020-11-07 04:26:02 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 04:28:14 +0100falafel(~falafel@2601:247:c400:1390:7811:313f:d0f3:f9f4) (Ping timeout: 264 seconds)
2020-11-07 04:30:16 +0100irc_user(uid423822@gateway/web/irccloud.com/x-xtmvadlevdctcftt)
2020-11-07 04:35:29 +0100conal(~conal@64.71.133.70)
2020-11-07 04:35:44 +0100danso(~dan@69-165-210-185.cable.teksavvy.com)
2020-11-07 04:36:49 +0100falafel(~falafel@2601:247:c400:1390:7811:313f:d0f3:f9f4)
2020-11-07 04:37:09 +0100coot__(~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl)
2020-11-07 04:39:56 +0100coot(~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl) (Ping timeout: 244 seconds)
2020-11-07 04:39:56 +0100coot__coot
2020-11-07 04:43:33 +0100conal_(~conal@ip-66-115-176-219.creativelink.net)
2020-11-07 04:43:41 +0100conal(~conal@64.71.133.70) (Ping timeout: 256 seconds)
2020-11-07 04:46:31 +0100justsomeguy(~justsomeg@216.186.218.241)
2020-11-07 04:46:32 +0100justsomeguy(~justsomeg@216.186.218.241) (Changing host)
2020-11-07 04:46:32 +0100justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2020-11-07 04:50:07 +0100yinfeng(~yinfeng@114.212.87.131)
2020-11-07 04:50:32 +0100|-\|-\(~justsomeg@216.186.218.241)
2020-11-07 04:50:33 +0100|-\|-\(~justsomeg@216.186.218.241) (Changing host)
2020-11-07 04:50:33 +0100|-\|-\(~justsomeg@unaffiliated/--/x-3805311)
2020-11-07 04:52:00 +0100|-\|-\(~justsomeg@unaffiliated/--/x-3805311) (Client Quit)
2020-11-07 04:53:19 +0100justsomeguy(~justsomeg@unaffiliated/--/x-3805311) (Ping timeout: 256 seconds)
2020-11-07 04:53:34 +0100|-\|-\(~justsomeg@unaffiliated/--/x-3805311)
2020-11-07 04:54:51 +0100|-\|-\justsomeguy
2020-11-07 04:55:27 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-07 04:57:02 +0100falafel(~falafel@2601:247:c400:1390:7811:313f:d0f3:f9f4) (Ping timeout: 264 seconds)
2020-11-07 04:57:32 +0100shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-11-07 04:59:52 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 246 seconds)
2020-11-07 05:00:23 +0100Rudd0(~Rudd0@185.189.115.108)
2020-11-07 05:01:26 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-07 05:01:33 +0100elliott__(~elliott@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-07 05:01:55 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 05:02:23 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 05:02:55 +0100tsrt^(tsrt@ip98-184-89-2.mc.at.cox.net) (Read error: Connection reset by peer)
2020-11-07 05:03:12 +0100wei2912(~wei2912@unaffiliated/wei2912)
2020-11-07 05:06:42 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-11-07 05:11:06 +0100vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-11-07 05:16:17 +0100raul782(~raul782@190.237.41.135)
2020-11-07 05:25:23 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62)
2020-11-07 05:27:11 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye)
2020-11-07 05:29:21 +0100machinedgod(~machinedg@207.253.244.210) (Ping timeout: 265 seconds)
2020-11-07 05:30:12 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2020-11-07 05:30:27 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 05:30:31 +0100Cotillion(~Cotillion@217.146.82.202)
2020-11-07 05:34:42 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-07 05:41:10 +0100hidedagger(~nate@125.161.131.218) (Quit: WeeChat 2.9)
2020-11-07 05:43:28 +0100Gurkenglas__(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 260 seconds)
2020-11-07 05:43:28 +0100raul782(~raul782@190.237.41.135) ()
2020-11-07 05:45:03 +0100pjb(~t@2a01cb04063ec5002c0fc7d86fb8e728.ipv6.abo.wanadoo.fr) (Ping timeout: 272 seconds)
2020-11-07 05:46:26 +0100elliott__(~elliott@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
2020-11-07 05:48:48 +0100carlomagno1(~cararell@148.87.23.10) (Remote host closed the connection)
2020-11-07 05:49:21 +0100carlomagno(~cararell@148.87.23.10)
2020-11-07 05:50:22 +0100Tene(~tene@poipu/supporter/slacker/tene) (Remote host closed the connection)
2020-11-07 05:50:22 +0100ByronJohnson(~bairyn@unaffiliated/bob0) (Remote host closed the connection)
2020-11-07 05:56:44 +0100scasc(~szabi@213142096120.public.telering.at)
2020-11-07 06:02:47 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce) (Remote host closed the connection)
2020-11-07 06:03:12 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce)
2020-11-07 06:03:30 +0100bairyn(~bairyn@unaffiliated/bob0)
2020-11-07 06:04:34 +0100scasc(~szabi@213142096120.public.telering.at) (Ping timeout: 256 seconds)
2020-11-07 06:07:00 +0100toorevitimirp(~tooreviti@117.182.183.132)
2020-11-07 06:08:03 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce) (Ping timeout: 240 seconds)
2020-11-07 06:09:44 +0100argent0(~argent0@168.227.98.85)
2020-11-07 06:13:06 +0100vicfred(~vicfred@unaffiliated/vicfred)
2020-11-07 06:13:36 +0100machinedgod(~machinedg@207.253.244.210)
2020-11-07 06:22:18 +0100falafel(~falafel@2601:247:c400:1390:7811:313f:d0f3:f9f4)
2020-11-07 06:26:39 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce)
2020-11-07 06:26:47 +0100bitmapper(uid464869@gateway/web/irccloud.com/x-ixbzhzypphotnxrx) (Quit: Connection closed for inactivity)
2020-11-07 06:29:29 +0100pjb(~t@2a01cb04063ec5003814b144b2eec567.ipv6.abo.wanadoo.fr)
2020-11-07 06:35:52 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-07 06:36:13 +0100lxsameer(~lxsameer@unaffiliated/lxsameer) (Ping timeout: 264 seconds)
2020-11-07 06:38:20 +0100day_(~Unknown@unaffiliated/day)
2020-11-07 06:40:36 +0100mmohammadi981266(~mmohammad@188.210.99.150) (Quit: I quit (╯°□°)╯︵ ┻━┻)
2020-11-07 06:41:25 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2020-11-07 06:41:33 +0100day(~Unknown@unaffiliated/day) (Ping timeout: 256 seconds)
2020-11-07 06:41:34 +0100day_day
2020-11-07 06:44:30 +0100Sanchayan(~Sanchayan@223.226.118.59)
2020-11-07 06:48:00 +0100hackagegjk2d 0.1.0.3 - https://hackage.haskell.org/package/gjk2d-0.1.0.3 (suzumiya)
2020-11-07 06:49:51 +0100irc_user(uid423822@gateway/web/irccloud.com/x-xtmvadlevdctcftt) (Quit: Connection closed for inactivity)
2020-11-07 06:50:45 +0100jedws(~jedws@101.184.150.81) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 06:51:52 +0100scasc(~szabi@213142096120.public.telering.at)
2020-11-07 06:54:54 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2020-11-07 06:55:33 +0100Tario(~Tario@201.192.165.173)
2020-11-07 06:56:11 +0100urodna(~urodna@unaffiliated/urodna) (Quit: urodna)
2020-11-07 06:56:23 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-07 06:57:58 +0100bairyn(~bairyn@unaffiliated/bob0) (Remote host closed the connection)
2020-11-07 07:00:01 +0100Cotillion(~Cotillion@217.146.82.202) ()
2020-11-07 07:01:15 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
2020-11-07 07:02:14 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 07:02:31 +0100machinedgod(~machinedg@207.253.244.210) (Ping timeout: 256 seconds)
2020-11-07 07:06:53 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-11-07 07:07:14 +0100toorevitimirp(~tooreviti@117.182.183.132) (Remote host closed the connection)
2020-11-07 07:10:32 +0100Saukk(~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4)
2020-11-07 07:12:56 +0100tff^(tff@ip98-184-89-2.mc.at.cox.net)
2020-11-07 07:15:20 +0100darjeeling_(~darjeelin@115.215.43.51) (Ping timeout: 258 seconds)
2020-11-07 07:17:20 +0100jedws(~jedws@101.184.150.81)
2020-11-07 07:21:08 +0100aaronmcadam(~aaronmcad@185.204.1.185)
2020-11-07 07:21:26 +0100cinimod_cinimod
2020-11-07 07:22:42 +0100Jon(~jon@redmars.org) (Ping timeout: 272 seconds)
2020-11-07 07:23:16 +0100Jon(~jon@redmars.org)
2020-11-07 07:24:03 +0100bgamari(~bgamari@72.65.102.116)
2020-11-07 07:24:05 +0100Jeanne-Kamikaze(~Jeanne-Ka@68.235.43.158) (Ping timeout: 240 seconds)
2020-11-07 07:24:36 +0100dddddd(~dddddd@unaffiliated/dddddd) (Ping timeout: 272 seconds)
2020-11-07 07:25:06 +0100bgamari_(~bgamari@72.65.102.116) (Read error: Connection reset by peer)
2020-11-07 07:25:55 +0100dddddd(~dddddd@unaffiliated/dddddd)
2020-11-07 07:26:19 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2020-11-07 07:29:52 +0100tff^(tff@ip98-184-89-2.mc.at.cox.net) ()
2020-11-07 07:30:17 +0100ClaudiusMaximus(~claude@unaffiliated/claudiusmaximus) (Quit: ...zzzZZZ)
2020-11-07 07:30:59 +0100CodeAlways(uid272474@gateway/web/irccloud.com/x-asdidcduiyoospnp)
2020-11-07 07:31:52 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 07:33:39 +0100benjamingr__(uid23465@gateway/web/irccloud.com/x-ifxghrbxkdgdxjip) (Quit: Connection closed for inactivity)
2020-11-07 07:34:00 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce) (Remote host closed the connection)
2020-11-07 07:35:08 +0100bliminse(~bliminse@host109-156-197-211.range109-156.btcentralplus.com) (Quit: leaving)
2020-11-07 07:36:23 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 07:39:10 +0100berberman_(~berberman@unaffiliated/berberman)
2020-11-07 07:39:23 +0100berberman(~berberman@unaffiliated/berberman) (Ping timeout: 246 seconds)
2020-11-07 07:40:13 +0100justsomeguy(~justsomeg@unaffiliated/--/x-3805311) ()
2020-11-07 07:41:24 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 07:42:55 +0100howdoi(uid224@gateway/web/irccloud.com/x-zskrebdnslnraypo) (Quit: Connection closed for inactivity)
2020-11-07 07:48:06 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-07 07:50:11 +0100alp(~alp@2a01:e0a:58b:4920:43c:798e:8d90:29a0)
2020-11-07 07:52:44 +0100vs^(wear_a_mas@ip98-184-89-2.mc.at.cox.net)
2020-11-07 07:53:06 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
2020-11-07 07:58:15 +0100darjeeling_(~darjeelin@115.215.43.51)
2020-11-07 07:59:27 +0100Saukk(~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) (Remote host closed the connection)
2020-11-07 08:00:39 +0100bliminse(~bliminse@host109-156-197-211.range109-156.btcentralplus.com)
2020-11-07 08:05:01 +0100Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-11-07 08:08:43 +0100Stanley00(~stanley00@unaffiliated/stanley00) ()
2020-11-07 08:10:32 +0100bairyn(~bairyn@unaffiliated/bob0)
2020-11-07 08:14:16 +0100alx741(~alx741@186.178.110.222) (Ping timeout: 256 seconds)
2020-11-07 08:15:13 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 08:15:43 +0100coot(~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl) (Ping timeout: 260 seconds)
2020-11-07 08:19:48 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-11-07 08:26:36 +0100aveltras(uid364989@gateway/web/irccloud.com/x-alccjlfffbnhjsto)
2020-11-07 08:27:12 +0100mirrorbird(~psutcliff@176.227.54.4)
2020-11-07 08:27:12 +0100alx741(~alx741@186.178.110.159)
2020-11-07 08:28:19 +0100coot(~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl)
2020-11-07 08:29:26 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2020-11-07 08:30:53 +0100acidjnk_new2(~acidjnk@p200300d0c718f650b06a22fed16a11d3.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-07 08:32:23 +0100toorevitimirp(~tooreviti@117.182.183.132)
2020-11-07 08:33:30 +0100hackagegithud 3.2.2 - Heads up, and you see your GIT context https://hackage.haskell.org/package/githud-3.2.2 (gbataille)
2020-11-07 08:33:48 +0100vicfred_(~vicfred@unaffiliated/vicfred)
2020-11-07 08:34:25 +0100mmohammadi9812(~mmohammad@188.210.99.150) (Ping timeout: 240 seconds)
2020-11-07 08:34:30 +0100hackagearch-hs 0.4.0.0 - Distribute hackage packages to archlinux https://hackage.haskell.org/package/arch-hs-0.4.0.0 (berberman)
2020-11-07 08:36:35 +0100vicfred(~vicfred@unaffiliated/vicfred) (Ping timeout: 256 seconds)
2020-11-07 08:36:40 +0100vs^(wear_a_mas@ip98-184-89-2.mc.at.cox.net) ()
2020-11-07 08:37:03 +0100chaosmasttter(~chaosmast@p200300c4a70b9f0179cc69ad5d026a5b.dip0.t-ipconnect.de)
2020-11-07 08:37:53 +0100tsrt^(tsrt@ip98-184-89-2.mc.at.cox.net)
2020-11-07 08:38:49 +0100revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) (Ping timeout: 265 seconds)
2020-11-07 08:39:21 +0100revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net)
2020-11-07 08:42:01 +0100mmohammadi9812(~mmohammad@188.209.9.200)
2020-11-07 08:42:23 +0100alp(~alp@2a01:e0a:58b:4920:43c:798e:8d90:29a0) (Ping timeout: 272 seconds)
2020-11-07 08:42:34 +0100Sanchayan(~Sanchayan@223.226.118.59) (Quit: leaving)
2020-11-07 08:45:38 +0100jedws(~jedws@101.184.150.81) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 08:46:14 +0100xff0x(~fox@2001:1a81:52a6:6c00:fcfd:752d:109:276d) (Ping timeout: 264 seconds)
2020-11-07 08:46:53 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 08:47:07 +0100xff0x(~fox@2001:1a81:52a6:6c00:7e46:d829:7bc0:5d97)
2020-11-07 08:48:42 +0100danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
2020-11-07 08:52:24 +0100rotaerk(rotaerk@2600:3c02::f03c:91ff:fe70:4a45) (Ping timeout: 240 seconds)
2020-11-07 08:54:00 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 08:57:14 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-07 08:59:10 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 09:00:45 +0100chaosmasttter(~chaosmast@p200300c4a70b9f0179cc69ad5d026a5b.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
2020-11-07 09:01:31 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 258 seconds)
2020-11-07 09:01:43 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 246 seconds)
2020-11-07 09:04:40 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 272 seconds)
2020-11-07 09:05:31 +0100rotaerk(~rotaerk@ender.afternet.org)
2020-11-07 09:09:15 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 09:10:21 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 09:13:30 +0100hackagegraphql 0.11.0.0 - Haskell GraphQL implementation https://hackage.haskell.org/package/graphql-0.11.0.0 (belka)
2020-11-07 09:14:33 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 09:14:37 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-11-07 09:14:45 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 09:19:26 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 09:21:09 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-11-07 09:22:18 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 09:24:05 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 240 seconds)
2020-11-07 09:24:53 +0100knupfer(~Thunderbi@200116b82cc0b9006c4560fffec8d176.dip.versatel-1u1.de)
2020-11-07 09:25:03 +0100gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh)
2020-11-07 09:25:55 +0100knupfer(~Thunderbi@200116b82cc0b9006c4560fffec8d176.dip.versatel-1u1.de) (Remote host closed the connection)
2020-11-07 09:26:03 +0100knupfer(~Thunderbi@200116b82cc0b900bc0d1f9c6cebdb3b.dip.versatel-1u1.de)
2020-11-07 09:27:39 +0100benjamingr__(uid23465@gateway/web/irccloud.com/x-oyfaffahduvlgnmv)
2020-11-07 09:27:45 +0100olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2020-11-07 09:28:50 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2020-11-07 09:29:09 +0100berberman_(~berberman@unaffiliated/berberman) (Quit: ZNC 1.7.5 - https://znc.in)
2020-11-07 09:29:41 +0100berberman(~berberman@unaffiliated/berberman)
2020-11-07 09:29:45 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 09:30:59 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 256 seconds)
2020-11-07 09:33:38 +0100falafel(~falafel@2601:247:c400:1390:7811:313f:d0f3:f9f4) (Ping timeout: 264 seconds)
2020-11-07 09:34:10 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2020-11-07 09:35:04 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 272 seconds)
2020-11-07 09:37:53 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 09:38:37 +0100_xor(~xor@74.215.46.133) (Read error: Connection reset by peer)
2020-11-07 09:39:35 +0100_xor(~xor@74.215.46.133)
2020-11-07 09:39:49 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 09:42:24 +0100fendor(~fendor@77.119.129.239.wireless.dyn.drei.com)
2020-11-07 09:42:40 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-11-07 09:44:25 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 240 seconds)
2020-11-07 09:45:57 +0100drbean(~drbean@TC210-63-209-78.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin1 - https://znc.in)
2020-11-07 09:48:24 +0100Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2020-11-07 09:49:53 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 09:52:46 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 09:53:01 +0100toorevitimirp(~tooreviti@117.182.183.132) (Ping timeout: 264 seconds)
2020-11-07 09:54:47 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 10:00:02 +0100aaronmcadam(~aaronmcad@185.204.1.185) ()
2020-11-07 10:04:18 +0100avdb(~avdb@ip-62-235-73-186.dsl.scarlet.be)
2020-11-07 10:10:34 +0100Volt_(~Volt_@c-73-145-164-70.hsd1.mi.comcast.net)
2020-11-07 10:15:24 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 10:19:55 +0100alp(~alp@2a01:e0a:58b:4920:a483:805:42d9:dd26)
2020-11-07 10:20:03 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-11-07 10:20:49 +0100WiQert(~WiQert@s91904426.blix.com)
2020-11-07 10:22:12 +0100danso(~dan@69-165-210-185.cable.teksavvy.com) (Quit: WeeChat 2.9)
2020-11-07 10:26:52 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-07 10:30:14 +0100pjb(~t@2a01cb04063ec5003814b144b2eec567.ipv6.abo.wanadoo.fr) (Ping timeout: 244 seconds)
2020-11-07 10:31:59 +0100random(~random@149.62.205.119)
2020-11-07 10:32:21 +0100 <random> hey guys, is there some way to get all types inside the project which have a specific instance?
2020-11-07 10:32:45 +0100rprije(~rprije@124.148.131.132) (Ping timeout: 256 seconds)
2020-11-07 10:32:48 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 10:37:47 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-11-07 10:39:28 +0100 <srk> random: with :i in repl
2020-11-07 10:40:05 +0100 <random> srk: I mean using template haskell or something
2020-11-07 10:41:56 +0100 <Athas> Is there a non-quadratic 'nub' in base?
2020-11-07 10:42:15 +0100 <Athas> Or an easy way to write it? I guess sort following by removing neighbouring duplicates, but I can't find a function that nicely does the latter...
2020-11-07 10:43:21 +0100 <ski> > (map head . group . sort) "mississippi"
2020-11-07 10:43:23 +0100 <lambdabot> "imps"
2020-11-07 10:43:44 +0100 <Athas> Not a big fan of the partial function, but thanks.
2020-11-07 10:44:58 +0100 <ski> @type map Data.List.NonEmpty.head . Data.List.NonEmpty.group . sort
2020-11-07 10:44:59 +0100 <lambdabot> Ord b => [b] -> [b]
2020-11-07 10:45:38 +0100 <Athas> Ah, nice!
2020-11-07 10:46:22 +0100sfvm(~sfvm@37.228.215.148)
2020-11-07 10:46:43 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 10:49:50 +0100lxsameer(~lxsameer@unaffiliated/lxsameer)
2020-11-07 10:51:52 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 10:53:47 +0100AlterEgo-(~ladew@124-198-158-163.dynamic.caiway.nl)
2020-11-07 10:55:02 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-07 10:56:48 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 11:01:58 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-07 11:03:23 +0100vicfred_(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-11-07 11:07:25 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 11:09:39 +0100hnOsmium0001(uid453710@gateway/web/irccloud.com/x-mmieyeuehrtlbhkm) (Quit: Connection closed for inactivity)
2020-11-07 11:11:04 +0100kish(~oracle@unaffiliated/oracle) (Ping timeout: 265 seconds)
2020-11-07 11:11:53 +0100ulidtko(~ulidtko@193.111.48.79) (Ping timeout: 260 seconds)
2020-11-07 11:11:59 +0100 <olligobber> if I type `data Olligobber = Olligobber' into ghci then do `pure Olligobber' nothing happens, but if I type `pure Nothing' it prints Nothing
2020-11-07 11:12:14 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 258 seconds)
2020-11-07 11:12:17 +0100 <olligobber> so my guess is the default instance for Applicative is IO
2020-11-07 11:12:40 +0100 <olligobber> and I guess if there's no show instance it doesn't print anything?
2020-11-07 11:13:25 +0100mirrorbird(~psutcliff@176.227.54.4) (Ping timeout: 264 seconds)
2020-11-07 11:15:07 +0100mapperr(~mapperr@vmi389916.contaboserver.net) (Remote host closed the connection)
2020-11-07 11:16:11 +0100mapperr(~mapperr@vmi389916.contaboserver.net)
2020-11-07 11:16:50 +0100xff0x(~fox@2001:1a81:52a6:6c00:7e46:d829:7bc0:5d97) (Ping timeout: 264 seconds)
2020-11-07 11:16:57 +0100jff(~Thunderbi@a109-49-149-2.cpe.netcabo.pt)
2020-11-07 11:17:19 +0100xff0x(~fox@2001:1a81:52a6:6c00:6afc:992c:4c7d:b29c)
2020-11-07 11:17:32 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 11:20:24 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-07 11:22:25 +0100 <tomjaguarpaw> Yes, there are some rules like that
2020-11-07 11:22:37 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 11:22:45 +0100ulidtko(~ulidtko@193.111.48.79)
2020-11-07 11:24:00 +0100mmohammadi9812(~mmohammad@188.209.9.200) (Ping timeout: 272 seconds)
2020-11-07 11:24:26 +0100mmohammadi9812(~mmohammad@5.115.198.108)
2020-11-07 11:25:04 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-07 11:26:57 +0100knupfer(~Thunderbi@200116b82cc0b900bc0d1f9c6cebdb3b.dip.versatel-1u1.de) (Remote host closed the connection)
2020-11-07 11:27:05 +0100knupfer(~Thunderbi@200116b82cc0b9002da38997f72b7245.dip.versatel-1u1.de)
2020-11-07 11:27:43 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 11:28:21 +0100bitmagie(~Thunderbi@200116b806135000d9e566969198c00f.dip.versatel-1u1.de)
2020-11-07 11:29:10 +0100Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer)
2020-11-07 11:29:30 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Client Quit)
2020-11-07 11:30:20 +0100random(~random@149.62.205.119) (Ping timeout: 272 seconds)
2020-11-07 11:31:41 +0100scasc(~szabi@213142096120.public.telering.at) (Ping timeout: 256 seconds)
2020-11-07 11:32:34 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 246 seconds)
2020-11-07 11:35:43 +0100aarvar(~foewfoiew@c.24.56.239.179.static.broadstripe.net) (Ping timeout: 265 seconds)
2020-11-07 11:36:00 +0100jff(~Thunderbi@a109-49-149-2.cpe.netcabo.pt) (Quit: jff)
2020-11-07 11:36:33 +0100scasc(~szabi@213142096120.public.telering.at)
2020-11-07 11:37:52 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 11:39:48 +0100argent0(~argent0@168.227.98.85) (Remote host closed the connection)
2020-11-07 11:39:50 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-07 11:39:51 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 260 seconds)
2020-11-07 11:41:37 +0100scasc(~szabi@213142096120.public.telering.at) (Ping timeout: 264 seconds)
2020-11-07 11:42:52 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 11:48:00 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 11:53:18 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-07 11:53:56 +0100m0rphism(~m0rphism@HSI-KBW-095-208-098-207.hsi5.kabel-badenwuerttemberg.de)
2020-11-07 11:54:09 +0100dcoutts_(~duncan@33.14.75.194.dyn.plus.net)
2020-11-07 11:58:41 +0100sh9(~sh9@softbank060116136158.bbtec.net)
2020-11-07 11:59:01 +0100laxask(~lax@unaffiliated/laxask) (Ping timeout: 264 seconds)
2020-11-07 12:04:11 +0100sord937(~sord937@gateway/tor-sasl/sord937)
2020-11-07 12:08:52 +0100gproto23(~gproto23@unaffiliated/gproto23)
2020-11-07 12:10:13 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-07 12:10:20 +0100kish(~oracle@unaffiliated/oracle)
2020-11-07 12:10:38 +0100mimi_vx(~mimi@tulipan.habr.nat.praha12.net) (Remote host closed the connection)
2020-11-07 12:12:14 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd)
2020-11-07 12:13:42 +0100dcoutts_(~duncan@33.14.75.194.dyn.plus.net) (Remote host closed the connection)
2020-11-07 12:14:04 +0100dcoutts_(~duncan@33.14.75.194.dyn.plus.net)
2020-11-07 12:15:11 +0100alp(~alp@2a01:e0a:58b:4920:a483:805:42d9:dd26) (Ping timeout: 246 seconds)
2020-11-07 12:21:01 +0100scasc(~szabi@213142096120.public.telering.at)
2020-11-07 12:23:08 +0100__monty__(~toonn@unaffiliated/toonn)
2020-11-07 12:28:25 +0100efertone(~efertone@138.68.79.27) (Quit: The Lounge @ Code-Infection)
2020-11-07 12:28:37 +0100phaul(~phaul@ruby/staff/phaul) (Ping timeout: 268 seconds)
2020-11-07 12:28:48 +0100avdb(~avdb@ip-62-235-73-186.dsl.scarlet.be) (Quit: WeeChat 2.9)
2020-11-07 12:29:01 +0100scasc(~szabi@213142096120.public.telering.at) (Ping timeout: 264 seconds)
2020-11-07 12:30:03 +0100olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 258 seconds)
2020-11-07 12:30:16 +0100phaul(~phaul@ruby/staff/phaul)
2020-11-07 12:32:12 +0100acidjnk_new2(~acidjnk@p200300d0c718f691fdd3038ca44bce6e.dip0.t-ipconnect.de)
2020-11-07 12:34:35 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-07 12:35:01 +0100phaul(~phaul@ruby/staff/phaul) (Ping timeout: 264 seconds)
2020-11-07 12:35:19 +0100sfvm(~sfvm@37.228.215.148) (Quit: off to the basement, mixing up the medicine)
2020-11-07 12:39:35 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2020-11-07 12:40:53 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 12:41:14 +0100shatriff(~vitaliish@176.52.219.10)
2020-11-07 12:43:28 +0100mmohammadi9812(~mmohammad@5.115.198.108) (Ping timeout: 260 seconds)
2020-11-07 12:44:33 +0100mmohammadi9812(~mmohammad@5.238.175.25)
2020-11-07 12:45:39 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-07 12:50:19 +0100carlomagno(~cararell@148.87.23.10) (Remote host closed the connection)
2020-11-07 12:50:54 +0100knupfer(~Thunderbi@200116b82cc0b9002da38997f72b7245.dip.versatel-1u1.de) (Quit: knupfer)
2020-11-07 12:51:04 +0100knupfer(~Thunderbi@200116b82cc0b9000cfa0fa6825bda66.dip.versatel-1u1.de)
2020-11-07 12:52:14 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 12:56:50 +0100phaul(~phaul@ruby/staff/phaul)
2020-11-07 12:57:02 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2020-11-07 13:00:01 +0100WiQert(~WiQert@s91904426.blix.com) ()
2020-11-07 13:01:51 +0100bitmagie(~Thunderbi@200116b806135000d9e566969198c00f.dip.versatel-1u1.de) (Quit: bitmagie)
2020-11-07 13:02:02 +0100LKoen_(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-07 13:02:14 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Ping timeout: 265 seconds)
2020-11-07 13:06:33 +0100tankf33der(uid238517@gateway/web/irccloud.com/x-baozkdhqqmbjkjgd)
2020-11-07 13:07:11 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-07 13:11:14 +0100carlomagno(~cararell@148.87.23.11)
2020-11-07 13:15:55 +0100Ariakenom(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se)
2020-11-07 13:17:35 +0100phaul(~phaul@ruby/staff/phaul) (Ping timeout: 258 seconds)
2020-11-07 13:18:33 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-07 13:18:34 +0100fendor_(~fendor@178.165.131.130.wireless.dyn.drei.com)
2020-11-07 13:19:48 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 13:21:03 +0100fendor(~fendor@77.119.129.239.wireless.dyn.drei.com) (Ping timeout: 256 seconds)
2020-11-07 13:23:33 +0100gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh) (Remote host closed the connection)
2020-11-07 13:23:47 +0100JuanMiguel(~juanmi@85.red-79-146-201.dynamicip.rima-tde.net)
2020-11-07 13:24:56 +0100mastarija(~mastarija@93-136-96-12.adsl.net.t-com.hr)
2020-11-07 13:24:57 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 265 seconds)
2020-11-07 13:24:57 +0100gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh)
2020-11-07 13:25:49 +0100ironChicken(~richard@93.93.130.40)
2020-11-07 13:28:35 +0100 <ironChicken> i'm copying the wx bouncing balls example from <https://wiki.haskell.org/WxHaskell/Quick_start>. there's one very small thing i don't understand. in the expression `varUpdate vballs (bouncing pt:)`, what does that trailing colon do? i assume it's the cons function. so is it being partially applied maybe?
2020-11-07 13:29:07 +0100tankf33der(uid238517@gateway/web/irccloud.com/x-baozkdhqqmbjkjgd) ()
2020-11-07 13:29:56 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 13:29:58 +0100phaul(~phaul@ruby/staff/phaul)
2020-11-07 13:30:24 +0100 <c_wraith> ironChicken: that's exactly correct
2020-11-07 13:30:36 +0100 <c_wraith> ironChicken: it's known as a section, and all operators support them
2020-11-07 13:30:53 +0100 <int-e> > (1:) [2,3]
2020-11-07 13:30:55 +0100 <lambdabot> [1,2,3]
2020-11-07 13:31:03 +0100JuanMiguel(~juanmi@85.red-79-146-201.dynamicip.rima-tde.net) (Quit: This computer has gone to sleep)
2020-11-07 13:31:07 +0100 <c_wraith> (with the ugly exception of subtraction in one case)
2020-11-07 13:31:13 +0100 <int-e> recall that [1,2,3] is 1:(2:(3:[]))
2020-11-07 13:31:16 +0100 <mastarija> but in this case it seems like an error
2020-11-07 13:31:50 +0100 <mastarija> something is missing, bouncing takes in a point, not a function
2020-11-07 13:31:51 +0100borne(~fritjof@200116b864092f009eed9778381c1dff.dip.versatel-1u1.de)
2020-11-07 13:31:57 +0100 <ironChicken> c_wraith: ah yes, i see. that makes sense
2020-11-07 13:32:06 +0100 <__monty__> mastarija: Bouncing gets a point.
2020-11-07 13:32:20 +0100 <mastarija> it gets (pt:)
2020-11-07 13:32:21 +0100 <__monty__> mastarija: The result of `bouncing pt` is the first argument to (:).
2020-11-07 13:32:37 +0100 <mastarija> ah, you are right
2020-11-07 13:32:42 +0100 <mastarija> it was weirdly formatted
2020-11-07 13:32:43 +0100 <c_wraith> mastarija: function application has higher precedence than any binary operator
2020-11-07 13:35:00 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 13:35:04 +0100Saukk(~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4)
2020-11-07 13:36:21 +0100drbean(~drbean@TC210-63-209-187.static.apol.com.tw)
2020-11-07 13:36:27 +0100 <c_wraith> hmm. here's a thought. Now that there's -XNegativeLiterals, is it worth having an extension to remove prefix - as an operator?
2020-11-07 13:37:05 +0100 <c_wraith> I'd happily use negate to not have to worry about special rules about - as a section
2020-11-07 13:37:11 +0100 <__monty__> Would that entail distinguishing (- 1) and (-1)?
2020-11-07 13:37:25 +0100phaul(~phaul@ruby/staff/phaul) (Ping timeout: 264 seconds)
2020-11-07 13:38:08 +0100 <c_wraith> yes, but -XNegativeLiterals already makes (1 + -1) parse differently than (1 + - 1)
2020-11-07 13:38:10 +0100 <ironChicken> i've just re-written it as `varUpdate vballs (\ps -> (bouncing pt) : ps)` which makes it clearer, to me at least
2020-11-07 13:39:17 +0100phaul(~phaul@ruby/staff/phaul)
2020-11-07 13:39:26 +0100 <__monty__> ironChicken: Parens are rarely a bad idea.
2020-11-07 13:39:31 +0100 <ski> ironChicken : function application binds tighter than any (normal) operator. that's why you don't have to write `(foo x) + 2 * (bar x y)', you can just write `foo x + 2 * bar x y'
2020-11-07 13:40:20 +0100 <__monty__> c_wraith: Ah, so just make right-side sections using (-) an error?
2020-11-07 13:40:28 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 13:40:48 +0100 <ski> @type (2 + 3 *) -- i'd like this to not be an error
2020-11-07 13:40:50 +0100 <lambdabot> error:
2020-11-07 13:40:50 +0100 <lambdabot> The operator ‘*’ [infixl 7] of a section
2020-11-07 13:40:50 +0100 <lambdabot> must have lower precedence than that of the operand,
2020-11-07 13:41:31 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 13:41:31 +0100 <ski> it should be `(2 +) . (3 *)', or `\x -> 2 + 3 * x'
2020-11-07 13:42:25 +0100 <int-e> > (- 1 +) 2
2020-11-07 13:42:28 +0100 <lambdabot> 1
2020-11-07 13:43:11 +0100 <ski> i suppose one might call it a "MultiOperatorSection", maybe ?
2020-11-07 13:43:45 +0100kishBidensCrackhead
2020-11-07 13:44:33 +0100ironChicken(~richard@93.93.130.40) ("ERC Version 5.3 (IRC client for Emacs)")
2020-11-07 13:44:36 +0100 <ski> (although, perhaps that name would suggest that one could expect also `(2 + * 3)' to work, which is not what i really had in mind. just the situation, where the "hole", the missing/elided operand occurs either at the start, or at the end, of the tokens wrapped inside the brackets)
2020-11-07 13:44:37 +0100 <c_wraith> ski: By analogy to TupleSections... (+ *) === \x y z -> x + y * z ?
2020-11-07 13:44:47 +0100mastarija(~mastarija@93-136-96-12.adsl.net.t-com.hr) (Quit: Leaving)
2020-11-07 13:44:49 +0100 <ski> see above ^ :)
2020-11-07 13:45:02 +0100 <c_wraith> I mean, that is how TupleSections works
2020-11-07 13:45:27 +0100machinedgod(~machinedg@207.253.244.210)
2020-11-07 13:45:44 +0100 <ski> (and no, not really in analogy to `TupleSections' (i'm not sure they existed, when i first wanted this ..), although i got them in mind, when i wrote the above clarification)
2020-11-07 13:45:52 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 272 seconds)
2020-11-07 13:46:20 +0100 <c_wraith> They've been around for like 10 years now... Which reminds me I've been using Haskell for longer than that. :)
2020-11-07 13:46:30 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2020-11-07 13:46:36 +0100 <ski> one could perhaps argue for something in analogy to `TupleSections', too, as an extension/generalization of what i was arguing for. but i didn't have that in mind
2020-11-07 13:46:48 +0100 <ski> heh :)
2020-11-07 13:49:22 +0100 <ski> if you think of an operator section as "leave out the leading, or trailing, operand", then one's easily lead to this generalization, where you, in terms of AST, have one operator nested inside the operand of another, but where the precedences are such that you don't need to wrap in brackets. and then one could easily want to also be able to "leave out" the leading/trailing operand, despite it being nested
2020-11-07 13:49:28 +0100 <ski> inside two (or more) operators, not just one
2020-11-07 13:50:42 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 13:51:27 +0100 <ski> @type (take 2 . drop 3 .) -- this is a particular case, which feels annoying, since `.' is an associative operator
2020-11-07 13:51:28 +0100 <lambdabot> error:
2020-11-07 13:51:28 +0100 <lambdabot> The operator ‘.’ [infixr 9] of a section
2020-11-07 13:51:28 +0100 <lambdabot> must have lower precedence than that of the operand,
2020-11-07 13:52:48 +0100Mitchell16(70ce9c0d@112.206.156.13)
2020-11-07 13:54:15 +0100Mitchell16fortayy
2020-11-07 13:55:32 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 258 seconds)
2020-11-07 13:55:50 +0100mirrorbird(~psutcliff@176.227.54.4)
2020-11-07 13:55:55 +0100shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-11-07 13:56:26 +0100wei2912(~wei2912@unaffiliated/wei2912) (Remote host closed the connection)
2020-11-07 14:00:05 +0100fortayy(70ce9c0d@112.206.156.13) (Remote host closed the connection)
2020-11-07 14:00:21 +0100shatriff(~vitaliish@176.52.219.10)
2020-11-07 14:00:50 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 14:03:09 +0100BidensCrackheadkish
2020-11-07 14:03:21 +0100kishkish\
2020-11-07 14:04:10 +0100geekosaur(ac3a3edc@172.58.62.220)
2020-11-07 14:06:13 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 264 seconds)
2020-11-07 14:07:09 +0100amiri(~amiri@cpe-76-91-154-9.socal.res.rr.com) (Remote host closed the connection)
2020-11-07 14:08:09 +0100Varis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2020-11-07 14:08:30 +0100hackagemmsyn6ukr 0.9.0.0 - A musical instrument synthesizer or a tool for Ukrainian language listening https://hackage.haskell.org/package/mmsyn6ukr-0.9.0.0 (OleksandrZhabenko)
2020-11-07 14:08:34 +0100Saukk(~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) (Remote host closed the connection)
2020-11-07 14:10:58 +0100amiri(~amiri@cpe-76-91-154-9.socal.res.rr.com)
2020-11-07 14:11:30 +0100Deide(~Deide@217.155.19.23)
2020-11-07 14:18:20 +0100Varis(~Tadas@unaffiliated/varis)
2020-11-07 14:19:33 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 14:24:18 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 14:27:46 +0100resolve(~resolve@184.75.223.227)
2020-11-07 14:28:14 +0100borne(~fritjof@200116b864092f009eed9778381c1dff.dip.versatel-1u1.de) (Ping timeout: 264 seconds)
2020-11-07 14:29:41 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 14:29:58 +0100luke(~luke@bitnomial/staff/luke)
2020-11-07 14:32:26 +0100resolve(~resolve@184.75.223.227) (Remote host closed the connection)
2020-11-07 14:33:47 +0100renzhi(~renzhi@2607:fa49:655f:e600::28da)
2020-11-07 14:34:13 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 246 seconds)
2020-11-07 14:34:27 +0100alp(~alp@2a01:e0a:58b:4920:2c9d:39b9:4980:b098)
2020-11-07 14:34:42 +0100Varis(~Tadas@unaffiliated/varis) (Quit: Leaving)
2020-11-07 14:36:35 +0100jedws(~jedws@101.184.150.81)
2020-11-07 14:37:26 +0100elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2020-11-07 14:38:16 +0100geekosaur(ac3a3edc@172.58.62.220) (Remote host closed the connection)
2020-11-07 14:44:17 +0100drbean(~drbean@TC210-63-209-187.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin1 - https://znc.in)
2020-11-07 14:44:51 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be)
2020-11-07 14:48:30 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection)
2020-11-07 14:48:52 +0100pavonia(~user@unaffiliated/siracusa) (Quit: Bye!)
2020-11-07 14:48:54 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd)
2020-11-07 14:51:14 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 14:51:34 +0100mmohammadi9812(~mmohammad@5.238.175.25) (Quit: Quit)
2020-11-07 14:52:06 +0100knupfer(~Thunderbi@200116b82cc0b9000cfa0fa6825bda66.dip.versatel-1u1.de) (Remote host closed the connection)
2020-11-07 14:52:15 +0100knupfer(~Thunderbi@200116b82cc0b9002da38997f72b7245.dip.versatel-1u1.de)
2020-11-07 14:52:51 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 14:53:38 +0100grimgnr(~user@94.19.246.43) (Ping timeout: 272 seconds)
2020-11-07 14:55:33 +0100grimgnr(~user@94.19.246.43)
2020-11-07 14:57:21 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-07 14:58:42 +0100Franciman(~francesco@host-79-36-167-172.retail.telecomitalia.it)
2020-11-07 15:00:28 +0100grimgnr(~user@94.19.246.43) (Ping timeout: 246 seconds)
2020-11-07 15:01:25 +0100gproto23(~gproto23@unaffiliated/gproto23) (Ping timeout: 240 seconds)
2020-11-07 15:02:01 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2020-11-07 15:06:14 +0100grimgnr(~user@94.19.246.43)
2020-11-07 15:06:33 +0100systemhalted(~aqualogic@71-129-231-253.lightspeed.rcsntx.sbcglobal.net)
2020-11-07 15:06:42 +0100daydaynatation(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2020-11-07 15:07:10 +0100gproto23(~gproto23@unaffiliated/gproto23)
2020-11-07 15:07:59 +0100daydaynatation(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Remote host closed the connection)
2020-11-07 15:08:12 +0100kish\(~oracle@unaffiliated/oracle) (Remote host closed the connection)
2020-11-07 15:08:17 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Quit: cosimone)
2020-11-07 15:09:20 +0100kish(~oracle@unaffiliated/oracle)
2020-11-07 15:09:34 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 15:11:25 +0100systemhalted(~aqualogic@71-129-231-253.lightspeed.rcsntx.sbcglobal.net) (Ping timeout: 240 seconds)
2020-11-07 15:12:53 +0100pjb(~t@2a01cb04063ec50070ecdd787f2214a5.ipv6.abo.wanadoo.fr)
2020-11-07 15:14:33 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-07 15:16:10 +0100Franciman(~francesco@host-79-36-167-172.retail.telecomitalia.it) (Quit: Leaving)
2020-11-07 15:16:29 +0100Franciman(~francesco@host-79-36-167-172.retail.telecomitalia.it)
2020-11-07 15:23:48 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-07 15:24:04 +0100russruss84(~russruss@my.russellmcc.com) (Quit: Ping timeout (120 seconds))
2020-11-07 15:24:21 +0100rkvist(~user@138.197.72.132) (Quit: wait wut)
2020-11-07 15:25:18 +0100sarahzrf(~sarahzrf_@sarahzrf.com) (Ping timeout: 272 seconds)
2020-11-07 15:25:18 +0100ashnur(~rak@unaffiliated/ashnur) (Ping timeout: 272 seconds)
2020-11-07 15:25:39 +0100rkvist(~user@138.197.72.132)
2020-11-07 15:25:56 +0100Hijiri_(~Hijiri@104.236.61.10) (Ping timeout: 272 seconds)
2020-11-07 15:26:13 +0100sarahzrf(~sarahzrf_@sarahzrf.com)
2020-11-07 15:26:36 +0100russruss84(~russruss@my.russellmcc.com)
2020-11-07 15:27:16 +0100ashnur(~rak@ashnur.com)
2020-11-07 15:27:16 +0100ashnur(~rak@ashnur.com) (Changing host)
2020-11-07 15:27:16 +0100ashnur(~rak@unaffiliated/ashnur)
2020-11-07 15:27:31 +0100Ariakenom_(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se)
2020-11-07 15:28:28 +0100texasmynsted(~texasmyns@64.44.55.84) (Ping timeout: 272 seconds)
2020-11-07 15:28:39 +0100Hijiri(~Hijiri@104.236.61.10)
2020-11-07 15:29:27 +0100phaul(~phaul@ruby/staff/phaul) (Ping timeout: 260 seconds)
2020-11-07 15:30:38 +0100Ariakenom(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se) (Ping timeout: 264 seconds)
2020-11-07 15:31:31 +0100alp(~alp@2a01:e0a:58b:4920:2c9d:39b9:4980:b098) (Ping timeout: 272 seconds)
2020-11-07 15:32:31 +0100StarBrilliant1(~StarBrill@178.162.209.171)
2020-11-07 15:34:05 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce)
2020-11-07 15:36:30 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be) (Read error: Connection reset by peer)
2020-11-07 15:36:59 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be)
2020-11-07 15:41:23 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be) (Ping timeout: 260 seconds)
2020-11-07 15:41:50 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be)
2020-11-07 15:43:06 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 15:46:27 +0100urodna(~urodna@unaffiliated/urodna)
2020-11-07 15:47:16 +0100nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2020-11-07 15:48:14 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 15:48:57 +0100mirrorbird(~psutcliff@176.227.54.4) (Ping timeout: 256 seconds)
2020-11-07 15:49:44 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62)
2020-11-07 15:51:02 +0100Tops2(~Tobias@dyndsl-095-033-016-160.ewe-ip-backbone.de)
2020-11-07 15:54:00 +0100hackagehaskell-formatter 2.0.3 - Haskell source code formatter https://hackage.haskell.org/package/haskell-formatter-2.0.3 (evolutics)
2020-11-07 15:55:16 +0100raichoo(~raichoo@dslb-178-009-074-104.178.009.pools.vodafone-ip.de)
2020-11-07 15:57:49 +0100niko(~niko@freenode/staff/ubuntu.member.niko) (Ping timeout: 624 seconds)
2020-11-07 16:00:02 +0100StarBrilliant1(~StarBrill@178.162.209.171) ()
2020-11-07 16:01:00 +0100Tario(~Tario@198.252.153.28)
2020-11-07 16:02:30 +0100mat1(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de)
2020-11-07 16:02:39 +0100SupaYoshii(~supayoshi@213-10-140-13.fixed.kpn.net)
2020-11-07 16:02:55 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be) (Quit: WeeChat 2.9)
2020-11-07 16:05:01 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-07 16:05:51 +0100texasmyn_(~texasmyns@64.44.55.84)
2020-11-07 16:05:52 +0100Tario(~Tario@198.252.153.28) (Read error: Connection reset by peer)
2020-11-07 16:07:32 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be)
2020-11-07 16:08:39 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 260 seconds)
2020-11-07 16:09:10 +0100texasmyn_texasmynsted__
2020-11-07 16:09:13 +0100nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 264 seconds)
2020-11-07 16:09:28 +0100texasmynsted__(~texasmyns@64.44.55.84) (Client Quit)
2020-11-07 16:09:38 +0100texasmynsted(~texasmyns@64.44.55.84) (Ping timeout: 272 seconds)
2020-11-07 16:09:54 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta)
2020-11-07 16:10:00 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-07 16:10:03 +0100Tario(~Tario@198.252.153.28)
2020-11-07 16:10:33 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be) (Client Quit)
2020-11-07 16:10:55 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2020-11-07 16:12:59 +0100TommyC(~TommyC@unaffiliated/sepulchralbloom) (Quit: TTFN, Ta Ta For Now!)
2020-11-07 16:13:24 +0100TommyC(~TommyC@unaffiliated/sepulchralbloom)
2020-11-07 16:15:32 +0100grimgnr(~user@94.19.246.43) (Read error: Connection reset by peer)
2020-11-07 16:15:49 +0100grimgnr(~user@94.19.246.43)
2020-11-07 16:16:25 +0100Tario(~Tario@198.252.153.28) (Read error: Connection reset by peer)
2020-11-07 16:18:54 +0100eayus(c2991d13@194.153.29.19)
2020-11-07 16:20:49 +0100 <Franciman> hi, what is the state of wxhaskell? It seems to be abandoned
2020-11-07 16:21:50 +0100 <merijn> Yes, no, maybe?
2020-11-07 16:21:56 +0100 <[exa]> Franciman: if you totally don't need precisely wxwidgets, I suggest you go with a more lively toolkit
2020-11-07 16:22:06 +0100Eric-K(~Eric-K@s91904426.blix.com)
2020-11-07 16:22:16 +0100 <[exa]> (if you need them, advice still applies)
2020-11-07 16:22:31 +0100newbie(~kvirc@188.211.36.80)
2020-11-07 16:22:51 +0100 <eayus> I'm trying to use the "cryptonite" package to generate random numbers, however I'm always getting the same result of all bytes=256. I'm using the "getEntropy" function from Crypto.Random.Entropy (https://hackage.haskell.org/package/cryptonite-0.27/docs/Crypto-Random-Entropy.html). It doesn't mention anything about seeding. Anyone have any ideas?
2020-11-07 16:23:31 +0100 <[exa]> eayus: can you post a minimal (non)working example that does this?
2020-11-07 16:23:41 +0100 <[exa]> (also, byte value 256 is fishy)
2020-11-07 16:23:44 +0100 <merijn> That...does not like a function users should be using
2020-11-07 16:24:04 +0100 <Franciman> [exa], apart from gi-gtk which more lively toolkit is there?
2020-11-07 16:24:07 +0100 <eayus> I've tried various other functions in the library with the same result
2020-11-07 16:24:09 +0100Tario(~Tario@201.192.165.173)
2020-11-07 16:24:18 +0100 <eayus> I'll make a pastebin, one sec
2020-11-07 16:25:04 +0100 <[exa]> Franciman: there's been some fuss about declarative gtk in haskell which I looked at briefly and found quite nice. Gtk is probably the sanest wxw alternative.
2020-11-07 16:25:22 +0100 <Franciman> the problem with gtk is that I need a treeview with a custom model
2020-11-07 16:25:33 +0100 <Franciman> but it seems to be really hard to create an instance of TreeModel
2020-11-07 16:25:34 +0100 <Franciman> :<
2020-11-07 16:25:39 +0100 <[exa]> here https://wickstrom.tech/programming/2018/09/04/declarative-gtk-programming-with-haskell.html
2020-11-07 16:26:05 +0100 <eayus> Here is a minimal example of the problem https://pastebin.com/ifLkdiYW
2020-11-07 16:26:19 +0100 <eayus> Using the bytestring and cryptonite libraries
2020-11-07 16:26:23 +0100gawen(~gawen@movzbl.root.sx) (Quit: cya)
2020-11-07 16:26:30 +0100 <Franciman> thanx [exa]
2020-11-07 16:26:30 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd)
2020-11-07 16:26:55 +0100 <merijn> eayus: What do you need said entropy for? (i.e. is there no simpler/more robust way to get what you need?)
2020-11-07 16:27:05 +0100 <[exa]> Franciman: untested though
2020-11-07 16:27:15 +0100 <merijn> oof
2020-11-07 16:27:28 +0100 <merijn> cryptonite use /dev/random with higher priority than /dev/urandom
2020-11-07 16:27:55 +0100 <[exa]> eayus: can you instead just read from /dev/urandom as recommended by ....just read merijn's message :D
2020-11-07 16:28:11 +0100 <merijn> eayus: Basically: Isn't it just easier to read N bytes from /dev/urandom (depends on if you need Windows support, I guess)
2020-11-07 16:28:22 +0100 <eayus> I just need to generate a cryptographically secure random number. I tried using other functions in the library (such as "seedNew"; etc) with same result
2020-11-07 16:28:39 +0100 <eayus> I could do that, just seems a bit awkward
2020-11-07 16:28:59 +0100 <[exa]> eayus: try `getEntropy` from System.Entropy
2020-11-07 16:29:36 +0100SupaYoshi(~supayoshi@213-10-140-13.fixed.kpn.net) (Ping timeout: 256 seconds)
2020-11-07 16:29:44 +0100laxask(~lax@unaffiliated/laxask)
2020-11-07 16:30:00 +0100 <eayus> Ah now that works
2020-11-07 16:30:15 +0100 <merijn> Crypto.Entropy seems more of an internal thing as the docs in Crypto.Tutorial don't mention any entropy relates thing at all
2020-11-07 16:30:49 +0100 <eayus> Maybe, but I was tried to follow the method in Crypto.Tutorial and had the same problem
2020-11-07 16:30:53 +0100mat1(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de) (Quit: mat1)
2020-11-07 16:30:55 +0100 <[exa]> Franciman: re the treeview model, anything specific?
2020-11-07 16:31:23 +0100 <Franciman> I have my data structure (which is a bit more involved than a simple list, it's a finger tree that enables me to run interval queries)
2020-11-07 16:31:36 +0100 <Franciman> I would like to use it as a model for the treeview
2020-11-07 16:31:36 +0100SupaYoshii(~supayoshi@213-10-140-13.fixed.kpn.net) (Read error: Connection reset by peer)
2020-11-07 16:31:40 +0100mat1(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de)
2020-11-07 16:31:47 +0100 <merijn> eayus: Anyway, I wouldn't necessarily trust my crypto to any of the "native Haskell" libraries due to lack of auditing. I like cryptonite's hashing stuff, but that's much less security sensitive (and trivial to test)
2020-11-07 16:31:52 +0100 <Franciman> so that I don't have to duplicate data (and thus have problems with undo redo etc)
2020-11-07 16:33:38 +0100SupaYoshi(~supayoshi@213-10-140-13.fixed.kpn.net)
2020-11-07 16:33:40 +0100 <eayus> merijn: This is only for an assignment, so fortunately I don't have to really account for potential vulnerabilities in the libraries I'm using.
2020-11-07 16:33:46 +0100SupaYoshi(~supayoshi@213-10-140-13.fixed.kpn.net) (Remote host closed the connection)
2020-11-07 16:33:57 +0100 <eayus> However always returning the same random value crossed the line :P
2020-11-07 16:34:31 +0100mat1(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de) (Client Quit)
2020-11-07 16:36:18 +0100 <merijn> eayus: If it just an assignment is cryptographic randomness really a requirement?
2020-11-07 16:36:46 +0100 <merijn> If you just need "random" there's much easier ways
2020-11-07 16:37:06 +0100 <[exa]> Franciman: oh so. Well the general advice is 'do not model', it is very problematic :] Btw., Have you seen immediate-mode GUIs?
2020-11-07 16:37:37 +0100 <Franciman> yes, is there any binding for haskell?
2020-11-07 16:37:52 +0100 <Franciman> it's interesting, and could be easier to code
2020-11-07 16:38:41 +0100 <[exa]> well if you can live with rendered output it's the easiest ever. No idea about the binding though (would love to know myself)
2020-11-07 16:38:54 +0100 <eayus> merijn: Unfortunately the assignment isn't exactly clear, since otherwise I would just be using System.Random.
2020-11-07 16:39:04 +0100 <Franciman> I know about imgui
2020-11-07 16:39:11 +0100 <Franciman> but let's see if there is a binding
2020-11-07 16:39:23 +0100 <Franciman> what i'd love to avoid is to draw widgets myself
2020-11-07 16:39:28 +0100 <Franciman> I'm really bad at that :P
2020-11-07 16:39:30 +0100inkbottle(~inkbottle@aaubervilliers-654-1-96-22.w86-212.abo.wanadoo.fr)
2020-11-07 16:39:39 +0100 <[exa]> the first google is bad. :D
2020-11-07 16:39:48 +0100 <merijn> eayus: I'd just use System.Random, send an email to the TAs and then you can always replace it later with "something" (even reading /dev/urandom or something)
2020-11-07 16:39:53 +0100 <Franciman> even hackage
2020-11-07 16:39:54 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-07 16:40:06 +0100 <eayus> merijn: Yeah I think that's the best idea
2020-11-07 16:40:16 +0100 <[exa]> the problem with imgui is that it's a really C-specific hack
2020-11-07 16:40:22 +0100zebrag(~inkbottle@aaubervilliers-654-1-115-234.w86-198.abo.wanadoo.fr) (Ping timeout: 258 seconds)
2020-11-07 16:40:50 +0100 <Franciman> hmm I see
2020-11-07 16:40:51 +0100 <[exa]> I wondered if we could have something similar atop of State and Lenses instead of the implicit references everywhere, it kinda didn't spawn itself yet
2020-11-07 16:41:02 +0100 <[exa]> (would be SO COOL with gloss, right? :D )
2020-11-07 16:41:05 +0100newbie(~kvirc@188.211.36.80) (Quit: When two people dream the same dream, it ceases to be an illusion. KVIrc 3.4.2 Shiny http://www.kvirc.net)
2020-11-07 16:41:21 +0100 <Franciman> that'd be cool indeed
2020-11-07 16:42:04 +0100 <Franciman> last thing to try is fltkhs, it seems cool, but it *forces* you to use stack
2020-11-07 16:42:09 +0100 <Franciman> I don't want to use stack
2020-11-07 16:42:12 +0100 <[exa]> oh noes
2020-11-07 16:42:14 +0100 <merijn> what?
2020-11-07 16:42:17 +0100 <merijn> No it doesn't
2020-11-07 16:42:37 +0100 <Franciman> I tried to build it with cabal
2020-11-07 16:42:51 +0100 <Franciman> and it doesn't work, I get a strange error about the package not boeing registered
2020-11-07 16:42:52 +0100 <Franciman> being*
2020-11-07 16:43:06 +0100 <Franciman> I gotta say I compiled with the bundled flag
2020-11-07 16:44:11 +0100 <merijn> It *should* work with cabal-install
2020-11-07 16:44:13 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 16:45:23 +0100 <merijn> Ah, looks like a classic case of "fucked up bounds"
2020-11-07 16:46:04 +0100 <Franciman> merijn, I asked fgaz
2020-11-07 16:46:16 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-07 16:46:19 +0100 <merijn> Franciman: Which version of cabal-install are you using?
2020-11-07 16:46:20 +0100 <Franciman> he said that the Setup.hs does Strange^{TM} things with hooks
2020-11-07 16:46:30 +0100 <Franciman> and he could reproduce the issue
2020-11-07 16:46:41 +0100 <Franciman> 3.2.0.0
2020-11-07 16:48:48 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
2020-11-07 16:49:03 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce) (Ping timeout: 240 seconds)
2020-11-07 16:50:29 +0100luke(~luke@bitnomial/staff/luke) (Quit: sleep)
2020-11-07 16:50:30 +0100laxask(~lax@unaffiliated/laxask) (Ping timeout: 256 seconds)
2020-11-07 16:51:39 +0100bairynByronJohnson
2020-11-07 16:52:13 +0100 <tomsmeding> Today I used DataKinds for the first time, and noticed that -Wunticked-promoted-constructors is in -Wall ( https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/using-warnings.html#ghc-flag--Wunt… )
2020-11-07 16:52:50 +0100 <tomsmeding> I had been under the impression that ' was only used if it's necessary for disambiguation, but I'm probably wrong on that part; do people heed that warning normally?
2020-11-07 16:53:02 +0100 <tomsmeding> (I assume so because it's in -Wall, but still)
2020-11-07 16:53:10 +0100 <merijn> tomsmeding: It must be new in -Wall, tbh
2020-11-07 16:53:24 +0100 <merijn> Because when I used DataKinds I never get that warning
2020-11-07 16:53:29 +0100 <fgaz> Franciman, merijn: Yeah, the package is copied but not registered. I didn't really read the full Setup.hs, I just saw the registerHook and concluded that it's probably because of it. There isn't really any other way to get that error afaik
2020-11-07 16:54:07 +0100 <tomsmeding> merijn: ghc 8.8.4 here 🤷
2020-11-07 16:54:18 +0100Gurkenglas__(~Gurkengla@unaffiliated/gurkenglas)
2020-11-07 16:54:36 +0100 <fgaz> Of course, the bounds are _also_ fucked up
2020-11-07 16:54:51 +0100 <merijn> fgaz: Of course, because being a good citizen is hard :p
2020-11-07 16:55:56 +0100 <merijn> I'm going to write a grumpy old man blogpost and yell at people to stop listening to "Timmy, the ADHD monkey" part of their brain when they bitch about needing to write other-modules and adding upperbounds
2020-11-07 16:56:02 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be)
2020-11-07 16:56:40 +0100 <Franciman> I think it's stack's fault
2020-11-07 16:56:42 +0100 <Franciman> it's hell
2020-11-07 16:56:45 +0100 <Franciman> in earth
2020-11-07 16:57:24 +0100 <merijn> I don't like waiting for stop signs or paying taxes either, but goddammit "we live in a society!"
2020-11-07 16:57:49 +0100 <merijn> Franciman: Stack and FPComplete's encouragement/condoning of lack of upperbounds certainly doesn't help, no
2020-11-07 16:58:00 +0100 <tomsmeding> merijn: you're going to have to learn some more grumpy old man language :p
2020-11-07 16:58:10 +0100 <merijn> At least Snoyman was forced to eat his words on committing .cabal files
2020-11-07 16:58:30 +0100 <merijn> Now they should just disable automatic hpack support in stack >.>
2020-11-07 17:00:15 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce)
2020-11-07 17:00:44 +0100 <tomsmeding> hah! but I outsmarted -Wunticked-promoted-constructors: data LabelType = NodeLabel_ | EnvLabel_ ; type NodeLabel = 'NodeLabel_ ; type EnvLabel = 'EnvLabel_
2020-11-07 17:01:18 +0100 <merijn> fgaz: Looks at this gorgeous matrix: https://matrix.hackage.haskell.org/#/package/fltkhs/0.8.0.3/
2020-11-07 17:01:26 +0100 <merijn> tomsmeding: Welcome to 2013 ;)
2020-11-07 17:01:52 +0100acidjnk_new2(~acidjnk@p200300d0c718f691fdd3038ca44bce6e.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-07 17:01:52 +0100 <merijn> tomsmeding: That's a documented trick for ensuring users of your code aren't forced to enable DataKinds to use your code :p
2020-11-07 17:02:04 +0100 <tomsmeding> ah lol
2020-11-07 17:02:13 +0100 <tomsmeding> yay reinvention of old tricks
2020-11-07 17:03:00 +0100hackagemiv 0.4.5 - Vim plugin manager written in Haskell https://hackage.haskell.org/package/miv-0.4.5 (itchyny)
2020-11-07 17:03:14 +0100Amras(~Amras@unaffiliated/amras0000)
2020-11-07 17:03:54 +0100 <fgaz> Wait, they didn't switch it off yet? So their build tool does the opposite of their recommendation?
2020-11-07 17:04:40 +0100 <merijn> fgaz: They didn't stop recommending hpack
2020-11-07 17:04:55 +0100 <fgaz> merijn re build matrix: I saw that, I saw that :-/
2020-11-07 17:05:01 +0100 <merijn> fgaz: They merely stopped recommending "don't commit your generated cabal file"
2020-11-07 17:05:12 +0100 <merijn> fgaz: Did you check the failures?
2020-11-07 17:05:23 +0100 <Franciman> I'll try to ask fltkhs author if it's possible to support cabal :<
2020-11-07 17:05:36 +0100 <merijn> Apparently they're using cabal-version 2.0, but then use deprecated fields >.>
2020-11-07 17:06:23 +0100 <fgaz> merijn: yeah, they don't use build-tool-depends
2020-11-07 17:06:50 +0100 <merijn> fgaz: Also, which me luck
2020-11-07 17:06:57 +0100 <merijn> I've decided to embark on a quest
2020-11-07 17:07:11 +0100 <merijn> The Don Quixotic quest of figuring out run-tool-depends >.>
2020-11-07 17:07:51 +0100 <fgaz> merijn: well... good luck :D
2020-11-07 17:08:00 +0100knupfer(~Thunderbi@200116b82cc0b9002da38997f72b7245.dip.versatel-1u1.de) (Quit: knupfer)
2020-11-07 17:08:09 +0100knupfer(~Thunderbi@200116b82cc0b900204cae1ce61735e2.dip.versatel-1u1.de)
2020-11-07 17:08:34 +0100 <fgaz> hmm, it shouldn't be too different from the current data-files stuff... ...right?
2020-11-07 17:09:47 +0100 <merijn> fgaz: That's what I thought
2020-11-07 17:09:59 +0100 <merijn> Then I thought about it for 5 more minutes and realised it is
2020-11-07 17:10:02 +0100 <merijn> by a lot :p
2020-11-07 17:10:19 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 17:10:54 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Read error: Connection reset by peer)
2020-11-07 17:11:07 +0100JuanMiguel(~juanmi@85.red-79-146-201.dynamicip.rima-tde.net)
2020-11-07 17:12:11 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 17:12:33 +0100 <fgaz> merijn: what's the biggest problem you ound?
2020-11-07 17:15:00 +0100gawen(~gawen@movzbl.root.sx)
2020-11-07 17:15:11 +0100 <motte> hi, i'm using the dhall library to parse a config file into haskell and i'm having problems with decoding Lists into Sets - dhall defaults to setIgnoringDuplicates which gives errors when duplicates are found
2020-11-07 17:15:23 +0100 <motte> this is the relevant instance declaration: https://hackage.haskell.org/package/dhall-1.36.0/docs/src/Dhall.html#line-1410
2020-11-07 17:15:42 +0100 <motte> my question is, how can i override the declaration in a reasonable way in my own code?
2020-11-07 17:15:50 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2020-11-07 17:17:18 +0100 <motte> should i define my own type class for the types i want to be decoded with setIgnoringDuplicates so i can write a more specific instance declaration?
2020-11-07 17:19:31 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 17:19:58 +0100JuanMiguel(~juanmi@85.red-79-146-201.dynamicip.rima-tde.net) (Quit: This computer has gone to sleep)
2020-11-07 17:20:30 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 17:23:19 +0100Cale(~cale@cpef48e38ee8583-cm0c473de9d680.cpe.net.cable.rogers.com) (Ping timeout: 260 seconds)
2020-11-07 17:24:09 +0100Cale(~cale@cpef48e38ee8583-cm0c473de9d680.cpe.net.cable.rogers.com)
2020-11-07 17:25:48 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-07 17:26:28 +0100eayus(c2991d13@194.153.29.19) (Remote host closed the connection)
2020-11-07 17:26:29 +0100Rudd0^(~Rudd0@185.189.115.108)
2020-11-07 17:28:43 +0100Rudd0(~Rudd0@185.189.115.108) (Ping timeout: 260 seconds)
2020-11-07 17:30:19 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 260 seconds)
2020-11-07 17:33:12 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 17:33:13 +0100elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 256 seconds)
2020-11-07 17:33:20 +0100 <[exa]> Is there a common name for GADTs that hide an inner type behind typeclass interface?
2020-11-07 17:33:59 +0100 <[exa]> roughly: data X where ToX :: Someclass a => a -> X
2020-11-07 17:34:30 +0100 <[exa]> s/name/naming scheme or idiom/
2020-11-07 17:36:05 +0100 <Franciman> [exa], existential data type?
2020-11-07 17:36:18 +0100aveltras(uid364989@gateway/web/irccloud.com/x-alccjlfffbnhjsto) (Quit: Connection closed for inactivity)
2020-11-07 17:36:30 +0100 <[exa]> uh yes that's true, I was asking more like how to name the types
2020-11-07 17:36:40 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:d06e:e910:1cbc:b8b0)
2020-11-07 17:37:06 +0100 <[exa]> say the typeclass is "Fooable", should the type be say "GenericFoo" or "WrappedFooable"?
2020-11-07 17:37:14 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Quit: cosimone)
2020-11-07 17:37:31 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-07 17:39:40 +0100rookie101(~rookie@207.154.204.166)
2020-11-07 17:41:11 +0100 <nshepperd> SomeFoo?
2020-11-07 17:41:41 +0100 <int-e> . o O ( Fooize )
2020-11-07 17:42:20 +0100 <int-e> Or maybe -ify
2020-11-07 17:43:44 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-07 17:44:00 +0100hackagetldr 0.9.0 - Haskell tldr client https://hackage.haskell.org/package/tldr-0.9.0 (psibi)
2020-11-07 17:45:27 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Read error: Connection reset by peer)
2020-11-07 17:45:46 +0100 <[exa]> hm, sounds like SomeX wins
2020-11-07 17:45:48 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-07 17:46:06 +0100 <[exa]> -ize and -ify names are superoverloaded by js libs... in this case Selectize
2020-11-07 17:46:10 +0100 <[exa]> thanks!
2020-11-07 17:46:31 +0100m4lvin(~m4lvin@w4eg.de) (Quit: m4lvin)
2020-11-07 17:47:00 +0100m4lvin(~m4lvin@w4eg.de)
2020-11-07 17:47:36 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2020-11-07 17:56:52 +0100darjeeling_(~darjeelin@115.215.43.51) (Ping timeout: 256 seconds)
2020-11-07 17:57:26 +0100laxask(~lax@unaffiliated/laxask)
2020-11-07 17:59:01 +0100hackageminizinc-process 0.1.1.0 - A set of helpers to call minizinc models. https://hackage.haskell.org/package/minizinc-process-0.1.1.0 (LucasDiCioccio)
2020-11-07 17:59:30 +0100coot(~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2020-11-07 18:01:05 +0100 <ski> [exa] : i commonly go for "Some-" or "-able" (assuming the class doesn't end with "able" ..)
2020-11-07 18:04:00 +0100 <[exa]> it's for wrapping selda queries now, SomeSelect works perfectly (like, I should have asked myself "what's inside? oh yeah some select")
2020-11-07 18:06:11 +0100niko(~niko@freenode/staff/ubuntu.member.niko)
2020-11-07 18:07:46 +0100bitmapper(uid464869@gateway/web/irccloud.com/x-duordpjumbquhybw)
2020-11-07 18:08:10 +0100 <ski> (i guess i'm not sure i'm that happy with the naming of `Typeable',`Foldable',`Traversable' .. hmm)
2020-11-07 18:09:26 +0100darjeeling_(~darjeelin@122.245.210.126)
2020-11-07 18:12:45 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu)
2020-11-07 18:13:13 +0100 <merijn> fgaz: The basic problem is this. Suppose we (sensibly!) limit ourselves to executables that in cabal packages
2020-11-07 18:13:43 +0100 <merijn> fgaz: We "just" have to install those in, say, the libexecdir, obtainable via getLibexecDir to keep prefix independence
2020-11-07 18:13:53 +0100hekkaidekapus_hekkaidekapus
2020-11-07 18:14:18 +0100 <merijn> fgaz: Except...what if that executable itself uses getDataDir/etc. to access stuff (or hell, it's own libexecdir with other executables!)
2020-11-07 18:14:41 +0100alp(~alp@88.126.45.36)
2020-11-07 18:15:32 +0100 <merijn> fgaz: If we wanna keep things prefix independent we probably wanna combine that in (sub)directories of our package's prefix, but then you need to change the way the installed executables access those files to point to our package's datadir(s)
2020-11-07 18:16:17 +0100 <merijn> fgaz: Now, that's not unsolvable, but it'll probably require at least *some* thinking on how to get it right
2020-11-07 18:16:46 +0100 <merijn> fgaz: Where as with build-dependencies we can just assume they're in the global store, because you don't need to package them
2020-11-07 18:17:09 +0100 <merijn> (build-tool-depends, I should say)
2020-11-07 18:19:06 +0100 <Cheery> merijn: I figured out how to do the unit removal.
2020-11-07 18:19:42 +0100 <Cheery> https://www.reddit.com/r/haskell/comments/jmzg57/is_it_possible_to_trim_unit_types_away_from_a_type/
2020-11-07 18:20:24 +0100 <merijn> reddit's CDN seems to have died :p
2020-11-07 18:20:38 +0100 <siraben> merijn: how come?
2020-11-07 18:21:25 +0100 <siraben> Oh it's very slow right now
2020-11-07 18:21:31 +0100 <merijn> siraben: I get an error
2020-11-07 18:21:56 +0100 <siraben> "all of our servers are busy right now"
2020-11-07 18:22:50 +0100 <hekkaidekapus> motte: The setFromDistinctList’s documentation says: “An error is thrown if the list contains duplicates.” You have to ensure you are decoding from a set-like list.
2020-11-07 18:23:20 +0100 <hekkaidekapus> motte: You can decode a list and convert it to a set in Haskell.
2020-11-07 18:23:45 +0100 <hekkaidekapus> > S.fromList [1, 1, 2, 3, 3] -- motte
2020-11-07 18:23:47 +0100 <lambdabot> fromList [1,2,3]
2020-11-07 18:24:25 +0100 <Cheery> I lost my mouse to my cat and it's a bit awkward to do stuff with a computer right now. Maybe that thing gets back up or smt.
2020-11-07 18:24:26 +0100 <fgaz> merijn: why can't we assume they're in the global store?
2020-11-07 18:25:04 +0100elliott__(~elliott@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-07 18:25:32 +0100 <fgaz> After all, we do with data files
2020-11-07 18:25:58 +0100 <merijn> fgaz: Eh, no, we don't
2020-11-07 18:26:06 +0100 <merijn> fgaz: That's simply their *default* location
2020-11-07 18:26:11 +0100jedws(~jedws@101.184.150.81) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 18:26:33 +0100 <geekosaur> there's some horribly ugly and fragile hacks for data files, iirc
2020-11-07 18:26:45 +0100 <merijn> fgaz: It's overridable, so that packagers of, say, apt-get etc. can install them wherever is appropriate for their system
2020-11-07 18:26:45 +0100Ariakenom_(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se) (Read error: Connection reset by peer)
2020-11-07 18:26:57 +0100 <merijn> geekosaur: I wouldn't say that
2020-11-07 18:27:05 +0100 <merijn> It's about as sensible as you can do
2020-11-07 18:27:20 +0100Ariakenom(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se)
2020-11-07 18:27:22 +0100 <geekosaur> we may be thinking of different things, I'm thinking of the hack to allow running smething in place before installation
2020-11-07 18:27:38 +0100 <geekosaur> which iirc only works right with cabal 1.x
2020-11-07 18:27:52 +0100 <merijn> fgaz: You can't assume thing will be in the store at runtime, because you can't assume there will *be* a store on the machine a user wants to use an executable
2020-11-07 18:28:13 +0100 <motte> hekkaidekapus: yes, but i'd like that the conversion be done while decoding
2020-11-07 18:28:26 +0100 <merijn> geekosaur: Eh, I can tell you that every cabal-install between 2.0 and 3.4 has had 0 issues in finding data files of uninstalled executables when using v2-run
2020-11-07 18:29:06 +0100 <merijn> geekosaur: Because literally everything in my phd project has dependend on that working since 2016 and it never once broke, across all those cabal versions and several systems :p
2020-11-07 18:29:07 +0100 <motte> hekkaidekapus: i can write a separate instance declaration for every type i plan to keep in a set like this: http://ix.io/2DkK
2020-11-07 18:29:43 +0100 <matthew-> :t (id,id)
2020-11-07 18:29:44 +0100 <motte> hekkaidekapus: i'm wondering if there might be a better way
2020-11-07 18:29:44 +0100 <lambdabot> (a1 -> a1, a2 -> a2)
2020-11-07 18:30:01 +0100 <matthew-> am I right in thinking the universal quantification is outside the whole thing?
2020-11-07 18:30:14 +0100 <hekkaidekapus> motte: `list :: Decoder a -> Decoder [a]`. You can do `S.fromList <$> list`.
2020-11-07 18:30:39 +0100 <matthew-> i.e. (∀A,B.(Tuple ((⊗ ((→ A) A)) (⊗ ((→ B) B))))) ?
2020-11-07 18:30:42 +0100 <merijn> hekkaidekapus: Well, no, because that exact expression is a type error ;)
2020-11-07 18:31:00 +0100 <hekkaidekapus> merijn: hehe…
2020-11-07 18:31:08 +0100 <geekosaur> % :set -fprint-explicit-foralls
2020-11-07 18:31:09 +0100 <yahb> geekosaur:
2020-11-07 18:31:15 +0100 <fgaz> merijn geekosaur I fixed data-files in v2-run in my first SoC iirc
2020-11-07 18:31:17 +0100 <geekosaur> % :t (id,id)
2020-11-07 18:31:17 +0100 <yahb> geekosaur: forall {a1} {a2}. (a1 -> a1, a2 -> a2)
2020-11-07 18:31:23 +0100 <merijn> fgaz: \o/
2020-11-07 18:31:34 +0100 <merijn> fgaz: Well, now you know it wasn't for nothing!
2020-11-07 18:31:58 +0100 <fgaz> Not too much of an hack, simply an environment variable which overrides hardcoded Paths_ stuff
2020-11-07 18:31:58 +0100 <motte> hekkaidekapus: there already exists a decoder for decoding lists that contain duplicate elements - setIgnoringDuplicates
2020-11-07 18:33:13 +0100 <fgaz> merijn: shouldn't distros use the Cabal interface? Otherwise it's just layering build tools for nothing
2020-11-07 18:33:36 +0100 <fgaz> Which actually is a thing for rust and go, which don't have the Cabal vs cabal-install separation
2020-11-07 18:33:48 +0100 <hekkaidekapus> motte: Then, what’s wrong with lifting S.fromList into your list decoder? IMO, orphans (what you’re trying to do) and overlapping instances are not worth it in this case.
2020-11-07 18:34:04 +0100 <merijn> fgaz: How you build doesn't really matter
2020-11-07 18:34:42 +0100 <merijn> fgaz: The point is that the end result needs to be prefix independent, and installing executables inside "your" prefix which may rely on their own prefix independence isn't obvious
2020-11-07 18:34:46 +0100 <merijn> Actually
2020-11-07 18:34:53 +0100 <monochrom> Distros usually use Setup.hs. Setup.hs usually uses the Cabal interface.
2020-11-07 18:34:55 +0100 <merijn> How *does* that work for libraries
2020-11-07 18:35:15 +0100 <merijn> fgaz: Well...maybe the problem is already solved :p
2020-11-07 18:35:31 +0100 <monochrom> Setup.hs also has a lot of command line options that serve distro packaging needs, e.g., separate steps of building, copying.
2020-11-07 18:35:50 +0100 <dcoutts> prefix independent libs is awkward for libs with data files
2020-11-07 18:35:53 +0100 <merijn> I mean, cabal-install literally just calls into Setup.hs, so...
2020-11-07 18:36:06 +0100 <fgaz> with cabal-install you always have the store as runtime dep though
2020-11-07 18:36:06 +0100 <fgaz> it doesn't, the store is always a dependency
2020-11-07 18:36:07 +0100 <fgaz> well, unless you are lucky and you have only statically-linked no-data-files stuff
2020-11-07 18:36:09 +0100 <merijn> dcoutts: But does it even work right now?
2020-11-07 18:36:25 +0100 <dcoutts> merijn: I think it works for everything except libs with data files
2020-11-07 18:36:32 +0100 <merijn> dcoutts: ugh
2020-11-07 18:36:52 +0100 <merijn> dcoutts: Well, on the bright side, if I solve this for run-tool-depends then fixing the library case seems trivial enough
2020-11-07 18:37:08 +0100 <merijn> Since the problems seem identical
2020-11-07 18:37:37 +0100 <dcoutts> one needs a convention on how to find lib data files relative to the exe that uses them
2020-11-07 18:37:53 +0100 <matthew-> geekosaur: thanks - I didn't know about yahb
2020-11-07 18:38:18 +0100 <merijn> Well, you need a convention on how to *install* things relative to the executable, finding follows trivially from there ;)
2020-11-07 18:38:47 +0100 <merijn> dcoutts: Do you happen to know where in Cabal the Paths_ generation stuff (roughly) is?
2020-11-07 18:39:10 +0100 <fgaz> Or you could also just use the same approach as data files (Paths_), and then both can be fixed together... somehow...
2020-11-07 18:39:10 +0100 <fgaz> I think there's an issue about overhauling Paths_ generation to make it relocatable somewhere
2020-11-07 18:39:22 +0100Jeanne-Kamikaze(~Jeanne-Ka@68.235.43.102)
2020-11-07 18:39:36 +0100 <merijn> fgaz: It is already relocatable by setting the proper environment variables, I'm pretty sure?
2020-11-07 18:39:50 +0100 <fgaz> merijn: it's in Cabal/Distribution/Simple/Build/PathsModule.hs
2020-11-07 18:39:52 +0100 <merijn> Which means packagers just have to indirect via a shell script which sets those correctly
2020-11-07 18:40:10 +0100 <motte> hekkaidekapus: `S.fromList <$> list` doesn't type check though? not sure how i would use S.fromList with the decoder
2020-11-07 18:40:18 +0100 <fgaz> merijn: you'd have to set env variables for every dep with data files
2020-11-07 18:40:23 +0100 <merijn> motte: "fmap S.fromList . list" works
2020-11-07 18:40:49 +0100 <fgaz> merijn: rather, distros usually just use the Setup.hs interface to install stuff in the right places
2020-11-07 18:40:57 +0100 <motte> merijn: oh, thanks
2020-11-07 18:41:06 +0100 <monochrom> May I suggest Windows Registry? >:)
2020-11-07 18:41:22 +0100jamm_(~jamm@unaffiliated/jamm)
2020-11-07 18:41:48 +0100 <dcoutts> merijn, fgaz: what I wanted to do (at some point in the past) was to add a flag --prefix-independent which would "do the right thing" and conflict with any othe config flags that would cause a prefix-dependence. It might require certain conventions (to handle data files etc).
2020-11-07 18:41:54 +0100 <merijn> fgaz: If that's true (I'm not sure) That's an artifact of the current (mistaken) assumption that there's only a package's install files", rather than "those of the transitive dependencies"
2020-11-07 18:42:03 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce) (Ping timeout: 240 seconds)
2020-11-07 18:42:30 +0100hackageyesod-auth-hashdb 1.7.1.5 - Authentication plugin for Yesod. https://hackage.haskell.org/package/yesod-auth-hashdb-1.7.1.5 (paulrouse)
2020-11-07 18:42:46 +0100 <hekkaidekapus> > S.fromList <$> pure [1, 1, 2, 3, 3] -- motte
2020-11-07 18:42:48 +0100 <lambdabot> error:
2020-11-07 18:42:48 +0100 <lambdabot> • Ambiguous type variable ‘f0’ arising from a use of ‘show_M442697496552...
2020-11-07 18:42:48 +0100 <lambdabot> prevents the constraint ‘(Show
2020-11-07 18:42:57 +0100 <merijn> dcoutts: That's seems reasonable
2020-11-07 18:43:13 +0100 <motte> hekkaidekapus: but i still need to write an overlapping instance?
2020-11-07 18:43:20 +0100 <merijn> dcoutts: I dread the thought of adding a flag to cabal(-install), though >.>
2020-11-07 18:43:49 +0100 <dcoutts> Heh, It's not that bad. This would be primarily a Cabal Setup.hs flag.
2020-11-07 18:43:52 +0100 <merijn> I don't think any mere mortal understands the weird ass indirection through Setup.hs via Cabal
2020-11-07 18:43:57 +0100 <monochrom> I have a cunning plan! The lack of --prefix=foo means prefix independence.
2020-11-07 18:44:07 +0100 <fgaz> merijn: "assumption that there's only a package's install files" isn't that true though? When using the Setup.hs interface of a specific package
2020-11-07 18:44:18 +0100 <monochrom> How do you like my idea of subtracting a flag? :)
2020-11-07 18:44:31 +0100 <merijn> monochrom: That won't work, because --prefix would install everything relative to that, which many distros don't do/want
2020-11-07 18:44:44 +0100 <dcoutts> monochrom: it needs a bit more than that. All the other file flags have to be '$prefix/' for starters.
2020-11-07 18:45:06 +0100 <merijn> fgaz: It's not, because if you install an executable in a prefix independent way the transitive dependencies linked in need to be able to find their stuff too
2020-11-07 18:45:31 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2020-11-07 18:45:50 +0100 <fgaz> merijn: ah yes, I thought you were referring to the current prefix-dependent way
2020-11-07 18:45:50 +0100 <dcoutts> monochrom: the benefit of an explicit flag is that it's a clear declaration of intent, so it means it's reasonable for it to impose restrictions, whereas just not specifying --prefix is a bit weak
2020-11-07 18:46:12 +0100 <fgaz> whoosh
2020-11-07 18:46:17 +0100 <fgaz> (I think)
2020-11-07 18:46:24 +0100DataComputist(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net)
2020-11-07 18:46:43 +0100 <merijn> monochrom: I like your idea of subtracting a flag IFF you field all user questions/complaints pertaining to it on all social media :)
2020-11-07 18:46:48 +0100 <merijn> Sounds like a fair deal!
2020-11-07 18:47:07 +0100 <monochrom> Well yeah once again backward compatibility strikes.
2020-11-07 18:47:40 +0100 <hekkaidekapus> motte: No because of this: list :: Decoder a -> Decoder [a]; S.fromList :: Ord a => [a] -> S.Set a; What do you think is the type of `fmap S.fromList . list`?
2020-11-07 18:47:50 +0100 <merijn> All problems with Cabal/cabal-install boil down to two categories: 1) backwards compat and 2) people hate robust future-proof design :)
2020-11-07 18:48:13 +0100 <merijn> (see the relentless moaning about listing modules and upper bounds)
2020-11-07 18:48:23 +0100Ariakenom(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se) (Read error: Connection reset by peer)
2020-11-07 18:48:49 +0100 <geekosaur> "I never make mistakes!"
2020-11-07 18:48:53 +0100 <dcoutts> monochrom: it's not just backwards compat: asking for prefix independence really adds constraints compared to prefix-dependence.
2020-11-07 18:49:03 +0100 <dcoutts> It's not a bad thing to be explicit about that.
2020-11-07 18:51:04 +0100Ariakenom(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se)
2020-11-07 18:53:36 +0100DataComputist(~lumeng@static-50-43-26-251.bvtn.or.frontiernet.net) (Quit: Leaving...)
2020-11-07 18:53:57 +0100 <fgaz> by the way is there any other language / build tool / package manager that can offer prefix independence and supports data files?
2020-11-07 18:53:58 +0100 <fgaz> and that does that well
2020-11-07 18:54:43 +0100 <fgaz> ...AppImage I guess :-P
2020-11-07 18:56:39 +0100alp(~alp@88.126.45.36) (Ping timeout: 260 seconds)
2020-11-07 18:57:09 +0100 <geekosaur> docker, sort of?
2020-11-07 18:57:24 +0100 <geekosaur> more realistically speaking, it's a Hard Problem
2020-11-07 18:58:56 +0100solonarv(~solonarv@astrasbourg-653-1-263-62.w92-161.abo.wanadoo.fr)
2020-11-07 19:00:01 +0100Eric-K(~Eric-K@s91904426.blix.com) ()
2020-11-07 19:02:36 +0100borne(~fritjof@200116b864092f009eed9778381c1dff.dip.versatel-1u1.de)
2020-11-07 19:02:54 +0100raichoo(~raichoo@dslb-178-009-074-104.178.009.pools.vodafone-ip.de) (Quit: Lost terminal)
2020-11-07 19:07:51 +0100polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889)
2020-11-07 19:10:21 +0100knupfer(~Thunderbi@200116b82cc0b900204cae1ce61735e2.dip.versatel-1u1.de) (Remote host closed the connection)
2020-11-07 19:10:30 +0100knupfer(~Thunderbi@200116b82cc0b9002da38997f72b7245.dip.versatel-1u1.de)
2020-11-07 19:12:35 +0100 <Cheery> merijn: you or smb. told me about this regex library.
2020-11-07 19:13:09 +0100 <Cheery> I didk check inside it, I find the exact same implementation as mine.
2020-11-07 19:13:28 +0100 <Cheery> or oh.. it's a bit different
2020-11-07 19:15:28 +0100jeBois50(56fe0dc8@lfbn-poi-1-804-200.w86-254.abo.wanadoo.fr)
2020-11-07 19:15:58 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 19:16:42 +0100jeBois50(56fe0dc8@lfbn-poi-1-804-200.w86-254.abo.wanadoo.fr) (Remote host closed the connection)
2020-11-07 19:17:27 +0100 <motte> hekkaidekapus: i'm afraid i still don't understand. http://ix.io/2DkX - i get a duplicate instance declaration error
2020-11-07 19:17:29 +0100coot(~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl)
2020-11-07 19:18:48 +0100Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net)
2020-11-07 19:19:02 +0100 <hekkaidekapus> motte: Do not define another instance. Could you write out the type of `fmap fromList . list`?
2020-11-07 19:19:43 +0100 <hekkaidekapus> (Here in the chat)
2020-11-07 19:20:56 +0100 <motte> Ord a => Decoder a -> Decoder (S.Set a)
2020-11-07 19:20:59 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 258 seconds)
2020-11-07 19:23:13 +0100 <hekkaidekapus> motte: That type tells you then that you can directly decode a Set.
2020-11-07 19:24:33 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2020-11-07 19:25:06 +0100 <hekkaidekapus> If you want a mnemonic name for the combinator, write `foo :: Ord a => Decoder a -> Decoder (Set a); foo = fmap fromList . list`
2020-11-07 19:25:35 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-07 19:26:29 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 19:26:49 +0100mi23523523(~Mi1029384@82.131.37.175.cable.starman.ee)
2020-11-07 19:26:51 +0100 <motte> hekkaidekapus: sure, but i kind of rely on FromDhall instances, as i have many nested types
2020-11-07 19:27:13 +0100 <motte> hekkaidekapus: some of which contain Sets
2020-11-07 19:27:39 +0100 <hekkaidekapus> motte: The remaining part is to write a `Decoder Foo`. Since Foo is a record, check Dhall’s `record`.
2020-11-07 19:29:28 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta)
2020-11-07 19:31:31 +0100 <hekkaidekapus> motte: It will something like `record (MkFoo <$> field "baz" strictText <*> field "bar" setIgnoringDuplicates)`.
2020-11-07 19:31:38 +0100kish`(~oracle@unaffiliated/oracle)
2020-11-07 19:31:39 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-07 19:31:43 +0100forell(~forell@unaffiliated/forell) (Ping timeout: 246 seconds)
2020-11-07 19:31:48 +0100alp(~alp@2a01:e0a:58b:4920:5137:f9fa:ef1d:43eb)
2020-11-07 19:32:50 +0100 <hekkaidekapus> You can continue the (<*>) as long as there are more fields in your record type.
2020-11-07 19:33:44 +0100 <motte> hekkaidekapus: at the end of the day i'll still need to write something like `instance FromDhall Foo` and use my newly written decoder there
2020-11-07 19:34:26 +0100 <motte> hekkaidekapus: i fail to see how this is better than writing an overlapping instance
2020-11-07 19:34:42 +0100kish(~oracle@unaffiliated/oracle) (Ping timeout: 265 seconds)
2020-11-07 19:35:10 +0100jamm_(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2020-11-07 19:36:38 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 19:36:49 +0100 <hekkaidekapus> motte: Deriving is not necessary. You will parse directly from Dhall and the result will be a Foo. The parsing happens inside the Decoder.
2020-11-07 19:36:56 +0100chaosmasttter(~chaosmast@p200300c4a70b9f0179cc69ad5d026a5b.dip0.t-ipconnect.de)
2020-11-07 19:38:07 +0100perrier-jouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 2.9)
2020-11-07 19:38:25 +0100mi23523523(~Mi1029384@82.131.37.175.cable.starman.ee) (Quit: Leaving)
2020-11-07 19:38:30 +0100perrier-jouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
2020-11-07 19:39:19 +0100 <hekkaidekapus> motte: The parsing function will be an f = input foo.
2020-11-07 19:39:31 +0100grumble\x2D
2020-11-07 19:39:36 +0100jamm_(~jamm@unaffiliated/jamm)
2020-11-07 19:40:53 +0100 <motte> hekkaidekapus: won't i have to write the whole hierarchy of decoders by hand if i'm not using Deriving?
2020-11-07 19:41:37 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 264 seconds)
2020-11-07 19:42:03 +0100jedws(~jedws@101.184.150.81)
2020-11-07 19:42:11 +0100 <hekkaidekapus> motte: Yeah, you are targetting a custom data type and for that, you need to define the full decoders indeed.
2020-11-07 19:42:40 +0100 <[exa]> *evil me:* generate them with template haskell
2020-11-07 19:42:48 +0100 <[exa]> *realistic me:* generate them with CPP!
2020-11-07 19:43:20 +0100 <hekkaidekapus> [exa]: TH is a bit too much at this stage, I think.
2020-11-07 19:44:03 +0100 <motte> but why do it if i have it all working with deriving already? is defining an overlapping instance considered terrible style or something?
2020-11-07 19:44:26 +0100jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds)
2020-11-07 19:44:34 +0100 <geekosaur> it's a bug waiting to happen
2020-11-07 19:44:37 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce)
2020-11-07 19:45:50 +0100 <hekkaidekapus> motte: What you are talking about is called ‘orphan instances‘. It is usually not a great idea.
2020-11-07 19:46:12 +0100 <hekkaidekapus> And yes, what geekosaur said about overlapping instances.
2020-11-07 19:46:47 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 19:47:17 +0100 <hekkaidekapus> The instances are orphans when they are defined in a module other than the class where they belong to.
2020-11-07 19:47:36 +0100 <hekkaidekapus> s/when/because
2020-11-07 19:48:00 +0100 <koz_> It's not only a bug waiting to happen - it's GHC error vom you can't make sense of that _will_ happen.
2020-11-07 19:48:01 +0100avdb(~avdb@ip-83-134-26-133.dsl.scarlet.be) (Quit: WeeChat 2.9)
2020-11-07 19:48:17 +0100 <koz_> (I know because I've had to handle legacy decisions causing this exact problem several times _just this week_)
2020-11-07 19:48:37 +0100 <koz_> (because people seem to want to shove type classes into every possible hole)
2020-11-07 19:48:41 +0100 <koz_> (because reasons I guess)
2020-11-07 19:49:41 +0100Neuromancer(~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 265 seconds)
2020-11-07 19:51:29 +0100 <hekkaidekapus> Second take: The instances are orphan because they are defined in a module other than the one defining the class where they belong to.
2020-11-07 19:51:38 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-07 19:51:59 +0100 <motte> well, i see your point, but i'm pretty reluctant to write a ton of boilerplate just to avoid the orphan instances
2020-11-07 19:52:31 +0100 <monochrom> https://www.michaelpj.com/blog/2020/10/29/your-orphans-are-fine.html
2020-11-07 19:53:24 +0100kish`snowkish
2020-11-07 19:53:25 +0100gproto23(~gproto23@unaffiliated/gproto23) (Ping timeout: 240 seconds)
2020-11-07 19:55:01 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu) (Remote host closed the connection)
2020-11-07 19:56:10 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-07 19:56:10 +0100 <hekkaidekapus> motte: Now you have enough data about possible gotchas, it’s up to you to make up your mind about the trade-offs you can afford.
2020-11-07 19:56:55 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 19:57:14 +0100 <motte> hekkaidekapus: indeed, thanks for the help
2020-11-07 19:57:28 +0100 <hekkaidekapus> yw
2020-11-07 19:57:44 +0100 <int-e> motte: Hmm, Arbitrary instances are a tricky subject :-/ if you put them in your library, you have a QuickCheck dependency for no particularly good reason, but if you don't, other people cannot reuse the ones you've written... and you probably don't want to split up every library into separate packages for the library, its instances for testing, and the testsuite...
2020-11-07 19:57:49 +0100 <int-e> uhm
2020-11-07 19:57:50 +0100 <int-e> monochrom: ^^
2020-11-07 19:59:20 +0100 <int-e> monochrom: (I know you're not the author of that post. But you brought it up.)
2020-11-07 19:59:34 +0100forell(~forell@unaffiliated/forell)
2020-11-07 19:59:54 +0100 <monochrom> It is not just Arbitrary.
2020-11-07 20:00:49 +0100 <c_wraith> orphan instances are not a huge problem in code that you don't distribute. You might need to remove/change them when you update dependencies, but it's not like they're going to break someone else's stuff. You own all your risk. But putting them into a library takes a lot more thought.
2020-11-07 20:00:50 +0100 <monochrom> You define a data type, you publish it in a published library. You would also like to publish the lenses and prisms associated with that data type.
2020-11-07 20:01:02 +0100 <monochrom> Some authors decided to split. Some didn't.
2020-11-07 20:01:28 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 246 seconds)
2020-11-07 20:01:30 +0100 <monochrom> In this case I think the majority chose to split, mytype and mytype-lens.
2020-11-07 20:01:30 +0100 <c_wraith> But yeah, when the data type and class are in different packages, it's really weird to say one must depend on the other and define the instance.
2020-11-07 20:02:33 +0100SupaYoshi(~supayoshi@213-10-140-13.fixed.kpn.net)
2020-11-07 20:03:13 +0100berberman(~berberman@unaffiliated/berberman) (Ping timeout: 272 seconds)
2020-11-07 20:03:24 +0100berberman_(~berberman@unaffiliated/berberman)
2020-11-07 20:04:05 +0100inosenpai(516e7928@cpc78699-glfd7-2-0-cust39.6-2.cable.virginm.net)
2020-11-07 20:05:29 +0100inosenpai(516e7928@cpc78699-glfd7-2-0-cust39.6-2.cable.virginm.net) ()
2020-11-07 20:06:23 +0100chaosmasttter(~chaosmast@p200300c4a70b9f0179cc69ad5d026a5b.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
2020-11-07 20:07:05 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 20:07:08 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 272 seconds)
2020-11-07 20:08:47 +0100tuple(~igloo@c-67-169-78-228.hsd1.ca.comcast.net)
2020-11-07 20:08:54 +0100tuple(~igloo@c-67-169-78-228.hsd1.ca.comcast.net) (Client Quit)
2020-11-07 20:10:43 +0100falafel(~falafel@2601:247:c400:1390:7811:313f:d0f3:f9f4)
2020-11-07 20:12:24 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 265 seconds)
2020-11-07 20:13:55 +0100zebrag(~inkbottle@aaubervilliers-654-1-156-243.w86-212.abo.wanadoo.fr)
2020-11-07 20:14:23 +0100inkbottle(~inkbottle@aaubervilliers-654-1-96-22.w86-212.abo.wanadoo.fr) (Ping timeout: 260 seconds)
2020-11-07 20:19:42 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd)
2020-11-07 20:20:26 +0100irc_user(uid423822@gateway/web/irccloud.com/x-dglapnrvrviigpyd)
2020-11-07 20:21:01 +0100elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2020-11-07 20:21:19 +0100pavonia(~user@unaffiliated/siracusa)
2020-11-07 20:21:51 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu)
2020-11-07 20:27:44 +0100csharpsteen(~csharpste@178.162.209.171)
2020-11-07 20:28:30 +0100hackager-glpk-phonetic-languages-ukrainian-durations 0.1.0.0 - Can be used to calculate the durations of the approximations of the Ukrainian phonemes. https://hackage.haskell.org/package/r-glpk-phonetic-languages-ukrainian-durations-0.1.0.0 (OleksandrZhabenko)
2020-11-07 20:29:28 +0100Tario(~Tario@201.192.165.173)
2020-11-07 20:31:33 +0100chaosmasttter(~chaosmast@p200300c4a70b9f0179cc69ad5d026a5b.dip0.t-ipconnect.de)
2020-11-07 20:32:02 +0100hnOsmium0001(uid453710@gateway/web/irccloud.com/x-gbteywmncqhxlbkk)
2020-11-07 20:34:12 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Quit: cosimone)
2020-11-07 20:34:28 +0100Volt_(~Volt_@c-73-145-164-70.hsd1.mi.comcast.net) (Quit: )
2020-11-07 20:38:31 +0100hackageukrainian-phonetics-basic 0.2.0.0 - A library to work with the basic Ukrainian phonetics and syllable segmentation. https://hackage.haskell.org/package/ukrainian-phonetics-basic-0.2.0.0 (OleksandrZhabenko)
2020-11-07 20:39:00 +0100acidjnk_new2(~acidjnk@p200300d0c718f691fdd3038ca44bce6e.dip0.t-ipconnect.de)
2020-11-07 20:40:04 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 272 seconds)
2020-11-07 20:40:27 +0100solonarv(~solonarv@astrasbourg-653-1-263-62.w92-161.abo.wanadoo.fr) (Quit: Lost terminal)
2020-11-07 20:41:13 +0100danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds)
2020-11-07 20:41:16 +0100pfurla(~pfurla@64.145.79.4)
2020-11-07 20:42:11 +0100enoq(~textual@194-208-146-143.lampert.tv)
2020-11-07 20:42:28 +0100daydaynatation(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2020-11-07 20:42:30 +0100solonarv(~solonarv@astrasbourg-653-1-263-62.w92-161.abo.wanadoo.fr)
2020-11-07 20:46:33 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-07 20:50:08 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-07 20:51:03 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-07 20:51:08 +0100daydaynatation(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds)
2020-11-07 20:52:32 +0100mat1(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de)
2020-11-07 20:52:59 +0100mat1(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de) (Client Quit)
2020-11-07 20:53:44 +0100mputz(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de)
2020-11-07 20:54:30 +0100hackageuniplate 1.6.13 - Help writing simple, concise and fast generic operations. https://hackage.haskell.org/package/uniplate-1.6.13 (NeilMitchell)
2020-11-07 20:54:32 +0100webrunner(~holoirc@2604:3d09:207f:f650:4f8:b752:e5c0:fdf4)
2020-11-07 20:54:40 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-07 20:55:33 +0100webrunner(~holoirc@2604:3d09:207f:f650:4f8:b752:e5c0:fdf4) (Client Quit)
2020-11-07 20:55:50 +0100falafel(~falafel@2601:247:c400:1390:7811:313f:d0f3:f9f4) (Ping timeout: 264 seconds)
2020-11-07 20:56:26 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-07 21:01:17 +0100coffee2theorems(~coffee2th@172-125-238-23.lightspeed.rcsntx.sbcglobal.net)
2020-11-07 21:01:28 +0100coffee2theorems(~coffee2th@172-125-238-23.lightspeed.rcsntx.sbcglobal.net) (Remote host closed the connection)
2020-11-07 21:02:00 +0100hackager-glpk-phonetic-languages-ukrainian-durations 0.1.1.0 - Can be used to calculate the durations of the approximations of the Ukrainian phonemes. https://hackage.haskell.org/package/r-glpk-phonetic-languages-ukrainian-durations-0.1.1.0 (OleksandrZhabenko)
2020-11-07 21:07:02 +0100mputz(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de) (Quit: mputz)
2020-11-07 21:07:11 +0100alp(~alp@2a01:e0a:58b:4920:5137:f9fa:ef1d:43eb) (Ping timeout: 246 seconds)
2020-11-07 21:07:16 +0100mputz(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de)
2020-11-07 21:08:25 +0100mputz(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de) (Client Quit)
2020-11-07 21:08:41 +0100mputz(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de)
2020-11-07 21:12:01 +0100hackager-glpk-phonetic-languages-ukrainian-durations 0.1.2.0 - Can be used to calculate the durations of the approximations of the Ukrainian phonemes. https://hackage.haskell.org/package/r-glpk-phonetic-languages-ukrainian-durations-0.1.2.0 (OleksandrZhabenko)
2020-11-07 21:17:03 +0100snowkish(~oracle@unaffiliated/oracle) (Ping timeout: 256 seconds)
2020-11-07 21:17:29 +0100conal_(~conal@ip-66-115-176-219.creativelink.net) (Quit: Computer has gone to sleep.)
2020-11-07 21:17:53 +0100daydaynatation(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2020-11-07 21:17:57 +0100pfurla(~pfurla@64.145.79.4) (Ping timeout: 272 seconds)
2020-11-07 21:20:06 +0100conal(~conal@ip-66-115-176-219.creativelink.net)
2020-11-07 21:20:32 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2020-11-07 21:20:58 +0100nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2020-11-07 21:22:38 +0100nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Remote host closed the connection)
2020-11-07 21:23:08 +0100daydaynatation(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 256 seconds)
2020-11-07 21:23:18 +0100xff0x(~fox@2001:1a81:52a6:6c00:6afc:992c:4c7d:b29c) (Ping timeout: 244 seconds)
2020-11-07 21:23:31 +0100hackagejson-to-haskell 0.0.1.0 - https://hackage.haskell.org/package/json-to-haskell-0.0.1.0 (ChrisPenner)
2020-11-07 21:24:32 +0100xff0x(~fox@2001:1a81:52a6:6c00:d4de:a271:4d1e:7f67)
2020-11-07 21:25:43 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce) (Ping timeout: 240 seconds)
2020-11-07 21:26:44 +0100mmohammadi9812(~mmohammad@5.238.175.25)
2020-11-07 21:30:52 +0100Varis(~Tadas@unaffiliated/varis)
2020-11-07 21:31:01 +0100hackageghcide 0.5.0 - The core of an IDE https://hackage.haskell.org/package/ghcide-0.5.0 (PepeIborra)
2020-11-07 21:31:15 +0100justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 272 seconds)
2020-11-07 21:33:18 +0100Neuromancer(~Neuromanc@unaffiliated/neuromancer)
2020-11-07 21:38:58 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru)
2020-11-07 21:39:00 +0100lawr3nce(~lawr3nce@gateway/tor-sasl/lawr3nce)
2020-11-07 21:39:25 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Client Quit)
2020-11-07 21:40:43 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-07 21:42:09 +0100aarvar(~foewfoiew@c.24.56.239.179.static.broadstripe.net)
2020-11-07 21:42:12 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru)
2020-11-07 21:44:30 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Client Quit)
2020-11-07 21:44:47 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru)
2020-11-07 21:44:47 +0100polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Read error: Connection reset by peer)
2020-11-07 21:46:03 +0100enoq(~textual@194-208-146-143.lampert.tv) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 21:46:10 +0100kritzefitz(~kritzefit@212.86.56.80)
2020-11-07 21:47:10 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 21:48:02 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 21:49:52 +0100justanotheruser(~justanoth@unaffiliated/justanotheruser)
2020-11-07 21:52:02 +0100invaser1(~Thunderbi@31.148.23.125)
2020-11-07 21:52:12 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-07 21:52:27 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 21:52:58 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-07 21:53:28 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 246 seconds)
2020-11-07 21:53:28 +0100invaser1invaser
2020-11-07 22:00:01 +0100csharpsteen(~csharpste@178.162.209.171) ()
2020-11-07 22:02:04 +0100texasmynsted(~texasmyns@64.44.55.84) (Remote host closed the connection)
2020-11-07 22:02:40 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-07 22:04:23 +0100conal(~conal@ip-66-115-176-219.creativelink.net) (Quit: Computer has gone to sleep.)
2020-11-07 22:04:35 +0100 <srid> maralorn: can HLS be installed via nix? without going through the innatities of stack/ raw cabal.
2020-11-07 22:04:39 +0100 <srid> the `master` branch of it, I mean
2020-11-07 22:04:44 +0100 <srid> (not the one in nixpkgs)
2020-11-07 22:06:41 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-07 22:06:45 +0100texasmynsted(~texasmyns@64.44.55.84) (Ping timeout: 240 seconds)
2020-11-07 22:07:59 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2020-11-07 22:08:06 +0100 <srid> incidentally, ghcide 0.5.0 was released
2020-11-07 22:13:54 +0100kritzefitz(~kritzefit@212.86.56.80) (Remote host closed the connection)
2020-11-07 22:16:21 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Read error: Connection reset by peer)
2020-11-07 22:17:29 +0100Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-11-07 22:17:58 +0100machinedgod(~machinedg@207.253.244.210) (Ping timeout: 246 seconds)
2020-11-07 22:18:02 +0100Amras(~Amras@unaffiliated/amras0000)
2020-11-07 22:18:17 +0100alp(~alp@2a01:e0a:58b:4920:8067:7f49:e00e:b9e6)
2020-11-07 22:18:41 +0100sh9(~sh9@softbank060116136158.bbtec.net) (Quit: WeeChat 2.8)
2020-11-07 22:18:55 +0100sh9(~sh9@softbank060116136158.bbtec.net)
2020-11-07 22:21:11 +0100fendor_(~fendor@178.165.131.130.wireless.dyn.drei.com) (Remote host closed the connection)
2020-11-07 22:25:28 +0100 <bqv> srid: pkgs.ghcide
2020-11-07 22:25:43 +0100 <bqv> there's also the hie-nix repo
2020-11-07 22:25:51 +0100 <bqv> or infinisil's all-hies repo
2020-11-07 22:26:06 +0100 <srid> bqv: looking for latest development version
2020-11-07 22:26:25 +0100 <bqv> also, if i have `gets _mylens` using state and lens, how could i change that to use optics?
2020-11-07 22:26:46 +0100 <bqv> srid: you could override the sources, potentially
2020-11-07 22:26:55 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-07 22:26:56 +0100 <bqv> i dunno, i tend to just use ghcide
2020-11-07 22:27:15 +0100 <Cheery> anybody else feel that haskell is horrible once you get to use it?
2020-11-07 22:27:26 +0100 <koz_> Cheery: Quite the reverse.
2020-11-07 22:27:44 +0100incertia(~incertia@d60-65-215-180.col.wideopenwest.com) (Ping timeout: 265 seconds)
2020-11-07 22:27:59 +0100 <bqv> ^
2020-11-07 22:28:01 +0100incertia(~incertia@d60-65-215-180.col.wideopenwest.com)
2020-11-07 22:28:33 +0100texasmynsted(~texasmyns@2600:6c40:700:193f:70e1:9d96:99de:cedd)
2020-11-07 22:28:49 +0100 <Cheery> It's better than C++, or GCC, and I'd say today that even Python is worse.
2020-11-07 22:28:51 +0100 <geekosaur> depends on how you're using it. (thinking of singletons here — dependent Haskell it is not, yet)
2020-11-07 22:28:51 +0100machinedgod(~machinedg@207.253.244.210)
2020-11-07 22:28:57 +0100 <monochrom> Scheme is the one that is horrible once I get to use it.
2020-11-07 22:29:13 +0100 <koz_> monochrom: Yeah, and it also depends on _which_ Scheme.
2020-11-07 22:29:23 +0100 <koz_> Since there's a lot of them, and they differ from each other in quite non-trivial ways.
2020-11-07 22:29:57 +0100 <monochrom> But they are all horrible in fundamental, common ways.
2020-11-07 22:30:29 +0100 <monochrom> For example function composition and currying become very verbose and cumbersome.
2020-11-07 22:30:40 +0100 <lortabac> Cheery: what aspect of Haskell you don't like?
2020-11-07 22:31:10 +0100 <monochrom> For example I keep making mistakes that are mistakes only because of eager evaluation.
2020-11-07 22:32:17 +0100 <monochrom> For example pattern matching. Sure, every Scheme in practice offers a pattern matching story, but none is anywhere close to as syntactically lightweight as Haskell.
2020-11-07 22:33:02 +0100texasmynsted(~texasmyns@2600:6c40:700:193f:70e1:9d96:99de:cedd) (Ping timeout: 264 seconds)
2020-11-07 22:33:05 +0100 <Cheery> lortabac: I'm tripping on them. I mean, one of them is Text/Lazy text
2020-11-07 22:33:13 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds)
2020-11-07 22:33:19 +0100 <Cheery> oh and String on that.
2020-11-07 22:33:30 +0100hackagephonetic-languages-properties 0.2.0.0 - A generalization of the uniqueness-periods-vector-properties package. https://hackage.haskell.org/package/phonetic-languages-properties-0.2.0.0 (OleksandrZhabenko)
2020-11-07 22:34:29 +0100 <Cheery> then I write tons of LANGUAGE pragmas while I eventually need stuff. But many of those things are relatively sane things like overloaded strings are.
2020-11-07 22:34:30 +0100hackagepcapng 0.1.0.0 - https://hackage.haskell.org/package/pcapng-0.1.0.0 (MichalGajda)
2020-11-07 22:35:43 +0100 <Cheery> I fail to like cabal, and setting up projects.
2020-11-07 22:36:37 +0100 <lortabac> I agree for the pragmas, it's a huge waste of time
2020-11-07 22:37:30 +0100 <Cheery> I've found all, functional dependencies, GADTs, type families useful
2020-11-07 22:37:43 +0100 <lortabac> you can put them in Cabal if you want to avoid the pragmas
2020-11-07 22:37:56 +0100 <lortabac> I mean, in the .cabal file
2020-11-07 22:38:02 +0100 <Cheery> but them all together make crazy language.
2020-11-07 22:38:34 +0100 <Cheery> it's like making it impossible for anybody else to touch the code
2020-11-07 22:38:44 +0100irc_user(uid423822@gateway/web/irccloud.com/x-dglapnrvrviigpyd) (Quit: Connection closed for inactivity)
2020-11-07 22:38:49 +0100 <Cheery> because he needs to know so much Haskell first.
2020-11-07 22:39:14 +0100 <lortabac> Cheery: my professional experience with Haskell is the exact opposite
2020-11-07 22:39:53 +0100 <lortabac> people tend to understand Haskell code bases faster than other languages
2020-11-07 22:40:11 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-11-07 22:41:13 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-07 22:41:13 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Client Quit)
2020-11-07 22:41:33 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-07 22:41:35 +0100alx741(~alx741@186.178.110.159) (Ping timeout: 260 seconds)
2020-11-07 22:41:44 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu) (Remote host closed the connection)
2020-11-07 22:42:46 +0100Tario(~Tario@201.192.165.173)
2020-11-07 22:43:41 +0100 <Cheery> lortabac: well there are many good things mixed in, but I'm going to look at a networking library that crashes on a connection issue rather than communicate that it can happen through its type.
2020-11-07 22:44:28 +0100 <Cheery> then bitch about it because it's so bad when you could figure that happens before you run the program.
2020-11-07 22:44:52 +0100 <Cheery> overall I like it though.
2020-11-07 22:45:38 +0100 <lortabac> regarding lazy text, I don't understand the problem
2020-11-07 22:46:00 +0100 <bqv> but regarding string vs text, I do
2020-11-07 22:46:03 +0100 <pjb> lortabac: that's just because they understand haskell code bases lazily.
2020-11-07 22:46:14 +0100 <bqv> lol
2020-11-07 22:46:15 +0100 <lortabac> :)
2020-11-07 22:46:23 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-07 22:46:36 +0100mbomba(~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca)
2020-11-07 22:49:28 +0100sord937(~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2020-11-07 22:49:29 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 265 seconds)
2020-11-07 22:50:24 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds)
2020-11-07 22:51:27 +0100Franciman(~francesco@host-79-36-167-172.retail.telecomitalia.it) (Quit: Leaving)
2020-11-07 22:54:11 +0100alx741(~alx741@186.178.110.159)
2020-11-07 22:57:17 +0100 <Cheery> I can say it's awe inducing though, that this thing is still working.
2020-11-07 22:58:02 +0100 <Cheery> and when it works it does good.
2020-11-07 22:59:58 +0100dcoutts_(~duncan@33.14.75.194.dyn.plus.net) (Remote host closed the connection)
2020-11-07 23:00:25 +0100dcoutts_(~duncan@33.14.75.194.dyn.plus.net)
2020-11-07 23:03:30 +0100hackagephonetic-languages-examples 0.2.0.0 - A generalization of the uniqueness-periods-vector-examples functionality. https://hackage.haskell.org/package/phonetic-languages-examples-0.2.0.0 (OleksandrZhabenko)
2020-11-07 23:05:39 +0100fendor(~fendor@078132052150.public.t-mobile.at)
2020-11-07 23:08:12 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:d06e:e910:1cbc:b8b0) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-07 23:10:04 +0100Tattletale(~Tattletal@unaffiliated/sundancertp)
2020-11-07 23:13:37 +0100mbomba(~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca) (Quit: WeeChat 2.9)
2020-11-07 23:14:28 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2020-11-07 23:16:41 +0100mputz(~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de) (Quit: mputz)
2020-11-07 23:17:20 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-07 23:17:45 +0100Neuromancer(~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 256 seconds)
2020-11-07 23:18:55 +0100alp(~alp@2a01:e0a:58b:4920:8067:7f49:e00e:b9e6) (Ping timeout: 272 seconds)
2020-11-07 23:21:34 +0100AlterEgo-(~ladew@124-198-158-163.dynamic.caiway.nl) (Quit: Leaving)
2020-11-07 23:22:12 +0100texasmynsted(~texasmyns@64.44.55.84) (Ping timeout: 272 seconds)
2020-11-07 23:22:45 +0100Gurkenglas__(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds)
2020-11-07 23:25:51 +0100chaosmasttter(~chaosmast@p200300c4a70b9f0179cc69ad5d026a5b.dip0.t-ipconnect.de) (Quit: WeeChat 2.9)
2020-11-07 23:26:07 +0100jtk(~jtk@154.13.1.56)
2020-11-07 23:26:50 +0100Gurkenglas__(~Gurkengla@unaffiliated/gurkenglas)
2020-11-07 23:28:02 +0100jakob_(~textual@dynamic-093-135-009-167.93.135.pool.telefonica.de)
2020-11-07 23:29:00 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-07 23:29:30 +0100DTZUZU(~DTZUZU@207.81.171.116) (Read error: Connection reset by peer)
2020-11-07 23:30:55 +0100elisper(uid468625@gateway/web/irccloud.com/x-lcpclsygyloudukt)
2020-11-07 23:35:35 +0100Lycurgus(~niemand@98.4.97.110)
2020-11-07 23:36:26 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:d06e:e910:1cbc:b8b0)
2020-11-07 23:36:35 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:d06e:e910:1cbc:b8b0) (Client Quit)
2020-11-07 23:37:50 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:d012:b0d5:8436:4dad)
2020-11-07 23:38:54 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-07 23:42:00 +0100hackagefuthark 0.18.2 - An optimising compiler for a functional, array-oriented language. https://hackage.haskell.org/package/futhark-0.18.2 (TroelsHenriksen)
2020-11-07 23:42:37 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:d012:b0d5:8436:4dad) (Client Quit)
2020-11-07 23:43:14 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:d012:b0d5:8436:4dad)
2020-11-07 23:46:36 +0100conal(~conal@ip-66-115-176-219.creativelink.net)
2020-11-07 23:51:24 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-07 23:54:17 +0100conal(~conal@ip-66-115-176-219.creativelink.net) (Quit: Computer has gone to sleep.)
2020-11-07 23:54:23 +0100xff0x(~fox@2001:1a81:52a6:6c00:d4de:a271:4d1e:7f67) (Ping timeout: 272 seconds)
2020-11-07 23:54:44 +0100xff0x(~fox@2001:1a81:52a6:6c00:4a69:14bb:4df0:c5bd)
2020-11-07 23:54:58 +0100daydaynatation(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2020-11-07 23:56:01 +0100 <daydaynatation> when I do this: runghc -package inline-c-cpp InlineCPP.hs, I got: Variable not in scope: main :: IO a0
2020-11-07 23:56:06 +0100 <daydaynatation> why
2020-11-07 23:56:18 +0100 <daydaynatation> It's just a main function in it
2020-11-07 23:57:36 +0100jakob_(~textual@dynamic-093-135-009-167.93.135.pool.telefonica.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)