Logs on 2021-02-07 (freenode/#haskell)
| 00:00:41 | <monochrom> | I think the flawed logic stemmed from mistaking Haskell classes for Java classes. |
| 00:01:29 | <monochrom> | (And s/Java classes/Java interfaces/ doesn't save it.) |
| 00:01:52 | <monochrom> | The fact remains that 99.9% of the time, Java classes/interfaces translate to Haskell types. |
| 00:02:14 | <monochrom> | and likewise Java objects translate to Haskell terms. |
| 00:03:45 | <shachaf> | What Java interfaces translate to Haskell types, rather than type classes? |
| 00:03:46 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 00:04:50 | <shachaf> | Hmm, not every Haskell function of that type is a natural transformation. But that probably doesn't matter. |
| 00:07:16 | × | raehik1 quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 00:07:56 | <ski> | Java interfaces are object types. Java classes are Java interfaces, plus a particular implementation, plus the ability to have implementation inheritance and open recursion (and type-case) |
| 00:08:00 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds) |
| 00:08:00 | × | pera quits (~pera@unaffiliated/pera) (Quit: leaving) |
| 00:08:15 | → | DavidEichmann joins (~david@234.109.45.217.dyn.plus.net) |
| 00:09:37 | <ski> | (in Haskell terms, the implementation would correspond to an operation that returns a record) |
| 00:11:32 | × | fendor quits (~fendor@91.141.3.239.wireless.dyn.drei.com) (Remote host closed the connection) |
| 00:11:51 | × | forgottenone quits (~forgotten@176.42.26.20) (Quit: Konversation terminated!) |
| 00:12:42 | <dolio> | Which functions don't qualify? seq stuff? |
| 00:17:44 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 00:18:17 | → | charukiewicz joins (~charukiew@irouteince04.i.subnet.rcn.com) |
| 00:19:32 | × | carlomagno quits (~cararell@148.87.23.12) (Quit: Leaving.) |
| 00:23:33 | × | frozenErebus quits (~frozenEre@94.128.81.133) (Ping timeout: 246 seconds) |
| 00:23:46 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) |
| 00:25:43 | × | Aquazi quits (uid312403@gateway/web/irccloud.com/x-fliccswzueuhkous) (Quit: Connection closed for inactivity) |
| 00:27:12 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:e86a:eb9:e825:c074) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 00:28:44 | × | Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
| 00:30:40 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 00:30:44 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection) |
| 00:31:26 | → | Jd007 joins (~Jd007@162.156.11.151) |
| 00:31:34 | → | rajivr joins (uid269651@gateway/web/irccloud.com/x-szibnrsmlohyyqpj) |
| 00:33:46 | → | Tario joins (~Tario@201.192.165.173) |
| 00:35:05 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds) |
| 00:38:10 | × | kadobanana quits (~mud@unaffiliated/kadoban) (Read error: Connection reset by peer) |
| 00:38:33 | → | mud joins (~mud@unaffiliated/kadoban) |
| 00:43:09 | × | mirrorbird quits (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d) (Ping timeout: 272 seconds) |
| 00:45:46 | → | geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) |
| 00:47:23 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 00:47:45 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) |
| 00:50:56 | × | geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds) |
| 00:52:04 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 00:53:47 | → | zeta_0 joins (~zeta@2601:8c0:1:2630:c461:cfc:d600:6aa3) |
| 00:54:15 | → | CMCDragonkai1 joins (~Thunderbi@120.18.104.119) |
| 00:54:18 | <zeta_0> | what's the name of the ghc channel? I need some help with building ghc with nix. |
| 00:54:36 | <maerwald> | #ghc |
| 00:55:58 | <zeta_0> | thanks |
| 00:57:37 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
| 01:00:10 | <zeta_0> | ok, I posted the issue in #ghc, I almost got it working, I think I just need to get past this 1 bash error. |
| 01:00:13 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 01:01:01 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 01:02:43 | × | conal quits (~conal@66.115.157.112) (Quit: Computer has gone to sleep.) |
| 01:03:15 | <zeta_0> | my tooling setup (direnv+nix-direnv+emacs-direnv) is amazing for working in isolated environments, but ghc.nix(https://github.com/alpmestan/ghc.nix) does not like it for some reason. |
| 01:03:24 | → | jamm__ joins (~jamm@unaffiliated/jamm) |
| 01:03:26 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 01:04:44 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Ping timeout: 258 seconds) |
| 01:05:51 | → | jedws joins (~jedws@101.184.202.248) |
| 01:06:01 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 01:08:33 | → | conal joins (~conal@66.115.157.112) |
| 01:10:00 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 01:10:03 | × | conal quits (~conal@66.115.157.112) (Client Quit) |
| 01:10:45 | × | jrp quits (05501e8f@5.80.30.143) (Quit: Connection closed) |
| 01:10:45 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 264 seconds) |
| 01:11:12 | → | alx741 joins (~alx741@186.178.110.176) |
| 01:11:30 | × | Rudd0 quits (~Rudd0@185.189.115.103) (Ping timeout: 246 seconds) |
| 01:12:29 | × | jamm__ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 01:13:36 | × | Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007) |
| 01:16:03 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 01:16:51 | × | mozzarella quits (~sam@unaffiliated/sam113101) (Read error: Connection reset by peer) |
| 01:17:15 | → | Tops2 joins (~Tobias@dyndsl-095-033-091-182.ewe-ip-backbone.de) |
| 01:19:09 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 264 seconds) |
| 01:27:49 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 01:28:25 | × | acarrico quits (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 240 seconds) |
| 01:28:45 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 01:32:40 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds) |
| 01:34:06 | × | DavidEichmann quits (~david@234.109.45.217.dyn.plus.net) (Remote host closed the connection) |
| 01:35:00 | → | Jd007 joins (~Jd007@162.156.11.151) |
| 01:36:07 | <zeta_0> | maerwald: do you know when's the best time to ask questions in #ghc? I don't want to be stuck waiting for hours to get a response. |
| 01:36:15 | × | hiroaki quits (~hiroaki@2a02:908:4b18:8c40::8d4b) (Ping timeout: 265 seconds) |
| 01:36:53 | <maerwald> | zeta_0: I think European time zones |
| 01:39:03 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 01:39:05 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 01:40:06 | <zeta_0> | maerwald: thanks |
| 01:42:29 | → | shatriff_ joins (~vitaliish@176-52-216-242.irishtelecom.com) |
| 01:43:00 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 01:43:36 | <zeta_0> | that: `is a directory` error that bash is throwing is very vague. |
| 01:43:45 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 01:43:48 | × | jedws quits (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:44:16 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 01:44:17 | × | finn_elija quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Remote host closed the connection) |
| 01:44:42 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 01:45:00 | → | finn_elija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) |
| 01:45:59 | → | lemmih joins (~lemmih@2406:3003:2072:44:f7a7:6ac6:bdf9:4d40) |
| 01:46:05 | × | shatriff quits (~vitaliish@176-52-216-242.irishtelecom.com) (Ping timeout: 240 seconds) |
| 01:47:05 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds) |
| 01:49:53 | × | zeta_0 quits (~zeta@2601:8c0:1:2630:c461:cfc:d600:6aa3) (Quit: rcirc on GNU Emacs 27.1) |
| 01:50:06 | → | mozzarella joins (~sam@unaffiliated/sam113101) |
| 01:51:26 | × | perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.0) |
| 01:51:39 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds) |
| 01:55:59 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 01:56:41 | → | locrian9_ joins (~mike@99-153-255-194.lightspeed.irvnca.sbcglobal.net) |
| 01:56:43 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 01:56:53 | → | jedws joins (~jedws@101.184.202.248) |
| 01:57:42 | × | locrian9_ quits (~mike@99-153-255-194.lightspeed.irvnca.sbcglobal.net) (Client Quit) |
| 01:57:48 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Read error: No route to host) |
| 01:59:42 | × | locrian9 quits (~mike@99-153-255-194.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 02:00:41 | × | d3od quits (~nickmeno3@93-137-138-55.adsl.net.t-com.hr) (Read error: Connection reset by peer) |
| 02:00:50 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds) |
| 02:00:51 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 246 seconds) |
| 02:01:21 | × | jedws quits (~jedws@101.184.202.248) (Client Quit) |
| 02:02:32 | → | d3od joins (~nickmeno3@78-1-65-250.adsl.net.t-com.hr) |
| 02:04:17 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 02:11:49 | × | Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007) |
| 02:12:35 | → | jedws joins (~jedws@101.184.202.248) |
| 02:12:59 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 02:14:12 | → | conal joins (~conal@64.71.133.70) |
| 02:17:22 | → | h2017 joins (~h2017@bras-base-clbaon0201w-grc-32-142-114-145-140.dsl.bell.ca) |
| 02:17:33 | <h2017> | hi |
| 02:17:54 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 02:18:37 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 02:19:39 | <lemmih> | h2017: hi. |
| 02:19:54 | <h2017> | hi lemmih |
| 02:20:04 | <h2017> | does anyone know where i can see the implentation of liftIO? |
| 02:21:18 | <lemmih> | h2017: For which monad? liftIO has many different implementations. Much like how 'show' has many different implementations. |
| 02:21:50 | <h2017> | ok i'll find out |
| 02:22:05 | <lemmih> | h2017: For the IO monad, liftIO = id. |
| 02:22:11 | <h2017> | i made a monad transformer that will often have IO as the base monad |
| 02:22:19 | <h2017> | it doesn't get liftIO for free? |
| 02:22:49 | <lemmih> | h2017: Perhaps you can derive MonadIO. |
| 02:23:07 | <h2017> | so I need to make it an instance of MonadIO? |
| 02:23:35 | <lemmih> | Yes. liftIO is a member of MonadIO. In fact, it's the only member. |
| 02:23:54 | <lemmih> | The documentation is here: https://hackage.haskell.org/package/transformers-0.3.0.0/docs/Control-Monad-IO-Class.html#t:MonadIO |
| 02:24:08 | <h2017> | thanks. can i apply the same techniques to substittue IO for the writer monad? |
| 02:25:09 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds) |
| 02:25:22 | <lemmih> | Probably. Depends on your monad transformer. |
| 02:25:36 | → | EtherealStreet joins (68340092@104-52-0-146.lightspeed.sntcca.sbcglobal.net) |
| 02:25:44 | <koz_> | Yeah, what's your transformer (stack?) look like? |
| 02:26:06 | <h2017> | ok i see how it fits together now |
| 02:26:30 | → | poscat1 joins (~poscat@123.116.95.228) |
| 02:26:31 | <h2017> | liftIO = lift . liftIO, so liftIO must be id for the IO monad |
| 02:27:01 | × | xff0x_ quits (~xff0x@2001:1a81:5242:aa00:b5d4:6c34:6b2e:660f) (Ping timeout: 272 seconds) |
| 02:27:12 | × | Tops2 quits (~Tobias@dyndsl-095-033-091-182.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
| 02:27:37 | <h2017> | limmih not specified yet. I made a monad transformer, and I'd like to use liftIO with it, and now I believe that I can, and it would be good it i could also use a writer (and it looks like i could do that too using the same tricks they use to implent liftIO) |
| 02:27:45 | → | Jd007 joins (~Jd007@162.156.11.151) |
| 02:27:45 | × | poscat quits (~poscat@123.116.95.228) (Ping timeout: 272 seconds) |
| 02:28:21 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 02:28:25 | → | xff0x_ joins (~xff0x@2001:1a81:527b:1600:1b0d:c1af:bbb3:e575) |
| 02:32:49 | × | Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007) |
| 02:33:03 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 02:33:34 | × | HarveyPwca quits (~HarveyPwc@c-98-220-98-201.hsd1.il.comcast.net) (Quit: Leaving) |
| 02:33:49 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 02:35:25 | × | hekkaidekapus quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Remote host closed the connection) |
| 02:35:51 | <h2017> | in a monad transformer i can make use of things like lifting, and liftIO is especially useful. For the Free monad, is there there a any kinf od FreeT transformer. (BTW I don't know how that work work, if it even makes sense) |
| 02:36:05 | <h2017> | oh i see it in hoogle |
| 02:36:13 | → | hekkaidekapus joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 02:38:40 | → | dyeplexer joins (~lol@unaffiliated/terpin) |
| 02:41:00 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 02:43:08 | <h2017> | how often do people use free monads? it looks useful bit I don't think you can have things like guard and mzero, without building them into your language and interpreting them |
| 02:43:40 | <h2017> | for that reason i think i think it preferable to not use the Free monad when you can use a straight up monad. |
| 02:44:11 | <h2017> | a straight up monad that has those things already |
| 02:45:25 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 02:45:32 | <koz_> | Basically, _start_ without free. |
| 02:45:37 | <h2017> | even if you use liftIO output statements inside the free monad won't be that meaningful because all that's happening is a syntax tree is being built. |
| 02:45:45 | <koz_> | It can be useful, but it has non-trivial tradeoffs which you probably don't need to make. |
| 02:45:46 | <h2017> | freeT monad i mean |
| 02:46:07 | <koz_> | And to even explain what these are is not particularly easy. |
| 02:46:20 | <koz_> | If you're having to ask about liftIO, this is _definitely_ not somewhere you wanna delve. |
| 02:48:49 | <h2017> | on the webpage https://stackoverflow.com/questions/4063592/how-can-i-write-a-state-monad-that-does-error-handling-as-well |
| 02:49:09 | <h2017> | the second answer has a monad that I am interested in |
| 02:49:09 | <koz_> | StateT Either is a perfectly fine solution. |
| 02:49:17 | <koz_> | So is ExceptT State. |
| 02:49:21 | <koz_> | Depending on what you want. |
| 02:49:23 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 02:49:32 | × | CMCDragonkai1 quits (~Thunderbi@120.18.104.119) (Quit: CMCDragonkai1) |
| 02:49:38 | ← | EtherealStreet parts (68340092@104-52-0-146.lightspeed.sntcca.sbcglobal.net) () |
| 02:49:49 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:f4f6:e4b3:c49e:f3f) |
| 02:50:12 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:f4f6:e4b3:c49e:f3f) (Client Quit) |
| 02:50:15 | <h2017> | is the monad described in the first example of the second answer available in any library? |
| 02:50:38 | × | Zialus quits (~RMF@2001:818:de63:c300:211:32ff:fe8d:ad29) (Quit: i'm out!) |
| 02:50:43 | <h2017> | i'll paste it to pastebin so everyone knows which one i'm talking about |
| 02:50:54 | → | Zialus joins (~RMF@2001:818:de63:c300:211:32ff:fe8d:ad29) |
| 02:50:58 | <ski> | @where paste |
| 02:50:58 | <lambdabot> | Help us help you: please paste full code, input and/or output at eg https://paste.tomsmeding.com |
| 02:52:06 | <h2017> | https://paste.tomsmeding.com/xU9gJXkg |
| 02:52:27 | <koz_> | h2017: That's quite literally StateT s Either a |
| 02:52:35 | <koz_> | You can build that out of transformers. |
| 02:52:41 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 02:52:45 | <koz_> | StateT s (Either e) a, sorry. |
| 02:53:19 | → | BrainZero joins (~BrainZero@111.60.233.69) |
| 02:54:56 | <ski> | (it also has redundant brackets. `(StateMonad p) >>= k = ...' could be `StateMonad p >>= k = ...', and `let (StateMonad q) = ...' could similarly be `let StateMonad q = ...') |
| 02:55:28 | <ski> | ®unmtl StateT MyState (Either e) a |
| 02:55:34 | <ski> | @unmtl StateT MyState (Either e) a |
| 02:55:34 | <lambdabot> | MyState -> Either e (a, MyState) |
| 02:57:27 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 256 seconds) |
| 02:57:56 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 02:59:28 | → | nolrai joins (4c1bcada@c-76-27-202-218.hsd1.or.comcast.net) |
| 03:00:12 | → | toorevitimirp joins (~tooreviti@117.182.180.8) |
| 03:00:35 | × | tb15 quits (~textual@253.17.75.194.dyn.plus.net) (Read error: Connection reset by peer) |
| 03:03:19 | × | son0p quits (~son0p@181.136.122.143) (Quit: Lost terminal) |
| 03:08:57 | × | theDon quits (~td@94.134.91.40) (Ping timeout: 264 seconds) |
| 03:09:17 | → | perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 03:10:18 | → | theDon joins (~td@muedsl-82-207-238-114.citykom.de) |
| 03:11:15 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 03:11:40 | × | nolrai quits (4c1bcada@c-76-27-202-218.hsd1.or.comcast.net) (Quit: Connection closed) |
| 03:13:00 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 03:13:34 | → | CMCDragonkai1 joins (~Thunderbi@120.18.104.119) |
| 03:13:56 | × | lordyod quits (~lordyod@c-67-169-144-132.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 03:15:28 | → | lordyod joins (~lordyod@c-67-169-144-132.hsd1.ca.comcast.net) |
| 03:15:39 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 03:16:32 | → | catt joins (~r@31.124.181.226) |
| 03:17:26 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 03:17:48 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds) |
| 03:22:48 | → | polyrain joins (~polyrain@124.177.21.171) |
| 03:25:00 | × | jchia1 quits (~jchia@58.32.35.81) (Ping timeout: 265 seconds) |
| 03:27:49 | × | CMCDragonkai1 quits (~Thunderbi@120.18.104.119) (Quit: CMCDragonkai1) |
| 03:28:27 | × | polyrain quits (~polyrain@124.177.21.171) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 03:28:47 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Remote host closed the connection) |
| 03:28:52 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 03:32:01 | → | polyrain joins (~polyrain@2001:8003:e4d8:4101:795c:c8cd:2656:7ed2) |
| 03:34:57 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds) |
| 03:35:46 | → | FinnElija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) |
| 03:35:46 | finn_elija | is now known as Guest43559 |
| 03:35:46 | FinnElija | is now known as finn_elija |
| 03:35:55 | × | puke quits (~vroom@217.138.252.199) (Quit: puke) |
| 03:38:57 | × | m0rphism1 quits (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 264 seconds) |
| 03:39:50 | × | Guest43559 quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 268 seconds) |
| 03:39:52 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 03:44:50 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 03:45:40 | × | darjeeling_ quits (~darjeelin@122.245.216.78) (Ping timeout: 256 seconds) |
| 03:46:04 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 03:48:51 | → | drbean joins (~drbean@TC210-63-209-206.static.apol.com.tw) |
| 03:49:12 | → | conal joins (~conal@64.71.133.70) |
| 03:50:45 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 03:52:57 | × | conal quits (~conal@64.71.133.70) (Read error: Connection reset by peer) |
| 03:54:07 | → | conal joins (~conal@64.71.133.70) |
| 03:55:41 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Remote host closed the connection) |
| 03:58:15 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 03:59:21 | <guest7682358928> | Hello everyone. Is this a good place for asking newbie questions? |
| 04:00:11 | <dsal> | guest7682358928: Generally want to start with the question you want to ask. :) |
| 04:01:25 | → | Rudd0 joins (~Rudd0@185.189.115.108) |
| 04:01:39 | <koz_> | Yeah, just ask. If we need to direct you somewhere else or whatnot, we can do that. |
| 04:01:49 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 04:02:52 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 260 seconds) |
| 04:03:48 | <guest7682358928> | thanks. I'm trying to wrap my head around types in aeson. Basically I just want to parse a json file of format {"images": [{"uri": "file1.txt"}, {"uri": "file2.txt"}], ...} to a list of strings. This is what I end up at the moment: |
| 04:04:15 | <koz_> | @where paste |
| 04:04:15 | <lambdabot> | Help us help you: please paste full code, input and/or output at eg https://paste.tomsmeding.com |
| 04:04:23 | <koz_> | In case you want to paste code. |
| 04:05:03 | <dsal> | guest7682358928: What do you want your list of strings to look like? |
| 04:05:31 | <guest7682358928> | https://paste.tomsmeding.com/FhjwWWOb#file-1 |
| 04:06:01 | <guest7682358928> | dsal: I want a ```Just ["file1.txt", "file2.txt"]``` |
| 04:06:10 | <guest7682358928> | i'm sorry not very familiar with irc |
| 04:06:26 | <dsal> | It's alright. aeson-lens makes that pretty easy. |
| 04:06:30 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 04:06:40 | <dsal> | Most of the time, when I'm doing stuff with aeson, I either have structures that represent what I want, or I use aeson-lens |
| 04:06:54 | <dsal> | (er, lens-aeson) |
| 04:07:42 | <dsal> | (my dev stuff is currently broken, so I've got to wait for stuff to build here) |
| 04:08:22 | <glguy> | guest7682358928, Do you know how to do it and you're looking for a nice way, or you'd just like a way to do it at all? |
| 04:09:59 | <guest7682358928> | dsal: I saw a handful of examples with lenses that make it look almost as short as typescript, but I'm afraid lenses are just too advanced feature for me yet. I have no idea what happens under the hood. |
| 04:10:39 | × | blankhart quits (~blankhart@pool-100-8-71-205.nwrknj.fios.verizon.net) (Quit: WeeChat 2.8) |
| 04:10:57 | <guest7682358928> | glguy: I already did it as I shown in the paste above, but I don't like the fact it took 9 lines of code, I believe Haskell is about short and neat solutions. |
| 04:11:05 | × | conal quits (~conal@64.71.133.70) (Ping timeout: 240 seconds) |
| 04:11:09 | <glguy> | OK, let's clean it up just using aeson then |
| 04:11:56 | × | perdent quits (~perdent@101.175.174.67) (Excess Flood) |
| 04:12:41 | → | conal joins (~conal@66.115.157.58) |
| 04:13:11 | <guest7682358928> | I saw functions like withObject and withArray that seem to help me, but they need "Parser a" as the last parameter and my type puzzle breaks apart |
| 04:13:22 | → | jchia joins (~jchia@218.80.114.20) |
| 04:13:34 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Remote host closed the connection) |
| 04:14:21 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 04:14:44 | <ski> | `sequence $ flip fmap xs $ \x -> ..x..' is `for xs $ \x -> ..x..' |
| 04:15:02 | × | alx741 quits (~alx741@186.178.110.176) (Quit: alx741) |
| 04:16:10 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 04:16:21 | <dsal> | If you created a type with a String field named Uri, and another type with a field named Images with a list of those, aeson could mostly derive the parsers for you. |
| 04:17:34 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 04:17:55 | <guest7682358928> | ski: that's useful, thank you |
| 04:19:23 | <guest7682358928> | dsal: that would be even more code. two types with Generics machinery for such a simple thing. I think it's time to get familiar with lenses. |
| 04:19:25 | × | slack1256 quits (~slack1256@45.4.2.52) (Remote host closed the connection) |
| 04:20:06 | <glguy> | https://paste.tomsmeding.com/0FzOAGJd |
| 04:20:15 | <glguy> | You get something like this doing the typeclass-driven approach |
| 04:21:26 | <glguy> | *Help> decode "{\"images\": [{\"uri\": \"file1.txt\"}, {\"uri\": \"file2.txt\"}]}" :: Maybe Images |
| 04:21:26 | <glguy> | Just (Images [Image "file1.txt",Image "file2.txt"]) |
| 04:22:27 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds) |
| 04:23:22 | <dsal> | guest7682358928: It's not necessarily golf. Sometimes it's not writing code unnecessarily. |
| 04:24:42 | × | conal quits (~conal@66.115.157.58) (Ping timeout: 246 seconds) |
| 04:25:00 | <dsal> | Lens is generally useful, but it's effectively another language. |
| 04:25:18 | <glguy> | Prelude Data.Aeson.Lens Control.Lens> toListOf (key "images" . values . key "uri" . _String) "{\"images\": [{\"uri\": \"file1.txt\"}, {\"uri\": \"file2.txt\"}]}" |
| 04:25:18 | <glguy> | ["file1.txt","file2.txt"] |
| 04:25:52 | <dsal> | Oh man, mine had almost finished compiling… |
| 04:27:22 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Remote host closed the connection) |
| 04:27:52 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 04:28:18 | <guest7682358928> | dsal glguy ski: thank you for your help, I'll keep playing with this |
| 04:29:11 | × | toorevitimirp quits (~tooreviti@117.182.180.8) (Remote host closed the connection) |
| 04:31:27 | → | cmcma20 joins (~cmcma20@l37-192-2-125.novotelecom.ru) |
| 04:32:26 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Ping timeout: 264 seconds) |
| 04:32:36 | → | toorevitimirp joins (~tooreviti@117.182.180.8) |
| 04:33:19 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 04:35:32 | × | average quits (uid473595@gateway/web/irccloud.com/x-lztdighqxgxenyad) (Quit: Connection closed for inactivity) |
| 04:36:06 | × | is_null quits (~jpic@pdpc/supporter/professional/is-null) (Ping timeout: 256 seconds) |
| 04:36:48 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 04:38:06 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 04:39:05 | → | conal joins (~conal@66.115.157.58) |
| 04:40:27 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 04:44:57 | → | Jd007 joins (~Jd007@162.156.11.151) |
| 04:45:49 | × | Tario quits (~Tario@201.192.165.173) (Ping timeout: 272 seconds) |
| 04:49:03 | → | perdent joins (~perdent@101.175.174.67) |
| 04:49:58 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 04:51:04 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 04:52:36 | <koz_> | Is there a reason why 'words' (from text) and 'split isSpace' (again from text) produce different results? |
| 04:52:58 | <koz_> | (by which I mean 'philosophically' not 'implementationally' of course) |
| 04:53:17 | <koz_> | (or rather, 'philosophical reason' not 'implementational reason') |
| 04:53:31 | <glguy> | Is the difference that words will eat multiple spaces? |
| 04:53:54 | <koz_> | glguy: Yes. |
| 04:54:10 | <glguy> | then I'd say the difference is that words doesn't consider the empty string a word |
| 04:54:27 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 246 seconds) |
| 04:54:32 | <glguy> | while split is about breaking up some text on an arbitrary delimiter |
| 04:54:56 | <koz_> | However, split (== '\n') and lines _are_ equivalent. |
| 04:55:12 | <glguy> | I'd be surprised if they were |
| 04:55:26 | <koz_> | http://hackage.haskell.org/package/text-1.2.4.1/docs/src/Data.Text.html#lines |
| 04:55:36 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 04:55:52 | <glguy> | lines should treat \n as a line TERMINATOR while split would treat as a separator |
| 04:56:47 | <glguy> | Prelude Data.Text> Data.Text.lines "a\nb\n" |
| 04:56:47 | <glguy> | ["a","b"] |
| 04:56:47 | <glguy> | Prelude Data.Text> Data.Text.split ('\n'==) "a\nb\n" |
| 04:56:47 | <glguy> | ["a","b",""] |
| 04:56:56 | <koz_> | Interesting. |
| 04:57:03 | <glguy> | of course an empty *line* makes plenty of sense |
| 04:57:03 | <koz_> | Didn't think of the trailing newline. |
| 04:57:13 | <glguy> | so lines returns those |
| 04:57:49 | <glguy> | > words "prelude works the same way" |
| 04:57:50 | <lambdabot> | ["prelude","works","the","same","way"] |
| 04:57:59 | <glguy> | > lines "and\nhas\nterminators |
| 04:58:01 | <lambdabot> | <hint>:1:29: error: |
| 04:58:01 | <lambdabot> | <hint>:1:29: error: |
| 04:58:01 | <lambdabot> | lexical error in string/character literal at end of input |
| 04:58:02 | <glguy> | > lines "and\nhas\nterminators\n" |
| 04:58:04 | <lambdabot> | ["and","has","terminators"] |
| 04:58:24 | <koz_> | Ah, OK, makes sense. |
| 04:58:27 | <koz_> | Thanks! |
| 04:58:30 | <glguy> | ^_^ |
| 04:59:35 | <koz_> | So does this mean that, in general, unlines . lines /= id, and unwords . words /= id? |
| 05:00:04 | <glguy> | > (unlines . lines) "a\nb" |
| 05:00:07 | <lambdabot> | "a\nb\n" |
| 05:00:21 | <glguy> | > (unwords . words) "you're right" |
| 05:00:22 | <lambdabot> | "you're right" |
| 05:00:30 | <koz_> | OK, definitely good to know. Thanks! |
| 05:00:45 | × | conal quits (~conal@66.115.157.58) (Remote host closed the connection) |
| 05:01:08 | <glguy> | there are enough broken text files in the wild that it would be annoying if lines fell over when the final terminator was missing |
| 05:01:14 | → | conal joins (~conal@66.115.157.58) |
| 05:01:51 | ski | . o O ( s;/=;=/=; ) |
| 05:02:08 | <koz_> | ski: Yes, I was being a bit abusive of notation there. |
| 05:02:24 | <koz_> | Because technically functions don't have Eq instances. |
| 05:02:32 | ski | nods and smiles |
| 05:02:42 | <glguy> | ≠ ? |
| 05:02:47 | <ski> | works for me |
| 05:02:56 | <glguy> | Gives an excuse for me to use a digraph |
| 05:03:17 | × | urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna) |
| 05:03:25 | <ski> | (i'm also .. annoyed, by people who write `===', when `=' would work as well) |
| 05:03:33 | <koz_> | ski: PHP lol. |
| 05:03:44 | <ski> | no, i'm talking about Haskell docs, Haskell blags |
| 05:04:15 | <glguy> | ski, I think if I was doing that it would be because I wanted to be clear I wasn't using the Haskell = at that point but it was a meta-level thing |
| 05:05:36 | <ski> | oh, you mean, equal as expressions ? |
| 05:05:48 | <ski> | like how `2 * 3' and `1 + 5' are not the same expression |
| 05:05:56 | × | BrainZero quits (~BrainZero@111.60.233.69) (Ping timeout: 240 seconds) |
| 05:06:44 | <glguy> | yeah, probably that |
| 05:06:45 | × | Sheilong quits (uid293653@gateway/web/irccloud.com/x-sqldxvxwbirnrvhg) () |
| 05:06:45 | <koz_> | Something something intro to Girard's book where he opines on 'but what does = _really_ mean?'. |
| 05:06:54 | ski | grins |
| 05:07:09 | × | guest7682358928 quits (2de85cb9@gateway/web/cgi-irc/kiwiirc.com/ip.45.232.92.185) (Ping timeout: 264 seconds) |
| 05:08:05 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 05:09:15 | × | Wuzzy quits (~Wuzzy@p57a2e44e.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 05:12:45 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 05:14:08 | <monochrom> | === is more equal than == |
| 05:14:12 | × | kupi quits (uid212005@gateway/web/irccloud.com/x-lbjfgvhzpgnvgmcj) (Quit: Connection closed for inactivity) |
| 05:14:33 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 05:14:51 | <glguy> | == is a question |
| 05:14:55 | <glguy> | 1 == 2 |
| 05:15:03 | <glguy> | Turns out that evaluates to False |
| 05:16:11 | <koz_> | glguy: I would hope so. |
| 05:16:47 | <monochrom> | I was joking. |
| 05:17:09 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) |
| 05:17:26 | <monochrom> | But I can argue "= is just as much a question as ==" another day. |
| 05:17:41 | <ski> | a different type of question |
| 05:18:12 | <ephemient> | ≟ |
| 05:18:21 | <glguy> | but which one is a riddle? |
| 05:18:28 | → | ixaxaar joins (~ixaxaar@49.207.210.215) |
| 05:18:41 | → | frankdmartinez joins (~frankdmar@138.199.52.84) |
| 05:19:01 | <ski> | (one is suggesting "Calculemus !", the other is suggesting "scratch head, and think, and maybe get an answer in half an hour, or a year, or five hundred years") |
| 05:19:18 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 05:20:05 | <ephemient> | ⯹ |
| 05:20:19 | <ephemient> | (why does Unicode have these symbols) |
| 05:20:21 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 05:20:43 | × | Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007) |
| 05:20:50 | <monochrom> | It has emoji, it can have any symbol. |
| 05:21:21 | <glguy> | I think they flip a coin each time they have an idea and this is how we have a partial superscript/supscript alphabet |
| 05:22:38 | <frankdmartinez> | My apologies if this is the wrong forum. I am trying to build ghc-vis and I get a complaint about ghc-heap-view which says “This library cannot be built using profiling. Try invoking cabal with the --disable-library-profiling flag.” It seems, wherever I place that option, cabal gives the same complaint. Can anyone point me in the direction of information on how to build ghc-heap-view with this flag (or, preferablt, ghc-vis)? |
| 05:22:56 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:f4f6:e4b3:c49e:f3f) |
| 05:23:23 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 05:28:51 | × | djellemah quits (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54) (Ping timeout: 258 seconds) |
| 05:29:07 | <glguy> | frankdmartinez, this is an OK place to ask, but I'm not sure if anyone knows off the top of their head, so you might have to give more detail about what commands you're trying and the actual output |
| 05:29:57 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds) |
| 05:30:34 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Remote host closed the connection) |
| 05:31:08 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 05:31:25 | × | minoru_shiraeesh quits (~shiraeesh@46.34.206.235) (Ping timeout: 240 seconds) |
| 05:33:44 | × | Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Read error: Connection reset by peer) |
| 05:34:36 | × | pfurla quits (~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 258 seconds) |
| 05:35:56 | → | Lord_of_Life joins (~Lord@unaffiliated/lord-of-life/x-0885362) |
| 05:36:02 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Ping timeout: 264 seconds) |
| 05:37:04 | × | jedws quits (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 05:39:28 | <frankdmartinez> | glguy: Thanks, good point. Initial command tried: `cabal install ghc-vis --allow-newer`. The log from that attempt can be found at https://pastebin.com/a60pRq0Z. I have tried placing `--disable-library-profiling` after `cabal` as well as after each argument passed to it and, though the path to the temporary files mentioned changes each time, the error about trying to build using profiling remains the same. |
| 05:40:30 | → | jonathanx joins (~jonathan@h-176-109.A357.priv.bahnhof.se) |
| 05:40:53 | <glguy> | I'm not sure. It doesn't look like this package's dependencies are particularly maintained at the moment |
| 05:41:09 | <glguy> | There was some recent commit activity I found on the ghc-vis github |
| 05:42:13 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 05:43:07 | → | acidjnk_new joins (~acidjnk@p200300d0c722c40898344eac4ba1ad37.dip0.t-ipconnect.de) |
| 05:46:57 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 05:52:35 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 05:54:32 | × | sakirious quits (~sakirious@c-71-197-191-137.hsd1.wa.comcast.net) (Read error: Connection reset by peer) |
| 05:54:52 | → | sakirious joins (~sakirious@c-71-197-191-137.hsd1.wa.comcast.net) |
| 05:57:20 | × | unlink_ quits (~unlink2@p200300ebcf241100fcf67590445edc70.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 05:58:47 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 05:59:04 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
| 05:59:11 | → | unlink2 joins (~unlink2@p200300ebcf241100fcf67590445edc70.dip0.t-ipconnect.de) |
| 05:59:14 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Remote host closed the connection) |
| 05:59:31 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
| 05:59:38 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 05:59:50 | → | howdoi joins (uid224@gateway/web/irccloud.com/x-zyykjymmarnaxvef) |
| 06:00:24 | → | isBEKaml joins (~isBEKaml@unaffiliated/isbekaml) |
| 06:01:25 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 06:04:40 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 06:04:45 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds) |
| 06:10:06 | → | da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) |
| 06:10:30 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 06:13:51 | × | Maxdamantus quits (~Maxdamant@unaffiliated/maxdamantus) (Ping timeout: 272 seconds) |
| 06:15:01 | → | Maxdamantus joins (~Maxdamant@unaffiliated/maxdamantus) |
| 06:15:15 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Remote host closed the connection) |
| 06:15:32 | <frankdmartinez> | glguy: I think I got it. I had “library-profiling” set to “True” in the ~/.cabal/config file. I changed it to “False” and cabal is moving muuuuuuuch further along. |
| 06:15:44 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 06:17:11 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 06:17:55 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 06:19:28 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
| 06:20:26 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Ping timeout: 264 seconds) |
| 06:20:51 | × | raym quits (~ray@45.64.220.139) (Quit: leaving) |
| 06:21:04 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 06:21:05 | → | raym joins (~ray@45.64.220.139) |
| 06:22:11 | × | falsifian quits (~falsifian@cpef81d0f9cb2f3-cmf81d0f9cb2f0.cpe.net.fido.ca) (Quit: leaving) |
| 06:22:39 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds) |
| 06:25:36 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 06:27:48 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 06:28:02 | → | jedws joins (~jedws@101.184.202.248) |
| 06:28:10 | × | da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 06:29:06 | × | coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 06:29:38 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 06:29:54 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
| 06:32:51 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds) |
| 06:36:11 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 06:36:14 | × | rople quits (~rople@116.206.228.203) (Quit: rople) |
| 06:36:35 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 06:39:06 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 06:40:51 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 06:44:05 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 06:45:35 | × | jedws quits (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 06:45:49 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
| 07:00:22 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Remote host closed the connection) |
| 07:02:38 | → | minoru_shiraeesh joins (~shiraeesh@109.166.58.206) |
| 07:02:57 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 07:04:02 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 07:04:44 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 07:05:24 | × | h2017 quits (~h2017@bras-base-clbaon0201w-grc-32-142-114-145-140.dsl.bell.ca) (Quit: Leaving) |
| 07:08:22 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 07:08:36 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 07:09:38 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 07:11:07 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 07:12:26 | → | XiaoZai joins (3daa8e94@61.170.142.148) |
| 07:15:16 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Ping timeout: 240 seconds) |
| 07:15:33 | × | XiaoZai quits (3daa8e94@61.170.142.148) (Client Quit) |
| 07:21:53 | → | jedws joins (~jedws@101.184.202.248) |
| 07:22:19 | × | dolio quits (~dolio@haskell/developer/dolio) (Ping timeout: 258 seconds) |
| 07:25:04 | → | ukari joins (~ukari@unaffiliated/ukari) |
| 07:25:07 | → | dolio joins (~dolio@haskell/developer/dolio) |
| 07:26:20 | → | Guest_14 joins (59d9a17f@adsl-89-217-161-127.adslplus.ch) |
| 07:26:46 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 07:27:10 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 07:28:44 | × | Guest_14 quits (59d9a17f@adsl-89-217-161-127.adslplus.ch) (Client Quit) |
| 07:29:02 | → | average joins (uid473595@gateway/web/irccloud.com/x-snybajxjtcrfigoq) |
| 07:31:46 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds) |
| 07:34:02 | × | elliott__ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 256 seconds) |
| 07:39:27 | → | RusAlex_ joins (~Chel@APN-123-255-118-gprs.simobil.net) |
| 07:41:45 | × | RusAlex quits (~Chel@unaffiliated/rusalex) (Ping timeout: 240 seconds) |
| 07:42:40 | → | j2t_ joins (~j2t@84.122.202.215.dyn.user.ono.com) |
| 07:43:33 | <hololeap> | Elm is weird. it's like Diet Haskell |
| 07:44:33 | <siraben> | ugh Elm recursion has to be bounded otherwise it blows the stack |
| 07:44:57 | <siraben> | witness how they define foldr https://github.com/elm/core/blob/22eefd207e7a63daab215ae497f683ff2319c2ca/src/List.elm#L173 |
| 07:45:05 | × | catt quits (~r@31.124.181.226) (Ping timeout: 240 seconds) |
| 07:46:21 | <hololeap> | that's ... strange |
| 07:46:43 | <hololeap> | how am i supposed to write an 'until' loop? lol |
| 07:47:15 | <c_wraith> | My experience with Elm and talking to other people who have used Elm leads me to believe that if you haven't used Haskell, you'll like it. |
| 07:47:31 | <c_wraith> | If you have, you just wonder why everything is so hard |
| 07:47:51 | <hololeap> | yeah, people on the elm reddit are like, how can you just magically make an enumeration over a sum type? |
| 07:48:00 | <hololeap> | and i'm flipping tables |
| 07:48:51 | <hololeap> | (╯° °)╯︵ ┻━┻ |
| 07:49:04 | <siraben> | `derive Enum` |
| 07:49:39 | <hololeap> | what do you mean i have to hard code the isomorphism to int?? |
| 07:49:39 | <siraben> | also because of a lack of typeclasses there's a lot of passing around of dictionaries |
| 07:50:18 | <hololeap> | yeah and no Ord so you get a handful of valid key types for dicts |
| 07:51:00 | <siraben> | last time I used Elm for a work project perf was also a pain point, there's no good sequence library like in Haskell |
| 07:51:39 | <siraben> | and if only we had laziness so we don't need to compute over tens of thousands of elements |
| 07:52:50 | × | j2t_ quits (~j2t@84.122.202.215.dyn.user.ono.com) (Quit: Leaving) |
| 07:53:10 | → | j2t joins (~j2t@84.122.202.215.dyn.user.ono.com) |
| 07:53:51 | <hololeap> | luckily i found a good library for enums and dict that will take any type of key given a way to convert it to an int |
| 07:56:56 | × | minoru_shiraeesh quits (~shiraeesh@109.166.58.206) (Ping timeout: 240 seconds) |
| 08:00:21 | → | hidedagger joins (~nate@unaffiliated/hidedagger) |
| 08:00:45 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 08:00:48 | <siraben> | hololeap: which library? |
| 08:01:02 | <siraben> | also list fusion and deforestation are non-existent in Elm, IIRC |
| 08:01:03 | → | danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) |
| 08:01:14 | × | hidedagger quits (~nate@unaffiliated/hidedagger) (Client Quit) |
| 08:02:31 | <hololeap> | Herteby/enum and turboMaCk/any-dict |
| 08:03:42 | → | coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) |
| 08:05:26 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Ping timeout: 264 seconds) |
| 08:05:46 | × | coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Client Quit) |
| 08:06:05 | → | coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) |
| 08:09:01 | × | raym quits (~ray@45.64.220.139) (Quit: leaving) |
| 08:09:16 | → | raym joins (~ray@45.64.220.139) |
| 08:10:05 | → | Varis joins (~Tadas@unaffiliated/varis) |
| 08:10:08 | × | polyrain quits (~polyrain@2001:8003:e4d8:4101:795c:c8cd:2656:7ed2) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 08:10:36 | × | Varis quits (~Tadas@unaffiliated/varis) (Max SendQ exceeded) |
| 08:10:55 | → | Varis joins (~Tadas@unaffiliated/varis) |
| 08:12:30 | <ski> | hm, reminds me of how i read in some old Prolog implementations, they commonly did iteration by binary recursion. the reason was that the stack depth was limited (and apparently there was no LCO) but if your call-tree was a binary tree, your depth would be logarithmic rather than linear |
| 08:12:41 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 08:12:49 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 08:13:27 | <ij> | more data is disappearing from my POSet than there should be. I cannot replicate it with the same data in REPL. Where could the bug be? http://sprunge.us/eLgYzn |
| 08:14:30 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 08:15:26 | → | polyrain joins (~polyrain@2001:8003:e4d8:4101:795c:c8cd:2656:7ed2) |
| 08:16:24 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 08:18:45 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 08:19:17 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 08:19:29 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 08:20:58 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 258 seconds) |
| 08:21:40 | × | jedws quits (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 08:22:24 | <ij> | in running the application the one cursor = (0,5) disappears, which you can verify by search-highlighting "(0,5)" |
| 08:23:35 | <ij> | I guess I could isolate all the additions/deletions and see if I can produce the bug in REPL then |
| 08:23:50 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:24:09 | <ski> | i guess `Show' isn't consisted with `toList' |
| 08:24:19 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Ping timeout: 272 seconds) |
| 08:24:23 | <ski> | s/consisted/consistent/ |
| 08:24:58 | <ski> | (there's no `removeMin' ?) |
| 08:25:24 | <ij> | well, you can only remove an unordered group, because it's a poset |
| 08:25:29 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 08:25:33 | <ij> | smallest unordered group |
| 08:26:08 | <ij> | POSet.toList says its order is unspecified |
| 08:26:19 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:26:22 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 08:27:13 | <ski> | hm, ok |
| 08:27:45 | <ski> | but calling `toList' clearly gives a different result than using `Show' |
| 08:28:11 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 08:28:26 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:28:51 | <ski> | (and it looks like all your cursors in the list are distinct, wrt the given equality) |
| 08:29:10 | <ij> | fmap cursor, just to make it easier for looking through and so I'd have to format less, but I have macros anyway, so: http://sprunge.us/WiZKEV |
| 08:29:19 | <ski> | (or, i suppose s/cursors/continues/) |
| 08:30:13 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 08:30:58 | <ski> | hm, so where does `continues' come from ? |
| 08:30:58 | <ij> | the order is still off, but that could be because it was created differently in the program |
| 08:31:05 | <ski> | probably, yea |
| 08:31:14 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:32:12 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds) |
| 08:32:18 | <ski> | could you try calling `fromList' from the snippet of code using `print' to check that you're getting the same items, there ? |
| 08:32:31 | <ski> | er, sorry. calling `toList' |
| 08:33:47 | <ij> | https://github.com/siers/ppmz/blob/master/solve.hs |
| 08:34:06 | <ij> | addNextContinues/findContinue |
| 08:34:18 | <ij> | I'll try that, one sec |
| 08:35:55 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds) |
| 08:36:41 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 08:37:22 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:37:27 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 08:37:35 | <ski> | (oh, and your `Show' instances really should be defining `showsPrec', not `show') |
| 08:37:41 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:38:30 | <ij> | I don't think I understand what you're asking me – print where? did you notice the last URL? – I printed the unabbreviated versions. or would you like to see something else? |
| 08:39:23 | <ski> | i guess around lines 426 through 428 |
| 08:39:30 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 08:39:52 | <ski> | what if you also do |
| 08:40:09 | <ski> | print ("continues",S.toList continues) |
| 08:40:12 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:40:33 | <ski> | print ("continues",S.toList (S.delete (head (S.lookupMin continues)) continues)) |
| 08:40:37 | <ij> | aha |
| 08:40:39 | <ski> | around there ? |
| 08:41:06 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 08:41:16 | <ij> | oh, you meant toList up there |
| 08:41:17 | <ski> | to check whether `Show' and `toList' actually does display the same items present |
| 08:41:22 | <ski> | yea |
| 08:41:56 | × | drbean quits (~drbean@TC210-63-209-206.static.apol.com.tw) (Ping timeout: 240 seconds) |
| 08:42:18 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds) |
| 08:42:45 | <ij> | http://sprunge.us/wl83Gq |
| 08:42:53 | <ski> | btw, `foo <- pure bar' can be replaced by `let foo = bar' |
| 08:43:16 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 08:43:33 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:43:35 | × | cheater quits (~user@unaffiliated/cheater) (Ping timeout: 258 seconds) |
| 08:43:36 | <ij> | that's only for aesthetical syntactical homogeneity |
| 08:43:39 | <ski> | ij : is that if you added `S.toList' to the existing lines ? |
| 08:43:53 | <ij> | print ("continues", S.toList continues) AND print ("= ", S.toList (S.delete (head (S.lookupMin continues)) continues)) |
| 08:44:12 | <ij> | right? |
| 08:44:18 | × | raym quits (~ray@45.64.220.139) (Quit: leaving) |
| 08:44:22 | <ski> | yea .. i was really asking for that, in *addition* to the previous lines |
| 08:44:30 | <ski> | (to more easily be able to compare) |
| 08:44:37 | → | raym joins (~ray@45.64.220.139) |
| 08:44:53 | <ij> | more log from the application run? |
| 08:45:00 | <ski> | however .. it looks like there's still one item missing |
| 08:45:06 | <ski> | (log ?) |
| 08:45:19 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 08:45:45 | → | mikolaj joins (~mikon@duch.mimuw.edu.pl) |
| 08:45:53 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 08:46:06 | <ij> | oh, from lines with the context, I guess? if so, then one sec |
| 08:46:18 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:46:32 | <ski> | (i'm not sure what you're asking) |
| 08:46:50 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 08:46:58 | <ij> | you wanted to switch between tabs and compare, so I think I understand what you're asking for |
| 08:47:04 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:47:23 | <ski> | i dunno what either "tabs" or "compare" means |
| 08:48:53 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 08:49:25 | <ij> | http://sprunge.us/So256p |
| 08:49:55 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 08:50:05 | <ij> | this format is diffable with the previous post and you can see that S.toList produces the same output as Show POSet :) |
| 08:50:13 | → | forgottenone joins (~forgotten@176.42.26.20) |
| 08:50:39 | <ski> | hm, ok |
| 08:50:56 | <ij> | (I didn't just delete the `fromList's, I did indeed copy and reformat) |
| 08:51:25 | <ski> | (although you didn't copy and reformat the lines with `S.toList') |
| 08:52:03 | <ij> | the lines 426-428? |
| 08:52:23 | <ski> | not those line numbers in the paste, but yea |
| 08:52:30 | <ski> | (but it doesn't really matter much) |
| 08:52:44 | <ij> | yes, this is the output after adding S.toList in the prints |
| 08:53:48 | <ski> | i dunno how `POSet' works really. i suppose you're either failing some precondition of an operation in the lib .. or maybe hitting on a bug in it |
| 08:54:12 | <ij> | scores aren't the same and it works as expected in isolation |
| 08:54:35 | <ij> | I think it's a bug, but I cannot be sure until I have extracted a clean example |
| 08:54:38 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 264 seconds) |
| 08:54:58 | <ij> | going to print all the modifications, try it out in ghci then |
| 08:55:18 | <ski> | if you're able to figure out in which order the continues are actually added to the poset, you could then try to play around with a program containing just those insertions, and see if you could reduce the problem then |
| 08:55:38 | <ij> | yup, that's what I was trying to say :) |
| 08:55:51 | <ij> | shouldn't be too difficult |
| 08:56:43 | <ski> | perhaps you could even use QuickCheck or SmallCheck or something like that, to generate lists of instructions to perform on a POSet, and get a (local) minimum example |
| 08:57:48 | <ij> | given that I have a running example already, I think printing a ton of S.insert, S.deletes will be quite faster to get a quick "bug"/"no bug" in POSet answer |
| 08:58:33 | <ij> | I could also accidentally lose the bug, if I change anything, so I may not be able to create an example |
| 08:59:48 | × | mikolaj quits (~mikon@duch.mimuw.edu.pl) (Quit: Lost terminal) |
| 08:59:54 | <ij> | when I knew I'll have to use another set library, I had a hunch it likely won't go smoothly |
| 09:00:01 | <ij> | it never does 😅 |
| 09:00:03 | × | peterstorm[m] quits (peterstorm@gateway/shell/matrix.org/x-euvywjqfzhcglbjd) (Quit: Idle for 30+ days) |
| 09:00:27 | × | zyeri- quits (zyeri@gateway/shell/tilde.team/x-xvdpvpjsanrpyrhi) (Ping timeout: 258 seconds) |
| 09:02:26 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) |
| 09:03:02 | × | berberman_ quits (~berberman@unaffiliated/berberman) (Quit: ZNC 1.8.2 - https://znc.in) |
| 09:03:36 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 09:06:03 | × | hekkaidekapus quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 268 seconds) |
| 09:06:58 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Ping timeout: 258 seconds) |
| 09:07:31 | × | kir quits (~kir@s91904426.blix.com) (Remote host closed the connection) |
| 09:09:39 | → | hekkaidekapus joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 09:11:12 | → | Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
| 09:12:57 | → | LKoen joins (~LKoen@252.248.88.92.rev.sfr.net) |
| 09:13:59 | → | mirrorbird joins (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d) |
| 09:14:36 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 09:15:20 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:f4f6:e4b3:c49e:f3f) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 09:15:29 | → | darkcodi[m] joins (darkcodima@gateway/shell/matrix.org/x-bidbqzmubwdqapiu) |
| 09:17:19 | → | zyeri joins (zyeri@gateway/shell/tilde.team/x-rjdyrjazritiuhtb) |
| 09:17:19 | × | zyeri quits (zyeri@gateway/shell/tilde.team/x-rjdyrjazritiuhtb) (Changing host) |
| 09:17:19 | → | zyeri joins (zyeri@tilde.team/users/zyeri) |
| 09:21:33 | × | coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Remote host closed the connection) |
| 09:23:42 | → | jchia1 joins (~jchia@58.32.32.232) |
| 09:24:30 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 09:25:03 | × | jchia quits (~jchia@218.80.114.20) (Ping timeout: 256 seconds) |
| 09:26:08 | × | kini quits (~kini@unaffiliated/kini) (Remote host closed the connection) |
| 09:27:27 | → | kini joins (~kini@unaffiliated/kini) |
| 09:29:05 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 09:30:26 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 09:35:31 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds) |
| 09:39:51 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 09:40:45 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 09:44:41 | × | frankdmartinez quits (~frankdmar@138.199.52.84) (Quit: frankdmartinez) |
| 09:45:18 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 258 seconds) |
| 09:47:25 | <ij> | ski, vote bug! http://sprunge.us/UmyV79 |
| 09:50:30 | <ij> | context for anyone reading: Continue { cursor = (0,5), score = 15 } is never deleted, but it goes missing after adding Continue { cursor = (2,2), score = 14 } though the partial order doesn't consider them the same |
| 09:53:01 | × | charukiewicz quits (~charukiew@irouteince04.i.subnet.rcn.com) (Quit: charukiewicz) |
| 09:54:31 | × | DataComputist quits (~lumeng@50.43.26.251) (Ping timeout: 256 seconds) |
| 09:55:09 | → | DataComputist joins (~lumeng@50.43.26.251) |
| 09:57:37 | × | shatriff_ quits (~vitaliish@176-52-216-242.irishtelecom.com) (Remote host closed the connection) |
| 09:57:51 | → | shatriff joins (~vitaliish@176-52-216-242.irishtelecom.com) |
| 10:00:05 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 10:01:08 | × | perdent quits (~perdent@101.175.174.67) (Ping timeout: 265 seconds) |
| 10:03:10 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) |
| 10:04:45 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 10:05:27 | × | hnOsmium0001 quits (uid453710@gateway/web/irccloud.com/x-tannjxvhvijjixbp) (Quit: Connection closed for inactivity) |
| 10:07:32 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) (Ping timeout: 258 seconds) |
| 10:09:07 | × | polyrain quits (~polyrain@2001:8003:e4d8:4101:795c:c8cd:2656:7ed2) (Quit: Textual IRC Client: www.textualapp.com) |
| 10:09:25 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 10:11:10 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 10:14:57 | × | vicfred quits (vicfred@gateway/vpn/mullvad/vicfred) (Quit: Leaving) |
| 10:15:23 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 10:16:55 | × | mirrorbird quits (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d) (Quit: Leaving) |
| 10:18:53 | × | kini quits (~kini@unaffiliated/kini) (Remote host closed the connection) |
| 10:19:47 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection) |
| 10:20:17 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 260 seconds) |
| 10:22:51 | → | kini joins (~kini@unaffiliated/kini) |
| 10:28:53 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 10:29:58 | → | Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362) |
| 10:32:57 | × | Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 264 seconds) |
| 10:33:01 | Lord_of_Life_ | is now known as Lord_of_Life |
| 10:33:38 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 10:35:25 | × | j2t quits (~j2t@84.122.202.215.dyn.user.ono.com) (Ping timeout: 240 seconds) |
| 10:35:40 | → | fendor joins (~fendor@91.141.3.239.wireless.dyn.drei.com) |
| 10:35:58 | → | bitmagie joins (~Thunderbi@200116b806b35100a92d8e55454b8ad9.dip.versatel-1u1.de) |
| 10:37:22 | <ij> | here's a shorter example with (0,5) disappearing http://sprunge.us/lxrnaj |
| 10:37:23 | × | DataComputist quits (~lumeng@50.43.26.251) (Ping timeout: 265 seconds) |
| 10:38:34 | <ij> | can someone verify that the XY (0,5) 15 shouldn't disappear? |
| 10:39:26 | → | DataComputist joins (~lumeng@50.43.26.251) |
| 10:43:12 | → | jollygood2 joins (~bc8134e3@217.29.117.252) |
| 10:45:43 | × | RusAlex_ quits (~Chel@APN-123-255-118-gprs.simobil.net) (Read error: Connection reset by peer) |
| 10:46:46 | → | RusAlex_ joins (~Chel@APN-123-255-118-gprs.simobil.net) |
| 10:48:18 | → | f-a joins (~f-a@151.38.55.146) |
| 10:48:20 | → | is_null joins (~jpic@pdpc/supporter/professional/is-null) |
| 10:48:24 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 10:48:35 | <f-a> | hello. On which repo can I report a suggestion/bug about the windows installer (chocolatey)? |
| 10:51:56 | → | Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net) |
| 10:53:55 | → | frozenErebus joins (~frozenEre@94.128.81.133) |
| 10:53:56 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 240 seconds) |
| 10:54:15 | <Uniaika> | f-a: you should contact the chocolatey maintainer directly, you'll have more success |
| 10:56:47 | → | gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh) |
| 10:57:22 | → | fendor_ joins (~fendor@77.119.128.41.wireless.dyn.drei.com) |
| 10:57:23 | <f-a> | thanks Uniaika, I should have been clearer |
| 10:57:30 | → | NGravity joins (csp@gateway/shell/xshellz/x-shswcsdvnxabefik) |
| 10:57:40 | <ij> | ski, mind taking a look? |
| 10:57:48 | <f-a> | numerous windows users I know (well, few windows users I know) do not like chocolatey and are wary of installing it |
| 10:58:16 | <f-a> | I wanted to relay their feedback |
| 10:58:45 | × | Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 240 seconds) |
| 10:58:54 | × | hekkaidekapus quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Remote host closed the connection) |
| 10:59:12 | × | Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer) |
| 10:59:14 | → | hekkaidekapus joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 10:59:18 | <Uniaika> | f-a: that's unfortunately in direct opposition with the fact that we don't have enough people that are knowledgeable enough to produce MSI packages (or whatever is the format nowadays) |
| 10:59:57 | × | fendor quits (~fendor@91.141.3.239.wireless.dyn.drei.com) (Ping timeout: 264 seconds) |
| 11:00:43 | <f-a> | Uniaika: feedback I got said «My specific issue would be, what chocolatey did didn't seem to complicated. I would have done it myself if there were download links alongside the chocolatey version.» |
| 11:01:27 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 11:02:14 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
| 11:03:53 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) |
| 11:03:58 | × | jetpack_joe quits (sid146137@gateway/web/irccloud.com/x-barhrktjbbtarmrh) (Quit: Connection closed for inactivity) |
| 11:05:01 | × | isBEKaml quits (~isBEKaml@unaffiliated/isbekaml) (Quit: leaving) |
| 11:08:13 | × | howdoi quits (uid224@gateway/web/irccloud.com/x-zyykjymmarnaxvef) (Quit: Connection closed for inactivity) |
| 11:08:26 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) (Ping timeout: 264 seconds) |
| 11:08:26 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 11:08:44 | <Uniaika> | f-a: I hear you, but you will make things change for the better if you directly contact the Chocolatey maintainer |
| 11:08:48 | × | eyenx quits (~eyenxeyen@unaffiliated/eye/x-1653358) (Ping timeout: 265 seconds) |
| 11:11:43 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:17:40 | → | drbean joins (~drbean@TC210-63-209-173.static.apol.com.tw) |
| 11:18:01 | → | Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net) |
| 11:20:09 | → | eyenx joins (~eyenxeyen@unaffiliated/eye/x-1653358) |
| 11:20:45 | <tomsmeding> | ij: is that library on hackage? |
| 11:24:25 | × | f-a quits (~f-a@151.38.55.146) (Ping timeout: 240 seconds) |
| 11:25:05 | → | f-a joins (~f-a@mi-18-14-238.service.infuturo.it) |
| 11:25:30 | <tomsmeding> | oh I see, it's pomaps |
| 11:26:19 | × | nfip^ quits (nfip@ip98-184-89-2.mc.at.cox.net) () |
| 11:32:49 | <ij> | yup |
| 11:36:56 | × | frozenErebus quits (~frozenEre@94.128.81.133) (Ping timeout: 240 seconds) |
| 11:37:37 | × | acidjnk_new quits (~acidjnk@p200300d0c722c40898344eac4ba1ad37.dip0.t-ipconnect.de) (Ping timeout: 258 seconds) |
| 11:39:27 | × | quinn quits (~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Quit: ZNC 1.8.1 - https://znc.in) |
| 11:41:15 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 11:41:28 | → | __monty__ joins (~toonn@unaffiliated/toonn) |
| 11:51:05 | → | mouseghost joins (~draco@wikipedia/desperek) |
| 11:54:08 | → | j2t joins (~j2t@84.122.202.215.dyn.user.ono.com) |
| 11:59:59 | → | sfvm joins (~sfvm@37.228.215.77) |
| 12:00:16 | → | catalin joins (~catalin@82.77.237.60) |
| 12:00:50 | × | sfvm quits (~sfvm@37.228.215.77) (Remote host closed the connection) |
| 12:01:49 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Remote host closed the connection) |
| 12:04:37 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) |
| 12:06:33 | × | Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 264 seconds) |
| 12:07:07 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) |
| 12:08:43 | × | seveg quits (~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) (Quit: WeeChat 3.0) |
| 12:09:02 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) (Ping timeout: 264 seconds) |
| 12:09:13 | → | hiroaki joins (~hiroaki@2a02:908:4b18:8c40::8d83) |
| 12:11:26 | × | Lowl3v3l quits (~Lowl3v3l@dslb-002-203-233-121.002.203.pools.vodafone-ip.de) (Remote host closed the connection) |
| 12:13:38 | → | Lowl3v3l joins (~Lowl3v3l@dslb-002-203-233-121.002.203.pools.vodafone-ip.de) |
| 12:14:05 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 12:14:22 | <jollygood2> | how do I convert char ** to [String]? do I have to loop over char ** and peekArray every char *? |
| 12:18:45 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds) |
| 12:19:15 | → | frozenErebus joins (~frozenEre@94.128.81.133) |
| 12:19:16 | <merijn> | jollygood2: Yes |
| 12:19:38 | <merijn> | Why are you getting a char** to begin with, though? |
| 12:20:03 | → | seveg joins (~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) |
| 12:20:56 | <jollygood2> | it's what the C function returns |
| 12:21:29 | × | kini quits (~kini@unaffiliated/kini) (Remote host closed the connection) |
| 12:22:10 | <merijn> | Ideally you'd want the C function to return something else, but if that's all you got, then yeah "loop over each element and convert the char*" is the best you can do |
| 12:22:20 | × | thunderrd quits (~thunderrd@183.182.115.7) (*.net *.split) |
| 12:22:25 | → | darjeeling_ joins (~darjeelin@122.245.216.78) |
| 12:22:29 | <merijn> | Although you probably want one of the C string function, rather than peekArray |
| 12:22:46 | → | kini joins (~kini@unaffiliated/kini) |
| 12:23:03 | × | Athas quits (athas@2a01:7c8:aaac:1cf:2650:6cc9:39f1:f264) (Quit: ZNC - http://znc.sourceforge.net) |
| 12:23:19 | → | Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net) |
| 12:23:29 | <merijn> | There's peekCString for example, for NUL terminated strings |
| 12:23:49 | → | Athas joins (~athas@2a01:7c8:aaac:1cf:5661:9ebf:32e3:d99f) |
| 12:23:51 | × | zaquest quits (~notzaques@5.128.210.178) (Remote host closed the connection) |
| 12:24:24 | × | pavonia quits (~user@unaffiliated/siracusa) (Quit: Bye!) |
| 12:24:45 | <jollygood2> | yeah you're right, I wanted peekCString |
| 12:24:56 | → | thunderrd joins (~thunderrd@183.182.115.7) |
| 12:26:07 | → | zaquest joins (~notzaques@5.128.210.178) |
| 12:27:27 | <jollygood2> | it worked. peekArray to convert char * to [char *], then mapM peekCString to get [String] |
| 12:28:01 | → | raehik1 joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 12:28:11 | <jollygood2> | to convert char ** to [char *], even |
| 12:30:44 | <merijn> | Yeah, that sounds about right |
| 12:35:24 | → | Tops2 joins (~Tobias@dyndsl-095-033-027-032.ewe-ip-backbone.de) |
| 12:37:30 | → | aveltras joins (uid364989@gateway/web/irccloud.com/x-yvpfkhesmkalxnwm) |
| 12:38:35 | <aveltras> | how would one use a function like https://hackage.haskell.org/package/typerep-map-0.3.3.0/docs/Data-TypeRepMap.html#v:keys ? I can't figure it out since you don't recover any type info |
| 12:39:09 | <merijn> | aveltras: When you pattern match on SomeTypeRep you bring the type info in scope |
| 12:39:14 | ← | f-a parts (~f-a@mi-18-14-238.service.infuturo.it) () |
| 12:39:20 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 12:40:00 | <merijn> | aveltras: That applies to hiding type information with any existential |
| 12:41:37 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection) |
| 12:42:15 | × | star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Ping timeout: 256 seconds) |
| 12:42:16 | × | Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 240 seconds) |
| 12:43:00 | → | mirrorbird joins (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d) |
| 12:43:57 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Ping timeout: 256 seconds) |
| 12:45:31 | → | rdivyanshu joins (uid322626@gateway/web/irccloud.com/x-wrrlvklxxelvmqxz) |
| 12:47:26 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 12:47:44 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) |
| 12:51:06 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 12:51:08 | → | geekosaur joins (ac3a8c42@172.58.140.66) |
| 12:52:49 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 12:54:23 | <tomsmeding> | aveltras: related topic: GADTs |
| 12:54:45 | × | frozenErebus quits (~frozenEre@94.128.81.133) (Ping timeout: 272 seconds) |
| 12:55:03 | <merijn> | tomsmeding: That's just because GADTs implicitly include existentials :) |
| 12:55:08 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) |
| 12:55:15 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 12:55:53 | <tomsmeding> | certainly :) |
| 12:56:15 | <merijn> | I personally prefer just writing my existentials as GADTs anyway, more readable that way |
| 12:56:35 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds) |
| 12:56:43 | <merijn> | aww |
| 12:56:53 | <merijn> | GHC 9.0 doesn't have -XNoFieldSelectors yet? |
| 13:02:06 | <aveltras> | with the following |
| 13:02:10 | <aveltras> | https://www.irccloud.com/pastebin/JBELuISb/ |
| 13:02:30 | <aveltras> | is there a way to make the pattern match work to extract valid content from the map ? |
| 13:02:34 | <aveltras> | i may be missing something here |
| 13:02:44 | <aveltras> | the second branch of the match is redundant |
| 13:02:55 | → | midnightmagic joins (~midnightm@185.204.1.185) |
| 13:03:46 | → | frozenErebus joins (~frozenEre@94.128.81.133) |
| 13:04:46 | <tomsmeding> | ij: in your second example ( http://sprunge.us/lxrnaj ), the deletion of XY (1,2) 13 already takes XY (1,3) 14 with it, which is incorrect as far as I can see |
| 13:05:19 | <merijn> | aveltras: The type annotation on line 13 doesn't make sense |
| 13:05:19 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) |
| 13:05:33 | <merijn> | aveltras: You don't get to pick the type of the typerep |
| 13:05:46 | <merijn> | aveltras: You get "whatever happens to be in there" |
| 13:07:08 | <merijn> | aveltras: You probably wanna use == to compare that unknown typerep to whatever you want and then do something |
| 13:08:37 | × | o1lo01ol1o quits (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Remote host closed the connection) |
| 13:09:05 | × | Athas quits (~athas@2a01:7c8:aaac:1cf:5661:9ebf:32e3:d99f) (Quit: ZNC - http://znc.sourceforge.net) |
| 13:09:15 | → | Athas joins (athas@sigkill.dk) |
| 13:09:22 | <merijn> | tbh, my initial response to this test code is "have you considered scrapping all this and *not* doing that?" :p |
| 13:10:14 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) (Ping timeout: 264 seconds) |
| 13:10:29 | <aveltras> | im already scraping something that's much more complicated :p |
| 13:11:35 | → | Saukk joins (~Saukk@83-148-239-3.dynamic.lounea.fi) |
| 13:11:41 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection) |
| 13:15:08 | → | hekkaidekapus_ joins (~tchouri@gateway/tor-sasl/hekkaidekapus) |
| 13:15:37 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 13:17:39 | × | hekkaidekapus quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 268 seconds) |
| 13:17:52 | × | catalin quits (~catalin@82.77.237.60) (Remote host closed the connection) |
| 13:18:19 | → | catalin joins (~catalin@82.77.237.60) |
| 13:18:19 | → | coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) |
| 13:18:50 | <zebrag> | When one say that applicatives are amenable to static analysis. Does that mean that the compiler can help us there? Or does that mean we can do it with pen and paper? |
| 13:19:16 | × | d3od quits (~nickmeno3@78-1-65-250.adsl.net.t-com.hr) (Ping timeout: 240 seconds) |
| 13:19:48 | <zebrag> | (in my case that would be in relation with parsers) |
| 13:21:35 | <merijn> | zebrag: What people mean is this: |
| 13:21:38 | <merijn> | :t (<*>) |
| 13:21:39 | <lambdabot> | Applicative f => f (a -> b) -> f a -> f b |
| 13:21:46 | fendor_ | is now known as fendor |
| 13:21:56 | <merijn> | zebrag: Note how *both* the lest *and* right side of <*> are values of type 'f' |
| 13:22:30 | <merijn> | zebrag: If we consider the type 'f' "a description" of the side effects, this means that we know the exact effects of the left and right hand side of <*> without running anything |
| 13:22:31 | × | hexfive quits (~hexfive@50.35.83.177) (Quit: i must go. my people need me.) |
| 13:22:38 | <merijn> | zebrag: Now consider: |
| 13:22:42 | <merijn> | :t (>>=) |
| 13:22:44 | <lambdabot> | Monad m => m a -> (a -> m b) -> m b |
| 13:23:00 | → | Sheilong joins (uid293653@gateway/web/irccloud.com/x-pxyeupqbquuvaqlz) |
| 13:23:08 | <merijn> | zebrag: Note how the right hand side is a function, which can use arbitrarily complex logic to decide what 'm b' to return |
| 13:23:27 | × | mouseghost quits (~draco@wikipedia/desperek) (Quit: mew wew) |
| 13:23:47 | <zebrag> | (I'm here) |
| 13:23:47 | <merijn> | zebrag: This means that we can't "inspect" the effects of the right hand side without first evaluating that function |
| 13:24:20 | <merijn> | zebrag: But to evaluate that function, we need to *first* get an 'a' to give to it, which we can only obtain by "executing" the effects on the left hand side-first |
| 13:24:36 | <maerwald> | zebrag: this may also be interesing: https://neilmitchell.blogspot.com/2019/10/monads-as-graphs.html |
| 13:25:14 | → | zzxxhhqq joins (722b75b6@114-43-117-182.dynamic-ip.hinet.net) |
| 13:25:24 | → | pfurla joins (~pfurla@ool-182ed2e2.dyn.optonline.net) |
| 13:25:35 | × | berberman quits (~berberman@unaffiliated/berberman) (Quit: ZNC 1.8.2 - https://znc.in) |
| 13:25:45 | <merijn> | zebrag: So, (depending on the actual applicative) <*> can (hypothetically) inspect and combine effects of both the left and right hand side in some meaningful way (like, running things concurrently in IO), which you cannot do with >>= |
| 13:26:06 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 13:27:03 | <merijn> | zebrag: This actually highlight the difference in "power" of Monad and Applicative, with the 'a -> m b' of Monad we can have the exact effect we perform *depend* on the results of previous ones (the 'a'), with Applicative the *effects* are never conditional, only the result value is |
| 13:27:14 | × | seveg quits (~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) (Ping timeout: 265 seconds) |
| 13:28:18 | <zebrag> | merijn: okay, yes, I understand |
| 13:28:24 | <tomsmeding> | you can produce an AST of an entire applicative computation without any functions, whereas an AST of a monadic computation necessarily hides part of the structure behind a lambda |
| 13:28:33 | <zebrag> | maerwald: I'll look into it |
| 13:28:36 | <tomsmeding> | hence monadic computations aren't as amenable to static analysis :) |
| 13:29:06 | <merijn> | zebrag: So the "static analysis" people refer to is the part where you can write an <*> that optimises things using knowledge about effects from "both sides" |
| 13:29:31 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 13:30:01 | <merijn> | Which naturally leads us to Selective Functors ;) |
| 13:30:38 | → | o1lo01ol1o joins (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) |
| 13:31:34 | <merijn> | zebrag: The Selective Functors paper from 2019 discusses the "static analysis" power of Applicative and Monad (and how this leads to the idea of Selective functors), it's an interesting read: https://eprints.ncl.ac.uk/file_store/production/258640/4FF2555F-0AEC-4876-9701-C83A3E5FFF52.pdf |
| 13:34:17 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Ping timeout: 265 seconds) |
| 13:35:00 | <zebrag> | There are very interesting quotes there, by the way: "Free Applicative Functors" https://arxiv.org/pdf/1403.0749.pdf, like this one "an applicative functor is just a functor that knows how to lift functions of arbitrary arities." |
| 13:36:23 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 13:39:57 | → | urodna joins (~urodna@unaffiliated/urodna) |
| 13:41:34 | × | frozenErebus quits (~frozenEre@94.128.81.133) (Quit: leaving) |
| 13:43:54 | → | HenryCH joins (~henry@2001:8e0:2003:e600:c06f:2e7d:9fd5:c220) |
| 13:44:04 | × | catalin quits (~catalin@82.77.237.60) (Quit: Leaving) |
| 13:45:50 | → | pako8128 joins (~pako@dynamic-077-011-087-191.77.11.pool.telefonica.de) |
| 13:47:09 | tomsmeding | realises that you can replace <*> with 'liftedProduct :: f a -> f b -> f (a, b)' without any consequences |
| 13:47:25 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 13:47:35 | <merijn> | define "any" and "consequences" :p |
| 13:47:46 | → | nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net) |
| 13:47:47 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) |
| 13:48:02 | × | pako quits (~pako@dynamic-078-054-103-037.78.54.pool.telefonica.de) (Ping timeout: 256 seconds) |
| 13:48:59 | → | seveg joins (~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) |
| 13:49:27 | → | djellemah joins (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54) |
| 13:50:26 | <tomsmeding> | you can define <*> in terms of liftedProduct and vice-versa |
| 13:50:42 | <tomsmeding> | not talking about the lowly concerns of having to rewrite instances :p |
| 13:51:00 | × | drbean quits (~drbean@TC210-63-209-173.static.apol.com.tw) (Ping timeout: 246 seconds) |
| 13:51:19 | <merijn> | tomsmeding: Performance will probably change too :p |
| 13:51:20 | <tomsmeding> | and this equivalence between <*> and liftedProduct is precisely currying, in zebrag's quote that applicative functors can lift functions of arbitrary arities |
| 13:51:29 | <tomsmeding> | true :p |
| 13:51:46 | <tomsmeding> | well if you immediately apply (uncurry f), then it'll probably be optimised away |
| 13:51:48 | → | f-a joins (~f-a@mi-18-14-238.service.infuturo.it) |
| 13:51:59 | <tomsmeding> | analogously to always using <*> in the form f<$>x<*>y |
| 13:52:39 | × | nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds) |
| 13:55:57 | → | jil joins (~user@45.86.162.6) |
| 13:56:00 | → | carlomagno joins (~cararell@148.87.23.10) |
| 13:56:05 | <jil> | hello |
| 13:59:01 | <jil> | I'm rying to load function stored in different files in ghci. but what I tried up to now throughs an error module 'mail:Main' is defined in multiple files. |
| 13:59:48 | <jil> | I tried, :load file1.hs file2.hs and :load file1.hs :add file2.hs |
| 13:59:49 | <merijn> | jil: Are you loading a file and then loading it again? |
| 14:00:07 | <merijn> | ah, wait, you're loading two files |
| 14:00:22 | ← | f-a parts (~f-a@mi-18-14-238.service.infuturo.it) () |
| 14:00:28 | <merijn> | jil: If you don't have an explicit module name at the top, the compiler assumes/infers "module Main(main)" |
| 14:00:35 | × | Raito_Bezarius quits (~Raito@unaffiliated/raito-bezarius/x-8764578) (Ping timeout: 260 seconds) |
| 14:00:44 | <jil> | ok |
| 14:00:49 | <merijn> | jil: So if neither of your files have a module name it's assuming both are Main and then complains :) |
| 14:02:04 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 14:02:05 | × | raehik1 quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 14:02:37 | <swarmcollective> | Is it possible to `import qualified` in ghci? |
| 14:03:11 | <geekosaur> | yes |
| 14:03:21 | <geekosaur> | but the semantics are different from :load |
| 14:04:59 | <swarmcollective> | The docs say "To make life slightly easier, the GHCi prompt also behaves as if there is an implicit import qualified declaration for every module in every package, and every module currently loaded into GHCi. This behaviour can be disabled with the -fno-implicit-import-qualified flag." However, that is somewhat confusing. |
| 14:05:53 | <swarmcollective> | The next section clarifies: https://downloads.haskell.org/~ghc/8.0.2/docs/html/users_guide/ghci.html#module-and-load |
| 14:06:07 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) |
| 14:06:52 | → | catalin joins (~catalin@82.77.237.60) |
| 14:06:57 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Ping timeout: 272 seconds) |
| 14:07:41 | <catalin> | Hello! I have problems installing hlint via cabal |
| 14:07:52 | <catalin> | I did `cabal install hlint` |
| 14:08:11 | <catalin> | I have a bunch of `/usr/bin/ld.bfd: cannot find -lHSexceptions` |
| 14:08:26 | <merijn> | Which OS? |
| 14:08:32 | <catalin> | Solus Linux |
| 14:09:04 | <merijn> | Never heard of it, do you have any haskell packages installed via the system package manager? |
| 14:09:23 | <catalin> | yes, a lot actually |
| 14:09:40 | <merijn> | oof |
| 14:09:41 | <catalin> | I have cabal, stack, ghc and many others |
| 14:10:08 | <merijn> | Sounds like your package manager has broken your package database |
| 14:10:24 | <merijn> | Leading cabal to think exceptions is installed, but the actual library being missing |
| 14:10:45 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 14:10:49 | <catalin> | oh :( no idea how to regenerate it |
| 14:10:50 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:a5c0:4a76:91ea:a0d6) (Ping timeout: 264 seconds) |
| 14:11:37 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 14:15:07 | <jollygood2> | with parsec, how would I grab all the characters until the last character C in the input? |
| 14:15:48 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds) |
| 14:18:26 | <merijn> | manyTill or something like that |
| 14:18:54 | → | drdee joins (~drdee@93-33-15-26.ip42.fastwebnet.it) |
| 14:19:18 | → | berberman_ joins (~berberman@unaffiliated/berberman) |
| 14:19:19 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 14:19:23 | × | berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 258 seconds) |
| 14:20:08 | <jil> | merijn: I'm not sure on how to declare a module. is it `module Main where ...` |
| 14:21:07 | <geekosaur> | module MyModule [(optionally exports here, otherwise everything is exported)] where |
| 14:21:28 | <geekosaur> | and "MyModule" must match the filename, including case, and start with initial uppercase |
| 14:24:34 | × | Codaraxis quits (Codaraxis@gateway/vpn/mullvad/codaraxis) (Read error: Connection reset by peer) |
| 14:24:36 | × | seveg quits (~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) (Quit: WeeChat 3.0) |
| 14:25:23 | → | seveg joins (~gabriel@188-167-252-202.dynamic.chello.sk) |
| 14:27:25 | → | alx741 joins (~alx741@186.178.110.176) |
| 14:27:44 | <tomsmeding> | jollygood2: until the _last_ character C? That's annoying |
| 14:27:51 | <tomsmeding> | What's your purpose? |
| 14:28:06 | <jollygood2> | I'm rethinking the problem, I can probably do it a different way |
| 14:28:21 | × | alx741 quits (~alx741@186.178.110.176) (Client Quit) |
| 14:29:01 | → | kuribas joins (~user@ptr-25vy0i7o843onuw1s23.18120a2.ip6.access.telenet.be) |
| 14:29:20 | → | obihann joins (~jhann@142.177.168.17) |
| 14:29:24 | <jollygood2> | I'm trying to pass code to my program as an argument, so I'm manually parsing the argument string, instead of using getArgs, so that I don't have to escape " characters |
| 14:30:11 | × | bitmagie quits (~Thunderbi@200116b806b35100a92d8e55454b8ad9.dip.versatel-1u1.de) (Quit: bitmagie) |
| 14:30:26 | <tomsmeding> | jollygood2: you can't see the difference between me invoking your program as ./prog "a" or as ./prog a |
| 14:30:34 | <tomsmeding> | So that won't work I think |
| 14:31:00 | <jollygood2> | this is on windows, using powershell, so it adds several layers of mind fuck :) |
| 14:31:20 | <jollygood2> | good thing is, though, I can get unparsed string passed to my program, with all the quotes |
| 14:31:22 | <tomsmeding> | Ah I see |
| 14:32:20 | × | obihann quits (~jhann@142.177.168.17) (Client Quit) |
| 14:32:41 | <jollygood2> | is there a way to get that in *nix? if possible, I'd like to make my program work there as well |
| 14:33:04 | <tomsmeding> | In general, no, you can't get the command line as entered by the user on a unix-like system |
| 14:33:38 | <geekosaur> | the shell mangles it long before your program gets it |
| 14:33:40 | <tomsmeding> | The shell does lots of stuff, like evaluating command splices (e.g. ./prog $(echo hi)) |
| 14:33:42 | → | obihann joins (~jhann@142.177.168.17) |
| 14:34:34 | × | obihann quits (~jhann@142.177.168.17) (Remote host closed the connection) |
| 14:37:23 | → | frankdmartinez joins (~frankdmar@138.199.52.84) |
| 14:37:35 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 14:38:16 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Ping timeout: 240 seconds) |
| 14:40:40 | → | Codaraxis joins (Codaraxis@gateway/vpn/mullvad/codaraxis) |
| 14:41:27 | <merijn> | Yes, I'll take "cursed question for 500, Alex" |
| 14:41:35 | → | obihann joins (~jhann@142.177.168.17) |
| 14:42:39 | → | m0rphism1 joins (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) |
| 14:43:04 | × | obihann quits (~jhann@142.177.168.17) (Client Quit) |
| 14:44:59 | × | drdee quits (~drdee@93-33-15-26.ip42.fastwebnet.it) (Quit: Leaving) |
| 14:46:09 | × | kini quits (~kini@unaffiliated/kini) (Remote host closed the connection) |
| 14:46:44 | <merijn> | I propose the much better solution of "not doing that" >.> |
| 14:47:01 | <merijn> | If you wanna communicate code/whatever, you're better off doing it via stdin and/or a file anyway |
| 14:47:24 | → | kini joins (~kini@unaffiliated/kini) |
| 14:47:25 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 14:47:46 | → | acarrico joins (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) |
| 14:47:49 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) |
| 14:47:58 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Remote host closed the connection) |
| 14:50:03 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 14:50:48 | <jollygood2> | I was just thinking that myself a couple of minutes ago, maybe I should just pipe stdin to my program. as a bonus, it would double as a repl |
| 14:51:16 | <merijn> | jollygood2: tbh, for a REPL you probably wanna use something like haskeline so you get proper line-editing |
| 14:52:08 | → | futty joins (~futhark@c83-252-75-55.bredband.comhem.se) |
| 14:53:38 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 14:53:59 | → | pera joins (~pera@unaffiliated/pera) |
| 14:55:14 | <futty> | I have been trying to implement a Huffman tree with the help of several modules and I'm a bit overwhelmed by this. I would be grateful if anyone could advice me how to proceed. https://repl.it/join/bwnnsmwu-futhark14 |
| 14:55:38 | <ephemient> | rlwrap is a cheap way to turn something accepting input on stdin into a repl |
| 14:55:52 | <ephemient> | you can get better results by integrating haskeline but it's more work |
| 14:56:42 | → | perdent joins (~perdent@101.175.174.67) |
| 14:56:42 | × | geekosaur quits (ac3a8c42@172.58.140.66) (Ping timeout: 240 seconds) |
| 14:57:57 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 260 seconds) |
| 14:59:03 | <merijn> | ephemient: I switched to using haskeline for my input and it's pretty great, tbh :) |
| 15:00:54 | → | j3r3my joins (~j3r3my@68-73-116-155.lightspeed.rlghnc.sbcglobal.net) |
| 15:02:29 | × | jb55 quits (~jb55@gateway/tor-sasl/jb55) (Ping timeout: 268 seconds) |
| 15:02:52 | × | zzxxhhqq quits (722b75b6@114-43-117-182.dynamic-ip.hinet.net) (Quit: Connection closed) |
| 15:03:40 | → | jb55 joins (~jb55@gateway/tor-sasl/jb55) |
| 15:05:51 | → | geekosaur joins (ac3a8c42@172.58.140.66) |
| 15:06:01 | → | raehik1 joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 15:06:48 | × | jchia1 quits (~jchia@58.32.32.232) (Ping timeout: 256 seconds) |
| 15:06:53 | → | jchia joins (~jchia@218.80.72.201) |
| 15:06:56 | × | conal quits (~conal@66.115.157.58) (Ping timeout: 240 seconds) |
| 15:07:08 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) |
| 15:07:23 | → | star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) |
| 15:09:42 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection) |
| 15:11:31 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) (Ping timeout: 258 seconds) |
| 15:13:09 | × | Saukk quits (~Saukk@83-148-239-3.dynamic.lounea.fi) (Remote host closed the connection) |
| 15:13:10 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 15:14:38 | → | dandart joins (~Thunderbi@home.dandart.co.uk) |
| 15:14:53 | × | coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 15:18:53 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 15:19:08 | × | jb55 quits (~jb55@gateway/tor-sasl/jb55) (Ping timeout: 268 seconds) |
| 15:21:02 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 15:21:08 | → | ClaudiusMaximus joins (~claude@191.123.199.146.dyn.plus.net) |
| 15:21:08 | × | ClaudiusMaximus quits (~claude@191.123.199.146.dyn.plus.net) (Changing host) |
| 15:21:08 | → | ClaudiusMaximus joins (~claude@unaffiliated/claudiusmaximus) |
| 15:21:09 | × | MidAutumnHotaru quits (~MidAutumn@unaffiliated/midautumnhotaru) (Quit: Quit 啾) |
| 15:21:24 | → | jb55 joins (~jb55@gateway/tor-sasl/jb55) |
| 15:21:48 | → | MidAutumnHotaru joins (~MidAutumn@unaffiliated/midautumnhotaru) |
| 15:24:00 | → | conal joins (~conal@66.115.157.58) |
| 15:24:21 | × | finn_elija quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Remote host closed the connection) |
| 15:24:36 | × | MidAutumnHotaru quits (~MidAutumn@unaffiliated/midautumnhotaru) (Client Quit) |
| 15:25:07 | → | MidAutumnHotaru joins (~MidAutumn@unaffiliated/midautumnhotaru) |
| 15:25:27 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Ping timeout: 256 seconds) |
| 15:28:24 | zzz | is now known as dsfdskljflaskdfj |
| 15:28:47 | dsfdskljflaskdfj | is now known as zzz |
| 15:29:07 | × | conal quits (~conal@66.115.157.58) (Quit: Computer has gone to sleep.) |
| 15:34:55 | × | frankdmartinez quits (~frankdmar@138.199.52.84) (Quit: frankdmartinez) |
| 15:35:52 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:590a:2ec1:bea5:f083) |
| 15:36:04 | → | finn_elija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) |
| 15:37:05 | → | mouseghost joins (~draco@87-206-9-185.dynamic.chello.pl) |
| 15:37:05 | × | mouseghost quits (~draco@87-206-9-185.dynamic.chello.pl) (Changing host) |
| 15:37:05 | → | mouseghost joins (~draco@wikipedia/desperek) |
| 15:37:25 | × | hiroaki quits (~hiroaki@2a02:908:4b18:8c40::8d83) (Ping timeout: 272 seconds) |
| 15:39:15 | → | hyperisco joins (~hyperisco@104-195-141-253.cpe.teksavvy.com) |
| 15:43:21 | → | conal_ joins (~conal@209.58.135.97) |
| 15:44:05 | × | futty quits (~futhark@c83-252-75-55.bredband.comhem.se) (Quit: Leaving) |
| 15:48:05 | → | frankdmartinez joins (~frankdmar@138.199.52.84) |
| 15:48:24 | → | Aquazi joins (uid312403@gateway/web/irccloud.com/x-nvhytycrddduwvdg) |
| 15:49:40 | → | juuandyy joins (~juuandyy@90.106.228.121) |
| 15:50:19 | × | juuandyy quits (~juuandyy@90.106.228.121) (Client Quit) |
| 15:50:35 | → | juuandyy joins (~juuandyy@90.106.228.121) |
| 15:51:39 | → | minoru_shiraeesh joins (~shiraeesh@109.166.58.206) |
| 15:53:44 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 15:53:53 | × | mirrorbird quits (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d) (Remote host closed the connection) |
| 15:54:34 | <j2t> | Hi, why does a list have data constructors and a vector doesn't? |
| 15:54:52 | <merijn> | j2t: Vector has data constructors, they're just not publically exported |
| 15:55:03 | × | rdivyanshu quits (uid322626@gateway/web/irccloud.com/x-wrrlvklxxelvmqxz) (Quit: Connection closed for inactivity) |
| 15:55:14 | <merijn> | j2t: All datatypes have constructors, but not every package *exports* those constructors |
| 15:55:25 | → | alx741 joins (~alx741@186.178.110.176) |
| 15:55:28 | <merijn> | Usually to stop users from touching stuff they shouldn't and breaking things |
| 15:56:37 | × | esph quits (~weechat@unaffiliated/esph) (Ping timeout: 256 seconds) |
| 15:56:52 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Remote host closed the connection) |
| 15:57:13 | → | esph joins (~weechat@unaffiliated/esph) |
| 15:58:17 | → | gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh) |
| 15:58:20 | <j2t> | merijn, thank, i see here `data Vector a = Vector {-# UNPACK #-} !Int` part of vector's data type definition. What is the unpack part? |
| 15:58:37 | <jollygood2> | main works fine, but why is main2 throwing that exception, and how would you prevent it if interact didn't exist? https://pastebin.com/jJBc8vuJ |
| 15:58:53 | × | hyperisco quits (~hyperisco@104-195-141-253.cpe.teksavvy.com) (Ping timeout: 256 seconds) |
| 15:58:57 | → | Deide joins (~Deide@217.155.19.23) |
| 15:59:25 | <geekosaur> | a pragma telling ghc not to put the following field in a box. (the field must be strict, hence the ! on it). this is invoking an internal optimization directly |
| 15:59:25 | <ij> | tomsmeding, yup, later noticed it and already added to the bug report |
| 15:59:27 | × | Feuermagier quits (~Feuermagi@213.178.26.41) (Remote host closed the connection) |
| 16:00:15 | <merijn> | j2t: Most data fields are boxed in GHC (that is, pointer indirection to the actual data), unpack makes GHC skip the indirection (which means it can't be lazy) |
| 16:02:53 | <tdammers> | merijn: what about Data.Void.Void? |
| 16:03:33 | <merijn> | tdammers: What about it? |
| 16:04:38 | → | Tario joins (~Tario@201.192.165.173) |
| 16:04:58 | × | toorevitimirp quits (~tooreviti@117.182.180.8) (Remote host closed the connection) |
| 16:05:51 | <j2t> | I hoogle list constructor `:` operator but search results don't show it. |
| 16:06:03 | × | j3r3my quits (~j3r3my@68-73-116-155.lightspeed.rlghnc.sbcglobal.net) (Ping timeout: 265 seconds) |
| 16:06:26 | <fendor> | j2t, you have to put it in parathensis |
| 16:06:29 | <fendor> | @hoogle (:) |
| 16:06:29 | <lambdabot> | Data.Complex (:+) :: a -> a -> Complex a |
| 16:06:29 | <lambdabot> | Data.List.NonEmpty (:|) :: a -> [a] -> NonEmpty a |
| 16:06:29 | <lambdabot> | Data.Type.Equality data a :~: b |
| 16:06:37 | <geekosaur> | also it's wired into the compiler |
| 16:06:48 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 246 seconds) |
| 16:06:57 | <merijn> | j2t: That's because it's built into the compiler |
| 16:07:02 | <geekosaur> | because list has to be special syntax for the [a,b,c] form |
| 16:07:05 | <j2t> | thanks |
| 16:07:14 | × | aveltras quits (uid364989@gateway/web/irccloud.com/x-yvpfkhesmkalxnwm) (Quit: Connection closed for inactivity) |
| 16:07:50 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) |
| 16:08:10 | <xsperry> | :t (:) |
| 16:08:11 | <lambdabot> | a -> [a] -> [a] |
| 16:08:14 | <xsperry> | :i (:) |
| 16:08:31 | <xsperry> | (works in ghc) |
| 16:08:34 | <xsperry> | ghci* |
| 16:09:16 | <geekosaur> | there's a dummy definition somewhere that exists only to provide an info table, as with other compiler built-ins |
| 16:10:59 | <geekosaur> | hoogle doesn't index the primitives/info table definitions, iirc, because its output would be too noisy with odd compiler built-ins with weird types/kinds |
| 16:11:55 | <tdammers> | merijn: you said every datatype has constructors, but Void doesn't |
| 16:11:59 | <catalin> | what is the difference between `doubleMe :: Num a => a -> a` and `doubleMe x = x + x` ? |
| 16:12:04 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) (Ping timeout: 240 seconds) |
| 16:12:11 | <catalin> | Beside the writing of it? |
| 16:12:19 | <merijn> | tdammers: That's recent, it used to have one in the past :p |
| 16:12:24 | <catalin> | the first is the signature? |
| 16:12:24 | <merijn> | tdammers: Also, educational lies :p |
| 16:12:40 | <tdammers> | merijn: well, it does have a type constructor |
| 16:12:46 | <merijn> | catalin: The first is the type signature, the second is the implementation |
| 16:13:00 | <catalin> | merijn: thank you |
| 16:17:50 | → | guest7682358928 joins (2de85cb9@gateway/web/cgi-irc/kiwiirc.com/ip.45.232.92.185) |
| 16:28:35 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:590a:2ec1:bea5:f083) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 16:28:43 | × | geekosaur quits (ac3a8c42@172.58.140.66) (Quit: Connection closed) |
| 16:29:20 | × | earldouglas quits (~james@unaffiliated/jamestastic) (Quit: Lost terminal) |
| 16:30:24 | → | earldouglas joins (~james@unaffiliated/jamestastic) |
| 16:31:40 | × | juuandyy quits (~juuandyy@90.106.228.121) (Ping timeout: 265 seconds) |
| 16:31:48 | → | archaephyrryx joins (~archaephy@straasha.imrryr.org) |
| 16:32:07 | <swarmcollective> | So far, I've used Web.Scotty for web api, but only for small projects (https://github.com/calledtoconstruct/kata-checkout-order-total/blob/master/haskell/item-api/Main.hs) Are there newer / better libraries? |
| 16:37:25 | × | catalin quits (~catalin@82.77.237.60) (Ping timeout: 256 seconds) |
| 16:39:16 | <swarmcollective> | (better is too subjective, but I'm interested in suggestions) |
| 16:39:40 | → | Jd007 joins (~Jd007@162.156.11.151) |
| 16:43:37 | <ph88^> | does anyone know how to debug root cause of hGetChar: end of file ? i already tried to do a profiling build with exceptions turned on https://bpa.st/XZ7YS |
| 16:44:16 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 16:45:42 | <kuribas> | ph88^: is this hie? |
| 16:46:18 | × | xelxebar quits (~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection) |
| 16:46:29 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:590a:2ec1:bea5:f083) |
| 16:46:37 | → | xelxebar joins (~xelxebar@gateway/tor-sasl/xelxebar) |
| 16:46:45 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 16:46:48 | → | catalin joins (~catalin@82.77.237.60) |
| 16:47:38 | → | juuandyy joins (~juuandyy@90.106.228.121) |
| 16:48:17 | × | jrqc quits (~rofl@96.78.87.197) (Read error: Connection reset by peer) |
| 16:48:38 | → | jrqc joins (~rofl@96.78.87.197) |
| 16:50:21 | → | rndmprsn joins (~rndmprsn@c-69-139-47-227.hsd1.fl.comcast.net) |
| 16:51:05 | <jollygood2> | <jollygood2> main works fine, but why is main2 throwing that exception, and how would you prevent it if interact didn't exist? https://pastebin.com/jJBc8vuJ |
| 16:53:51 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 16:54:23 | <merijn> | jollygood2: When you close stdin reads from stdin hit "end of file" |
| 16:54:55 | <merijn> | jollygood2: When you try and get a line from a file that has no more lines, what else can getLine do? |
| 16:54:59 | × | earldouglas quits (~james@unaffiliated/jamestastic) (Quit: leaving) |
| 16:55:16 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 16:55:44 | <merijn> | jollygood2: You'll want to use try or catch from Control.Exception to catch the IOError and use https://hackage.haskell.org/package/base-4.14.1.0/docs/System-IO-Error.html#v:isEOFError to check for EOF |
| 16:56:14 | <merijn> | jollygood2: Alternatively, you can check for EOF before every read |
| 16:56:26 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 16:56:57 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 16:57:03 | → | earldouglas joins (~james@unaffiliated/jamestastic) |
| 16:58:49 | × | rajivr quits (uid269651@gateway/web/irccloud.com/x-szibnrsmlohyyqpj) (Quit: Connection closed for inactivity) |
| 16:59:43 | → | Franciman joins (~francesco@host-95-235-155-82.retail.telecomitalia.it) |
| 17:00:46 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds) |
| 17:01:31 | <rndmprsn> | Anyone know any good URL/URI parsing libraries? I'm looking to parse something like ftp://username:password@example.com/home/foo into (Ftp Username Password Host Path) or similar |
| 17:01:57 | <rndmprsn> | I can always write my own but I'm wondering if there's an existing tool |
| 17:02:27 | <merijn> | Wasn't there one split of from network? |
| 17:02:53 | <merijn> | @hackage network-uri |
| 17:02:53 | <lambdabot> | https://hackage.haskell.org/package/network-uri |
| 17:04:57 | <rndmprsn> | Oh, yeah there's parseURI then (uriScheme, uriAuthority, uriPath), ty |
| 17:06:08 | → | DavidEichmann joins (~david@234.109.45.217.dyn.plus.net) |
| 17:07:27 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds) |
| 17:08:07 | → | coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) |
| 17:08:11 | × | coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Remote host closed the connection) |
| 17:08:20 | <ph88^> | kuribas, what do you mean hie ? |
| 17:08:22 | → | ahri joins (~ahri@178.209.40.84) |
| 17:08:40 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) |
| 17:10:13 | → | abhixec joins (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) |
| 17:10:17 | × | juuandyy quits (~juuandyy@90.106.228.121) (Ping timeout: 256 seconds) |
| 17:11:28 | <swarmcollective> | Haskell IDE Engine (HIE) and it's newer sibling Haskell Language Server (HLS) assist the IDE with syntax highlighting, etc... |
| 17:11:36 | × | revprez_stg quits (~revprez_s@pool-108-49-213-40.bstnma.fios.verizon.net) (Quit: Lost terminal) |
| 17:13:01 | → | revprez_stg joins (~revprez_s@pool-108-49-213-40.bstnma.fios.verizon.net) |
| 17:13:02 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) (Ping timeout: 258 seconds) |
| 17:15:25 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 17:16:18 | × | xwvvvvwx quits (xwvvvvwx@gateway/vpn/mullvad/xwvvvvwx) (Read error: Connection reset by peer) |
| 17:16:45 | → | xwvvvvwx joins (xwvvvvwx@gateway/vpn/mullvad/xwvvvvwx) |
| 17:17:02 | × | xwvvvvwx quits (xwvvvvwx@gateway/vpn/mullvad/xwvvvvwx) (Remote host closed the connection) |
| 17:17:31 | <ph88^> | kuribas, swarmcollective it's this program https://github.com/wz1000/HieDb |
| 17:18:27 | → | elliott__ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) |
| 17:19:15 | → | xwvvvvwx joins (xwvvvvwx@gateway/vpn/mullvad/xwvvvvwx) |
| 17:19:17 | <swarmcollective> | ph88^ thank you. |
| 17:19:56 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 258 seconds) |
| 17:20:29 | <ph88^> | don't think me, it's wz1000 :P |
| 17:20:32 | <ph88^> | thank * |
| 17:22:18 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 17:30:27 | × | jrqc quits (~rofl@96.78.87.197) (Read error: Connection reset by peer) |
| 17:30:48 | → | jrqc joins (~rofl@96.78.87.197) |
| 17:32:36 | → | hiroaki joins (~hiroaki@2a02:908:4b18:8c40::b730) |
| 17:34:44 | <shapr> | swarmcollective: we use servant at work for a 300,000 line codebase that's a bunch of different webapps |
| 17:35:00 | <shapr> | I use scotty for my small personal projects, but I'll likely switch to servant |
| 17:35:23 | → | geekosaur joins (82650c7a@130.101.12.122) |
| 17:37:41 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 17:38:05 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 17:38:18 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313) |
| 17:38:33 | × | rndmprsn quits (~rndmprsn@c-69-139-47-227.hsd1.fl.comcast.net) (Quit: WeeChat 3.0) |
| 17:39:16 | × | pera quits (~pera@unaffiliated/pera) (Ping timeout: 240 seconds) |
| 17:39:47 | × | earldouglas quits (~james@unaffiliated/jamestastic) (Quit: leaving) |
| 17:40:08 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313) (Remote host closed the connection) |
| 17:40:48 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 17:45:22 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 260 seconds) |
| 17:47:24 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 17:47:47 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) |
| 17:52:09 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
| 17:52:34 | × | midnightmagic quits (~midnightm@185.204.1.185) (Disconnected by services) |
| 17:53:11 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 17:56:37 | × | dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection) |
| 17:58:05 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 17:59:02 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:00:44 | → | dnlkrgr joins (~dnlkrgr@HSI-KBW-046-005-005-235.hsi8.kabel-badenwuerttemberg.de) |
| 18:00:55 | → | pera joins (~pera@unaffiliated/pera) |
| 18:01:36 | × | conal_ quits (~conal@209.58.135.97) (Ping timeout: 246 seconds) |
| 18:02:32 | × | Guest12658 quits (~textual@mskresolve-a.mskcc.org) (Quit: Textual IRC Client: www.textualapp.com) |
| 18:02:48 | → | rayyyy joins (~nanoz@gateway/tor-sasl/nanoz) |
| 18:03:14 | × | j2t quits (~j2t@84.122.202.215.dyn.user.ono.com) (Remote host closed the connection) |
| 18:03:19 | → | Lycurgus joins (~niemand@cpe-45-46-139-165.buffalo.res.rr.com) |
| 18:03:37 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 18:03:40 | → | j2t joins (~j2t@84.122.202.215.dyn.user.ono.com) |
| 18:03:52 | → | hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-kqbirvayummddixr) |
| 18:04:01 | × | Lycurgus quits (~niemand@cpe-45-46-139-165.buffalo.res.rr.com) (Client Quit) |
| 18:04:28 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 18:05:23 | <ij> | can I fold/ tuples? |
| 18:05:24 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:05:41 | <ij> | or iterate over them |
| 18:06:49 | <c_wraith> | what would the type of that be? |
| 18:07:26 | <monochrom> | How big is your tuple such that you have to ask? |
| 18:07:51 | <ij> | c_wraith, in this case, (a,a,a,a). monochrom, not big, fair enough. :) |
| 18:08:01 | <ij> | I just thought maybe it exists already |
| 18:08:23 | <c_wraith> | that's not the type of any iteration |
| 18:09:06 | <monochrom> | You can write your own fold, whatever it means. |
| 18:09:09 | <ij> | sorry, (a -> a) -> (a,a,a,a) -> a. I was trying to say it would only work for the same typed elements |
| 18:09:13 | <ij> | monochrom, guess so |
| 18:09:23 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) |
| 18:10:25 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 18:10:31 | <swarmcollective> | shapr, thank you. I will look at servant. Much appreciated. |
| 18:10:51 | → | jungnam joins (~jungnam@s91904426.blix.com) |
| 18:11:18 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:11:30 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 18:13:18 | <c_wraith> | > foldl1Of' each (+) (1,2,3,4) -- ij, as always, lens can do if only you pay a couple points of sanity |
| 18:13:20 | <lambdabot> | 10 |
| 18:13:57 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) (Ping timeout: 260 seconds) |
| 18:14:15 | <ij> | I remember seeing something like it in lens, but I think it was called "for" previously or I'm misremembering |
| 18:14:42 | × | catalin quits (~catalin@82.77.237.60) (Remote host closed the connection) |
| 18:14:55 | <hololeap> | there was a package that converted to/from (for instance) (a,a,a,a) <-> Finite 4 a (or something like that) |
| 18:15:04 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 18:15:45 | <hololeap> | not Finite, but some sort of list with a size tag at the type level... |
| 18:17:21 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Quit: Reconnecting) |
| 18:17:29 | → | comerijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:17:56 | <hololeap> | @hackage indexed-list-literals |
| 18:17:56 | <lambdabot> | https://hackage.haskell.org/package/indexed-list-literals |
| 18:18:52 | <hololeap> | not quite how i described it, but close enough |
| 18:20:31 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 18:22:19 | × | Aquazi quits (uid312403@gateway/web/irccloud.com/x-nvhytycrddduwvdg) (Quit: Connection closed for inactivity) |
| 18:22:19 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 18:22:55 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 18:23:00 | × | HenryCH quits (~henry@2001:8e0:2003:e600:c06f:2e7d:9fd5:c220) () |
| 18:24:16 | × | ahri quits (~ahri@178.209.40.84) (Quit: The Lounge - https://thelounge.chat) |
| 18:24:37 | ← | zmagii parts (~zmagii@unaffiliated/zmagii) ("ERC (IRC client for Emacs 26.3)") |
| 18:25:04 | → | ahri joins (~ahri@178.209.40.84) |
| 18:27:38 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 264 seconds) |
| 18:29:30 | × | dolio quits (~dolio@haskell/developer/dolio) (Quit: ZNC 1.8.2 - https://znc.in) |
| 18:29:35 | → | fweht joins (uid404746@gateway/web/irccloud.com/x-wkjpjnsyrlwutlcg) |
| 18:31:26 | <fweht> | can someone explain to me the wildcard(?) notation in the type signatures from the ramda (js framework) documentation? |
| 18:31:36 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 18:31:41 | <monochrom> | Wrong channel? |
| 18:31:52 | <fweht> | whats the difference between a → (* → a) (alawys in ramda) and a -> b -> a (const in haskell)? |
| 18:32:19 | <comerijn> | That sounds like a question for people involved in that framework? |
| 18:32:19 | <c_wraith> | who knows? this isn't a ramda channel |
| 18:32:38 | <fweht> | sorry |
| 18:33:38 | → | usr25 joins (~usr25@unaffiliated/usr25) |
| 18:33:47 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 18:34:18 | × | thunderrd quits (~thunderrd@183.182.115.7) (Remote host closed the connection) |
| 18:34:19 | → | Alleria joins (~textual@2603-7000-3040-0000-8d65-d0da-7585-2394.res6.spectrum.com) |
| 18:34:21 | × | raym quits (~ray@45.64.220.139) (Quit: leaving) |
| 18:34:37 | → | raym joins (~ray@45.64.220.139) |
| 18:34:42 | Alleria | is now known as Guest79099 |
| 18:35:27 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313) |
| 18:36:04 | <ij> | if I pass a value from an unboxed array to another function it will get boxed (if so, always)? what if I INLINE that function? or is that not easily answerable? |
| 18:36:15 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 246 seconds) |
| 18:37:00 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313) (Remote host closed the connection) |
| 18:37:39 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 18:37:53 | <monochrom> | I think you should invest in learning core, cmm, and asm. |
| 18:38:18 | × | Heffalump quits (~ganesh@urchin.earth.li) (Remote host closed the connection) |
| 18:38:27 | <monochrom> | Because -ddump-prep -ddump-opt-cmm -ddump-asm will answer all your questions. |
| 18:38:38 | <ij> | I know what cmm refers to and I know asm, but not in-depth. What's core? |
| 18:38:58 | <ij> | I was wondering whether there's some intermediate format I could take a look at. |
| 18:39:08 | <comerijn> | ij: Core :p |
| 18:39:26 | <ij> | ok, found it |
| 18:39:43 | × | ahri quits (~ahri@178.209.40.84) (Quit: The Lounge - https://thelounge.chat) |
| 18:39:57 | <monochrom> | https://youtu.be/uR_VzYxvbxg is a good start. (But only a start.) |
| 18:40:29 | <ij> | sounds interesting, I hope I find the time for it |
| 18:40:45 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Ping timeout: 264 seconds) |
| 18:40:46 | → | ahri joins (~ahri@178.209.40.84) |
| 18:40:49 | <ij> | thank you |
| 18:41:09 | × | frankdmartinez quits (~frankdmar@138.199.52.84) (Quit: frankdmartinez) |
| 18:42:32 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 260 seconds) |
| 18:43:27 | → | coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) |
| 18:46:40 | × | elliott__ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 256 seconds) |
| 18:48:15 | × | LKoen quits (~LKoen@252.248.88.92.rev.sfr.net) (Remote host closed the connection) |
| 18:48:40 | <ij> | > let deleteGet = alterF (\a -> (a, Nothing)) () in deleteGet (M.fromList [((), 1)]) |
| 18:48:41 | <lambdabot> | error: |
| 18:48:41 | <lambdabot> | • Variable not in scope: |
| 18:48:41 | <lambdabot> | alterF :: (a1 -> (a1, Maybe a2)) -> () -> t1 |
| 18:48:46 | <ij> | > let deleteGet = M.alterF (\a -> (a, Nothing)) () in deleteGet (M.fromList [((), 1)]) |
| 18:48:48 | <lambdabot> | (Just 1,fromList []) |
| 18:49:40 | × | Guest79099 quits (~textual@2603-7000-3040-0000-8d65-d0da-7585-2394.res6.spectrum.com) (Quit: Textual IRC Client: www.textualapp.com) |
| 18:53:09 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 18:53:25 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 18:54:25 | × | alx741 quits (~alx741@186.178.110.176) (Ping timeout: 240 seconds) |
| 18:54:43 | → | tsrt^ joins (tsrt@ip98-184-89-2.mc.at.cox.net) |
| 18:57:32 | × | nbloomf quits (~nbloomf@2600:1700:ad14:3020:590a:2ec1:bea5:f083) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 18:58:57 | → | conal joins (~conal@64.71.133.70) |
| 18:59:04 | <ij> | :t let deleteGetInt = M.alterF (\a -> (fold $ Sum <$> a, Nothing)); sumKeys = foldMap' deleteGetInt in sumKeys -- what a nice function |
| 18:59:06 | <lambdabot> | (Foldable t, Num a, Ord k) => t k -> M.Map k a -> (Sum a, M.Map k a) |
| 19:00:47 | × | raehik1 quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
| 19:03:28 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 19:03:38 | × | berberman_ quits (~berberman@unaffiliated/berberman) (Ping timeout: 264 seconds) |
| 19:03:41 | <shapr> | Anyone using Haskell to talk to serial ports? I'm curious if serialport is as cross-platform as it claims? |
| 19:08:36 | → | alx741 joins (~alx741@181.196.69.34) |
| 19:09:25 | × | Rudd0 quits (~Rudd0@185.189.115.108) (Ping timeout: 240 seconds) |
| 19:10:07 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) |
| 19:10:58 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 19:11:23 | <ephemient> | not using it, but looking at the source, it supports POSIX (using tty_ioctl) and Windows (GetCommState etc.) |
| 19:11:44 | <ephemient> | anything else you're concerned about being portable to? |
| 19:14:25 | × | Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 240 seconds) |
| 19:14:26 | <shapr> | ephemient: I only need it on Linux and Mac |
| 19:14:37 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) (Ping timeout: 260 seconds) |
| 19:14:45 | <shapr> | Hopefully POSIX means it'll work on both of those. |
| 19:14:49 | <shapr> | time to find out! |
| 19:16:41 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 19:17:59 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 19:18:40 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 19:19:47 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 19:22:48 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 246 seconds) |
| 19:22:57 | → | Lord_of_Life joins (~Lord@unaffiliated/lord-of-life/x-0885362) |
| 19:24:00 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection) |
| 19:24:38 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 264 seconds) |
| 19:26:04 | → | acidjnk_new joins (~acidjnk@p200300d0c722c40898344eac4ba1ad37.dip0.t-ipconnect.de) |
| 19:27:17 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 19:31:28 | × | coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Ping timeout: 265 seconds) |
| 19:32:16 | <comerijn> | Or it doesn't work on either, but in slightly different ways! :p |
| 19:32:29 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 272 seconds) |
| 19:33:54 | → | justan0theruser joins (~justanoth@unaffiliated/justanotheruser) |
| 19:34:28 | → | kritzefitz joins (~kritzefit@212.86.56.80) |
| 19:36:24 | × | justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 258 seconds) |
| 19:39:02 | <shapr> | I love the new feature in haskell-language-server where it creates a skeleton Show instances for a type, then one more click creates a pattern match for the constructors. |
| 19:39:07 | → | RusAlex joins (~Chel@unaffiliated/rusalex) |
| 19:39:30 | <Uniaika> | shapr: I would love to be able to trigger that from neovim ;_; |
| 19:39:49 | <shapr> | I think the same features work from some flavor of vim? |
| 19:40:01 | <shapr> | I'm not a vim user, I can't help with that :-( |
| 19:40:17 | <Uniaika> | :) |
| 19:40:19 | <shapr> | but I know some of my coworkers do use haskell-language-server inside some flavor of vim. |
| 19:41:21 | × | RusAlex_ quits (~Chel@APN-123-255-118-gprs.simobil.net) (Ping timeout: 246 seconds) |
| 19:45:19 | × | dandart quits (~Thunderbi@home.dandart.co.uk) (Quit: dandart) |
| 19:46:05 | → | albert_99 joins (~Albert@2a02:8108:1100:16d8:3dd1:7e49:5b8f:1c8d) |
| 19:46:56 | → | gioyik joins (~gioyik@gateway/tor-sasl/gioyik) |
| 19:47:25 | → | quinn joins (~quinn@c-73-223-224-163.hsd1.ca.comcast.net) |
| 19:49:17 | → | dolio joins (~dolio@haskell/developer/dolio) |
| 19:49:58 | <ph88^> | is there any way to see what is new in a new stackage LTS release ? |
| 19:50:38 | × | dolio quits (~dolio@haskell/developer/dolio) (Client Quit) |
| 19:51:24 | → | dolio joins (~dolio@haskell/developer/dolio) |
| 19:51:45 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 19:52:15 | → | cheater joins (~user@unaffiliated/cheater) |
| 19:53:56 | × | Tario quits (~Tario@201.192.165.173) (Ping timeout: 240 seconds) |
| 19:54:13 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 19:55:05 | × | abhixec quits (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Read error: Connection reset by peer) |
| 19:55:35 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Remote host closed the connection) |
| 19:58:00 | <koz_> | maerwald: I had 'ghcup compile ghc -v 8.10.4 -b 8.10.3' blow up on me due to a problem with autoreconf. |
| 19:58:17 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 19:58:17 | <koz_> | Do you want anything besides the ghcup log? |
| 20:04:00 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds) |
| 20:06:21 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 20:07:50 | → | mirrorbird joins (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d) |
| 20:10:45 | × | ixaxaar quits (~ixaxaar@49.207.210.215) (Ping timeout: 246 seconds) |
| 20:10:50 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) |
| 20:13:44 | <ij> | ski, tomsmeding, it was indeed a bug in pomaps |
| 20:15:38 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) (Ping timeout: 264 seconds) |
| 20:16:01 | <tomsmeding> | Fortunately :) |
| 20:16:10 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 20:16:25 | <ij> | https://github.com/sgraf812/pomaps/issues/3 |
| 20:19:22 | × | geekosaur quits (82650c7a@130.101.12.122) (Ping timeout: 240 seconds) |
| 20:21:04 | → | dandart joins (~Thunderbi@home.dandart.co.uk) |
| 20:22:31 | × | j2t quits (~j2t@84.122.202.215.dyn.user.ono.com) (Ping timeout: 272 seconds) |
| 20:23:31 | → | Guest_36 joins (5f5d26f2@a95-93-38-242.cpe.netcabo.pt) |
| 20:25:51 | × | Guest_36 quits (5f5d26f2@a95-93-38-242.cpe.netcabo.pt) (Client Quit) |
| 20:26:19 | <tomsmeding> | where is the hackagebot announcement :p |
| 20:26:50 | <sm[m]> | ph88^: isn't there a diff link somewhere on stackage.org ? |
| 20:27:04 | <ij> | tomsmeding, I haven't seen any today |
| 20:27:27 | <sm[m]> | it announces when it's in the mood |
| 20:27:52 | <tomsmeding> | earlier it was quite punctual, but as ij said it's been quiet today |
| 20:28:07 | <ph88^> | sm[m], eh ye i guess it would be possible to find a diff somewhere .. though not the same as a proper changelog :P |
| 20:29:11 | → | hexagenic joins (~mattias@2001:2002:51e0:74c9:5098:c4b6:1b73:7815) |
| 20:29:15 | <sm[m]> | I don't mean literally a diff, I seem to remember some kind of web page |
| 20:29:56 | × | rayyyy quits (~nanoz@gateway/tor-sasl/nanoz) (Ping timeout: 268 seconds) |
| 20:30:39 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 20:30:55 | × | L1Cafe quits (~L1Cafe@kydara.com) (Remote host closed the connection) |
| 20:31:19 | × | dandart quits (~Thunderbi@home.dandart.co.uk) (Quit: dandart) |
| 20:32:27 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection) |
| 20:33:22 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 20:33:28 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 20:34:33 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 20:34:34 | → | abhixec joins (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) |
| 20:37:44 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 240 seconds) |
| 20:37:48 | → | Tario joins (~Tario@201.192.165.173) |
| 20:38:06 | → | geekosaur joins (82650c7a@130.101.12.122) |
| 20:39:24 | → | hidedagger joins (~nate@unaffiliated/hidedagger) |
| 20:40:55 | → | francesco_ joins (~francesco@host-82-49-79-189.retail.telecomitalia.it) |
| 20:41:31 | × | L1Cafe quits (~L1Cafe@kydara.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 20:41:54 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 20:41:54 | × | L1Cafe quits (~L1Cafe@kydara.com) (Excess Flood) |
| 20:42:05 | × | albert_99 quits (~Albert@2a02:8108:1100:16d8:3dd1:7e49:5b8f:1c8d) (Ping timeout: 246 seconds) |
| 20:42:37 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 20:43:09 | × | Franciman quits (~francesco@host-95-235-155-82.retail.telecomitalia.it) (Ping timeout: 264 seconds) |
| 20:44:55 | × | L1Cafe quits (~L1Cafe@kydara.com) (Excess Flood) |
| 20:45:43 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 20:45:43 | × | L1Cafe quits (~L1Cafe@kydara.com) (Excess Flood) |
| 20:47:43 | francesco_ | is now known as Franciman |
| 20:47:43 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 20:47:43 | × | L1Cafe quits (~L1Cafe@kydara.com) (Excess Flood) |
| 20:49:22 | → | albert_99 joins (~Albert@2a02:8108:1100:16d8:3dd1:7e49:5b8f:1c8d) |
| 20:49:41 | × | geekosaur quits (82650c7a@130.101.12.122) (Quit: Ping timeout (120 seconds)) |
| 20:49:44 | × | natechan quits (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Quit: WeeChat 2.9) |
| 20:49:45 | × | Anandamide quits (49a90352@c-73-169-3-82.hsd1.co.comcast.net) (Quit: Ping timeout (120 seconds)) |
| 20:49:57 | → | geekosaur joins (82650c7a@130.101.12.122) |
| 20:51:34 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 20:52:29 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 20:53:59 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 20:53:59 | × | L1Cafe quits (~L1Cafe@kydara.com) (Excess Flood) |
| 20:54:55 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 20:56:59 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection) |
| 20:58:55 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 20:59:26 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 264 seconds) |
| 20:59:45 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 246 seconds) |
| 20:59:58 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 21:05:10 | × | L1Cafe quits (~L1Cafe@kydara.com) (Excess Flood) |
| 21:06:02 | × | danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 264 seconds) |
| 21:07:37 | → | mrArkwright joins (~mrArkwrig@2001:9e8:6068:7900:47d:3ad4:5aa0:1333) |
| 21:07:59 | × | Sheilong quits (uid293653@gateway/web/irccloud.com/x-pxyeupqbquuvaqlz) () |
| 21:08:24 | × | acidjnk_new quits (~acidjnk@p200300d0c722c40898344eac4ba1ad37.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 21:09:11 | × | mrArkwright quits (~mrArkwrig@2001:9e8:6068:7900:47d:3ad4:5aa0:1333) (Client Quit) |
| 21:10:13 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 21:10:31 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 21:11:05 | → | mrArkwright joins (~mrArkwrig@2001:9e8:6068:7900:47d:3ad4:5aa0:1333) |
| 21:11:37 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) |
| 21:12:24 | × | mrArkwright quits (~mrArkwrig@2001:9e8:6068:7900:47d:3ad4:5aa0:1333) (Client Quit) |
| 21:12:41 | × | jb55 quits (~jb55@gateway/tor-sasl/jb55) (Remote host closed the connection) |
| 21:13:09 | → | jb55 joins (~jb55@gateway/tor-sasl/jb55) |
| 21:15:05 | → | Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net) |
| 21:15:37 | <ij> | any theoretical gains I get with POSet (because element deletion works unlike in Set) are negated by the performance of POSet :) well, it was worth a shot |
| 21:15:46 | → | coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) |
| 21:15:50 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 21:16:50 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) (Ping timeout: 264 seconds) |
| 21:17:07 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 21:18:14 | → | tachylyte joins (~tachylyte@host86-132-250-227.range86-132.btcentralplus.com) |
| 21:19:11 | × | omnitrogen quits (~omnitroge@vps-c9700282.vps.ovh.net) (Read error: Connection reset by peer) |
| 21:19:47 | → | jneira joins (501ca940@gateway/web/cgi-irc/kiwiirc.com/ip.80.28.169.64) |
| 21:20:26 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 21:20:26 | → | omnitrogen joins (~omnitroge@vps-c9700282.vps.ovh.net) |
| 21:21:16 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds) |
| 21:21:56 | → | son0p joins (~son0p@181.136.122.143) |
| 21:22:48 | × | kuribas quits (~user@ptr-25vy0i7o843onuw1s23.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3)) |
| 21:23:36 | × | alx741 quits (~alx741@181.196.69.34) (Quit: alx741) |
| 21:23:58 | → | j3r3my joins (~j3r3my@68-73-116-155.lightspeed.rlghnc.sbcglobal.net) |
| 21:25:32 | × | kritzefitz quits (~kritzefit@212.86.56.80) (Remote host closed the connection) |
| 21:26:33 | → | danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) |
| 21:28:42 | → | machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 21:28:58 | → | ep1ctetus joins (~epictetus@ip72-194-215-136.sb.sd.cox.net) |
| 21:30:38 | <shapr> | ephemient: I got it working https://github.com/shapr/bloohm |
| 21:31:59 | <ephemient> | 👍 |
| 21:32:48 | <ephemient> | I guess you have to use different device nodes on Linux vs macos (/dev/ttyUSB0 vs /dev/uc.usbserial or something), but that's outside of your program so it's all good :) |
| 21:33:24 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 21:33:28 | × | pera quits (~pera@unaffiliated/pera) (Ping timeout: 272 seconds) |
| 21:33:34 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Remote host closed the connection) |
| 21:35:56 | <maerwald> | koz_: lemme try |
| 21:36:13 | → | pera joins (~pera@unaffiliated/pera) |
| 21:36:58 | <shapr> | ephemient: yeah, I'll try this on my work mac tomorrow, see how it goes. |
| 21:37:20 | <shapr> | The library says the handle interface is experimental, I may need to switch to the stable interface. |
| 21:38:36 | <maerwald> | koz_: It's at ghc-make stage |
| 21:38:41 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds) |
| 21:38:42 | <maerwald> | so I'm suspecting autoconft succeeded? |
| 21:39:53 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 21:40:43 | <koz_> | maerwald: https://paste.tomsmeding.com/BpTZCJpJ <-- short part |
| 21:40:48 | <koz_> | I'll beam you the whole log momentarily. |
| 21:42:35 | <koz_> | What's a good way to get you the whole ghc-make.log? |
| 21:42:38 | <koz_> | It's too big for a paste. |
| 21:43:09 | <Uniaika> | koz_: gist it? |
| 21:43:17 | <Uniaika> | you can upload a file directly |
| 21:43:53 | <koz_> | maerwald: https://gist.github.com/kozross/9b5dd81a461ab5cae818b83e4853c14c |
| 21:44:15 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 21:44:28 | → | conal joins (~conal@64.71.133.70) |
| 21:46:33 | <tomsmeding> | koz_: sorry for the paste limit lol the VPS has a small disk |
| 21:46:50 | <koz_> | tomsmeding: No need to apologize. |
| 21:47:10 | <koz_> | I understand that there's no cloud, only other people's computers, and someone's gotta pay for them. |
| 21:47:46 | <tomsmeding> | <3 |
| 21:49:10 | × | L1Cafe quits (~L1Cafe@kydara.com) (Remote host closed the connection) |
| 21:49:28 | → | kam1 joins (~kam1@5.126.18.81) |
| 21:50:57 | × | comerijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 21:51:15 | × | coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 21:53:28 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 21:54:34 | × | Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection) |
| 21:56:06 | → | elliott__ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) |
| 21:57:09 | × | dolio quits (~dolio@haskell/developer/dolio) (Ping timeout: 246 seconds) |
| 21:57:30 | × | xelxebar quits (~xelxebar@gateway/tor-sasl/xelxebar) (Ping timeout: 268 seconds) |
| 21:58:58 | → | xelxebar joins (~xelxebar@gateway/tor-sasl/xelxebar) |
| 21:59:38 | × | L1Cafe quits (~L1Cafe@kydara.com) (Remote host closed the connection) |
| 21:59:54 | → | fosterite joins (~fosterite@2600:6c46:7800:fecf:28ef:874a:4030:fb98) |
| 22:01:09 | × | Lowl3v3l quits (~Lowl3v3l@dslb-002-203-233-121.002.203.pools.vodafone-ip.de) (Ping timeout: 264 seconds) |
| 22:01:24 | → | L1Cafe joins (~L1Cafe@kydara.com) |
| 22:01:56 | → | dolio joins (~dolio@haskell/developer/dolio) |
| 22:02:13 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:d1:9147:9730:b8de) |
| 22:05:12 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving) |
| 22:05:14 | → | Rudd0 joins (~Rudd0@185.189.115.103) |
| 22:05:48 | × | jollygood2 quits (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout)) |
| 22:05:51 | × | albert_99 quits (~Albert@2a02:8108:1100:16d8:3dd1:7e49:5b8f:1c8d) (Quit: WeeChat 3.0) |
| 22:09:21 | × | fweht quits (uid404746@gateway/web/irccloud.com/x-wkjpjnsyrlwutlcg) (Quit: Connection closed for inactivity) |
| 22:09:38 | × | hexagenic quits (~mattias@2001:2002:51e0:74c9:5098:c4b6:1b73:7815) (Quit: WeeChat 1.9.1) |
| 22:10:36 | × | geekosaur quits (82650c7a@130.101.12.122) (Quit: Connection closed) |
| 22:10:38 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 22:11:42 | → | elliott_ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) |
| 22:13:00 | × | L1Cafe quits (~L1Cafe@kydara.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 22:14:06 | × | j3r3my quits (~j3r3my@68-73-116-155.lightspeed.rlghnc.sbcglobal.net) (Read error: Connection reset by peer) |
| 22:15:47 | × | danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds) |
| 22:16:57 | × | cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection) |
| 22:17:39 | × | elliott_ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Quit: WeeChat 3.0) |
| 22:17:44 | → | justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311) |
| 22:20:00 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 22:20:23 | <justsomeguy> | Sometime I see the phrase "algebra" used to describe typeclasses, and I'm a little confused by it. Does an algebra mean a single operation and the set it operates on, or a collection of operations and the set they operate on? Also, do algebras need to conform to laws (or properties), or is that not a requirement to call something an algebra? |
| 22:20:56 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 22:21:34 | justsomeguy | tried reading about it on wikipedia but the math jargon only confused him more. |
| 22:22:07 | × | mirrorbird quits (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d) (Ping timeout: 272 seconds) |
| 22:23:08 | → | cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt) |
| 22:23:31 | <pjb> | justsomeguy: https://en.wikipedia.org/wiki/Algebra_(disambiguation)#Mathematical_structures |
| 22:23:45 | × | ezrakilty quits (~ezrakilty@75-172-120-225.tukw.qwest.net) (Remote host closed the connection) |
| 22:24:19 | × | Franciman quits (~francesco@host-82-49-79-189.retail.telecomitalia.it) (Quit: Leaving) |
| 22:24:35 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:4da6:ad42:6417:64a1) |
| 22:24:44 | <pjb> | justsomeguy: the number of operation will depend on the type of algebra on you type of values. |
| 22:25:28 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 22:25:59 | <pjb> | justsomeguy: of course, you're not limitd to the structure that have been defined so far by mathematicians. Basically any set of operation on your types can be defined as AN algebra… |
| 22:27:05 | × | ph88^ quits (~ph88@ip5f5af71a.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds) |
| 22:27:50 | → | andrybak joins (andrybak@gateway/vpn/privateinternetaccess/andrybak) |
| 22:32:21 | × | minoru_shiraeesh quits (~shiraeesh@109.166.58.206) (Ping timeout: 264 seconds) |
| 22:34:44 | × | fosterite quits (~fosterite@2600:6c46:7800:fecf:28ef:874a:4030:fb98) () |
| 22:38:05 | → | irchaxwell joins (~IRC@2a00:23a8:4382:a900:f9c3:321f:529e:146d) |
| 22:38:38 | × | son0p quits (~son0p@181.136.122.143) (Quit: Lost terminal) |
| 22:38:42 | <justsomeguy> | I guess I became confused when reading that there are multiple instances of Semigroup for the Sum and Product operations. |
| 22:42:18 | → | livvy joins (~livvy@88.97.23.37) |
| 22:42:29 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 22:42:56 | × | RusAlex quits (~Chel@unaffiliated/rusalex) (Read error: Connection reset by peer) |
| 22:44:18 | → | elliott_ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) |
| 22:44:26 | → | RusAlex joins (~Chel@unaffiliated/rusalex) |
| 22:44:32 | → | ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net) |
| 22:50:28 | × | livvy quits (~livvy@88.97.23.37) (Quit: leaving) |
| 22:50:47 | × | irchaxwell quits (~IRC@2a00:23a8:4382:a900:f9c3:321f:529e:146d) (Quit: Leaving) |
| 22:50:50 | → | ArsenArsen joins (~Arsen@fsf/member/ArsenArsen) |
| 22:52:16 | × | ArsenArsen quits (~Arsen@fsf/member/ArsenArsen) (Remote host closed the connection) |
| 22:52:44 | → | ArsenArsen joins (~Arsen@fsf/member/ArsenArsen) |
| 22:52:46 | × | ArsenArsen quits (~Arsen@fsf/member/ArsenArsen) (Remote host closed the connection) |
| 22:55:24 | → | ArsenArsen joins (~Arsen@fsf/member/ArsenArsen) |
| 22:55:46 | × | ArsenArsen quits (~Arsen@fsf/member/ArsenArsen) (Remote host closed the connection) |
| 22:56:16 | → | ArsenArsen joins (~Arsen@fsf/member/ArsenArsen) |
| 22:58:32 | <polyphem> | justsomeguy: There are multiple possibilities to define Semigroup over Ints so there is Sum and Product to capture these. |
| 22:59:44 | → | livvy joins (~livvy@88.97.23.37) |
| 23:00:08 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 23:00:43 | × | notzmv quits (~user@unaffiliated/zmv) (Remote host closed the connection) |
| 23:00:56 | × | hiroaki quits (~hiroaki@2a02:908:4b18:8c40::b730) (Ping timeout: 240 seconds) |
| 23:02:56 | × | __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving) |
| 23:03:08 | → | notzmv joins (~user@unaffiliated/zmv) |
| 23:04:19 | → | minoru_shiraeesh joins (~shiraeesh@109.166.58.206) |
| 23:04:37 | × | juri_ quits (~juri@178.63.35.222) (Ping timeout: 265 seconds) |
| 23:04:45 | × | pera quits (~pera@unaffiliated/pera) (Ping timeout: 264 seconds) |
| 23:05:31 | → | kish` joins (~oracle@gateway/tor-sasl/oracle) |
| 23:05:32 | × | notzmv quits (~user@unaffiliated/zmv) (Remote host closed the connection) |
| 23:06:24 | → | notzmv joins (~user@unaffiliated/zmv) |
| 23:07:26 | × | mouseghost quits (~draco@wikipedia/desperek) (Quit: mew wew) |
| 23:07:55 | <koz_> | In many cases you can define Semigroup in several ways, all of which abide by its law. |
| 23:07:59 | × | hidedagger quits (~nate@unaffiliated/hidedagger) (Quit: WeeChat 3.0) |
| 23:08:07 | <koz_> | Associative operations in general tend not to be unique for most interesting types. |
| 23:08:11 | <koz_> | (even Bool has like, four) |
| 23:10:17 | × | notzmv quits (~user@unaffiliated/zmv) (Remote host closed the connection) |
| 23:12:41 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 23:13:36 | × | fendor quits (~fendor@77.119.128.41.wireless.dyn.drei.com) (Remote host closed the connection) |
| 23:14:17 | × | elliott_ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Quit: WeeChat 3.0) |
| 23:14:57 | → | notzmv joins (~user@unaffiliated/zmv) |
| 23:15:53 | <edwardk> | if you just want associativity there should be a lot more, it's when you want associativity and a unit, no? |
| 23:17:24 | <koz_> | edwardk: OK yeah, it's more than four. |
| 23:17:25 | × | Natch quits (~Natch@c-b471e255.014-297-73746f25.bbcust.telenor.se) (Ping timeout: 240 seconds) |
| 23:17:40 | <ephemient> | that would be Monoid? |
| 23:18:00 | <edwardk> | yeah |
| 23:18:43 | <edwardk> | @let op f x y = testBit f (fromEnum x*2 + fromEnum x) |
| 23:18:45 | <lambdabot> | Defined. |
| 23:18:58 | <edwardk> | @let assoc (op -> f) = and [f x (f y z) == f (f x y) z|x<-b,y<-b,z<-b] where b = [False,True] |
| 23:18:59 | <lambdabot> | .L.hs:163:8: error: |
| 23:18:59 | <lambdabot> | Ambiguous occurrence ‘op’ |
| 23:18:59 | <lambdabot> | It could refer to |
| 23:19:17 | <edwardk> | @let oper f x y = testBit f (fromEnum x*2 + fromEnum x) |
| 23:19:18 | <lambdabot> | Defined. |
| 23:19:22 | <edwardk> | @let assoc (oper -> f) = and [f x (f y z) == f (f x y) z|x<-b,y<-b,z<-b] where b = [False,True] |
| 23:19:23 | <lambdabot> | Defined. |
| 23:19:33 | <edwardk> | > length $ filter assoc [0..15] |
| 23:19:35 | <lambdabot> | 12 |
| 23:26:41 | → | Lycurgus joins (~niemand@cpe-45-46-139-165.buffalo.res.rr.com) |
| 23:27:16 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 23:28:29 | → | hexfive joins (~hexfive@50.35.83.177) |
| 23:28:45 | → | pavonia joins (~user@unaffiliated/siracusa) |
| 23:30:16 | → | conal joins (~conal@64.71.133.70) |
| 23:31:33 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 23:32:55 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer) |
| 23:33:03 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 23:36:05 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) |
| 23:36:51 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer) |
| 23:37:12 | × | abhixec quits (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: leaving) |
| 23:37:16 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 23:38:10 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 23:39:57 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 23:40:35 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds) |
| 23:41:49 | → | conal_ joins (~conal@64.71.133.70) |
| 23:42:01 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 272 seconds) |
| 23:45:28 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:4da6:ad42:6417:64a1) (Remote host closed the connection) |
| 23:45:47 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 23:45:56 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:4da6:ad42:6417:64a1) |
| 23:47:33 | → | Natch joins (~Natch@c-b471e255.014-297-73746f25.bbcust.telenor.se) |
| 23:55:07 | × | conal_ quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 23:56:57 | × | elliott__ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 264 seconds) |
| 23:57:31 | × | johnw quits (~johnw@haskell/developer/johnw) (Quit: ZNC - http://znc.in) |
| 23:59:30 | <koz_> | Yep, that looks about right. |
| 23:59:55 | <polyphem> | edwardk: what about the y in oper ?? |
All times are in UTC on 2021-02-07.