2023-07-17 00:00:25 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 240 seconds) |
2023-07-17 00:06:12 +0200 | michalz | (~michalz@185.246.207.221) (Remote host closed the connection) |
2023-07-17 00:08:20 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2023-07-17 00:13:13 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 00:16:25 +0200 | dispater | (~dispater@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 00:16:25 +0200 | orcus | (~orcus@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 00:16:25 +0200 | brprice | (~brprice@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 00:18:54 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:f161:e9a5:5038:6be6) (Ping timeout: 272 seconds) |
2023-07-17 00:18:59 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 246 seconds) |
2023-07-17 00:19:25 +0200 | dispater | (~dispater@user/brprice) |
2023-07-17 00:19:30 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:f161:e9a5:5038:6be6) |
2023-07-17 00:19:56 +0200 | orcus | (~orcus@user/brprice) |
2023-07-17 00:20:17 +0200 | dispater | (~dispater@user/brprice) (Client Quit) |
2023-07-17 00:20:17 +0200 | orcus | (~orcus@user/brprice) (Client Quit) |
2023-07-17 00:20:44 +0200 | pavonia | (~user@user/siracusa) |
2023-07-17 00:22:00 +0200 | dispater | (~dispater@user/brprice) |
2023-07-17 00:22:32 +0200 | orcus | (~orcus@user/brprice) |
2023-07-17 00:28:08 +0200 | gurkenglas | (~gurkengla@dynamic-046-114-178-024.46.114.pool.telefonica.de) (Read error: Connection reset by peer) |
2023-07-17 00:28:44 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) (Quit: Client closed) |
2023-07-17 00:32:15 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 00:37:02 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 260 seconds) |
2023-07-17 00:37:09 +0200 | orcus | (~orcus@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 00:37:09 +0200 | dispater | (~dispater@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 00:38:54 +0200 | dispater | (~dispater@user/brprice) |
2023-07-17 00:39:25 +0200 | orcus | (~orcus@user/brprice) |
2023-07-17 00:40:12 +0200 | orcus | (~orcus@user/brprice) (Client Quit) |
2023-07-17 00:40:12 +0200 | dispater | (~dispater@user/brprice) (Client Quit) |
2023-07-17 00:41:11 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:f161:e9a5:5038:6be6) (Remote host closed the connection) |
2023-07-17 00:41:17 +0200 | dmgk | (~dmgk@user/dmgk) () |
2023-07-17 00:41:55 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2023-07-17 00:46:09 +0200 | dispater | (~dispater@user/brprice) |
2023-07-17 00:46:41 +0200 | orcus | (~orcus@user/brprice) |
2023-07-17 00:49:14 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 00:53:50 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 260 seconds) |
2023-07-17 00:55:39 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 01:00:51 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 246 seconds) |
2023-07-17 01:05:01 +0200 | td_ | (~td@i5387091F.versanet.de) (Ping timeout: 245 seconds) |
2023-07-17 01:06:28 +0200 | Lycurgus | (~juan@user/Lycurgus) |
2023-07-17 01:06:50 +0200 | td_ | (~td@i53870936.versanet.de) |
2023-07-17 01:09:14 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 01:11:34 +0200 | mechap | (~mechap@user/mechap) (Ping timeout: 260 seconds) |
2023-07-17 01:13:32 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 240 seconds) |
2023-07-17 01:13:34 +0200 | mechap | (~mechap@user/mechap) |
2023-07-17 01:15:38 +0200 | dispater | (~dispater@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 01:15:38 +0200 | orcus | (~orcus@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 01:18:42 +0200 | dispater | (~dispater@user/brprice) |
2023-07-17 01:19:13 +0200 | orcus | (~orcus@user/brprice) |
2023-07-17 01:20:53 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-07-17 01:20:53 +0200 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-07-17 01:20:53 +0200 | wroathe | (~wroathe@user/wroathe) |
2023-07-17 01:26:08 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 01:26:36 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
2023-07-17 01:28:09 +0200 | dispater | (~dispater@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 01:28:09 +0200 | orcus | (~orcus@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 01:28:22 +0200 | HerlockSholmes | (~herlock@2001:19f0:5c00:27fc:5400:4ff:fe7a:1f8e) (Quit: BRB!) |
2023-07-17 01:29:05 +0200 | HerlockSholmes | (~herlock@2001:19f0:5c00:27fc:5400:4ff:fe7a:1f8e) |
2023-07-17 01:29:29 +0200 | Lycurgus | (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
2023-07-17 01:29:47 +0200 | dispater | (~dispater@user/brprice) |
2023-07-17 01:30:20 +0200 | orcus | (~orcus@user/brprice) |
2023-07-17 01:30:42 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 260 seconds) |
2023-07-17 01:34:56 +0200 | nick4 | (~nick@2600:8807:9084:7800:a897:2684:b283:80ec) (Ping timeout: 246 seconds) |
2023-07-17 01:39:59 +0200 | mauke_ | (~mauke@user/mauke) |
2023-07-17 01:41:26 +0200 | mauke | (~mauke@user/mauke) (Ping timeout: 252 seconds) |
2023-07-17 01:41:26 +0200 | mauke_ | mauke |
2023-07-17 01:43:44 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 01:48:50 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 272 seconds) |
2023-07-17 01:48:56 +0200 | euandreh | (~Thunderbi@189.6.18.7) |
2023-07-17 01:49:23 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 01:52:23 +0200 | euandreh | (~Thunderbi@189.6.18.7) (Client Quit) |
2023-07-17 01:53:25 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 240 seconds) |
2023-07-17 01:54:18 +0200 | son0p | (~ff@181.136.122.143) |
2023-07-17 01:55:25 +0200 | nick4 | (~nick@2600:8807:9084:7800:b4a4:4a8e:7c5f:59be) |
2023-07-17 01:59:25 +0200 | nick4 | (~nick@2600:8807:9084:7800:b4a4:4a8e:7c5f:59be) (Ping timeout: 240 seconds) |
2023-07-17 01:59:27 +0200 | wildbartty | (~wildbartt@user/wildbartty) |
2023-07-17 02:00:45 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 02:05:14 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 260 seconds) |
2023-07-17 02:08:51 +0200 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-07-17 02:10:05 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.) |
2023-07-17 02:11:38 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 272 seconds) |
2023-07-17 02:12:01 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.1) |
2023-07-17 02:17:00 +0200 | oo_miguel | (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) (Ping timeout: 252 seconds) |
2023-07-17 02:18:29 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 02:20:59 +0200 | [_] | [itchyjunk] |
2023-07-17 02:21:14 +0200 | hugo | (znc@verdigris.lysator.liu.se) (Ping timeout: 250 seconds) |
2023-07-17 02:26:12 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 245 seconds) |
2023-07-17 02:27:50 +0200 | zero | zwro |
2023-07-17 02:29:56 +0200 | fr33domlover | (~fr33domlo@towards.vision) (Ping timeout: 258 seconds) |
2023-07-17 02:33:33 +0200 | fr33domlover | (~fr33domlo@towards.vision) |
2023-07-17 02:34:02 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14::ac08) |
2023-07-17 02:34:46 +0200 | hugo | (znc@verdigris.lysator.liu.se) |
2023-07-17 02:38:17 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14::ac08) (Ping timeout: 246 seconds) |
2023-07-17 02:41:59 +0200 | wildbartty_ | (~wildbartt@159.196.158.155) |
2023-07-17 02:43:06 +0200 | marinelli[m] | (~marinelli@2001:470:69fc:105::2d8) |
2023-07-17 02:45:12 +0200 | wildbartty | (~wildbartt@user/wildbartty) (Ping timeout: 272 seconds) |
2023-07-17 02:46:53 +0200 | fweht | (uid404746@id-404746.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-17 02:48:52 +0200 | wildbartty_ | (~wildbartt@159.196.158.155) (Quit: Leaving) |
2023-07-17 02:49:05 +0200 | wildbartty_ | (~wildbartt@159.196.158.155) |
2023-07-17 02:49:34 +0200 | dobblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-17 02:49:35 +0200 | dobblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-17 02:49:35 +0200 | dobblego | (~dibblego@haskell/developer/dibblego) |
2023-07-17 02:50:06 +0200 | dobblego | dibblego |
2023-07-17 02:52:37 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) |
2023-07-17 02:56:29 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 02:58:58 +0200 | nick4 | (~nick@ip98-162-147-230.pn.at.cox.net) |
2023-07-17 02:59:40 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-07-17 03:01:11 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 264 seconds) |
2023-07-17 03:10:55 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2023-07-17 03:12:13 +0200 | razetime | (~quassel@117.193.6.110) |
2023-07-17 03:14:01 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 03:17:03 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2023-07-17 03:18:30 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 260 seconds) |
2023-07-17 03:20:02 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 272 seconds) |
2023-07-17 03:21:37 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 03:24:11 +0200 | <Axman6> | @src Monoid |
2023-07-17 03:24:11 +0200 | <lambdabot> | class Monoid a where |
2023-07-17 03:24:11 +0200 | <lambdabot> | mempty :: a |
2023-07-17 03:24:11 +0200 | <lambdabot> | mappend :: a -> a -> a |
2023-07-17 03:24:11 +0200 | <lambdabot> | mconcat :: [a] -> a |
2023-07-17 03:24:47 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 03:25:01 +0200 | Square | (~Square@user/square) |
2023-07-17 03:25:02 +0200 | <Axman6> | @src Foldable |
2023-07-17 03:25:02 +0200 | <lambdabot> | Source not found. Do you think like you type? |
2023-07-17 03:25:06 +0200 | <Axman6> | :( |
2023-07-17 03:25:35 +0200 | <Square> | I sit and hammer away in GHCI. Suddenly 🎃 appears on the command line out of nowhere. |
2023-07-17 03:26:46 +0200 | emmanuelux | (~emmanuelu@user/emmanuelux) |
2023-07-17 03:29:15 +0200 | dispater | (~dispater@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 03:29:16 +0200 | orcus | (~orcus@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 03:29:32 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 272 seconds) |
2023-07-17 03:32:26 +0200 | dispater | (~dispater@user/brprice) |
2023-07-17 03:32:59 +0200 | orcus | (~orcus@user/brprice) |
2023-07-17 03:35:42 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 03:39:14 +0200 | <Axman6> | Square: spooky, I can't wait to hear the end of the story... if you survive |
2023-07-17 03:40:02 +0200 | <Square> | I have to admit, it was a bit scary. |
2023-07-17 03:40:11 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 264 seconds) |
2023-07-17 03:40:16 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
2023-07-17 03:40:27 +0200 | <Axman6> | The emojis are coming from inside the house, get out! |
2023-07-17 03:45:35 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
2023-07-17 03:45:48 +0200 | kritty | (~crumb@c-76-155-235-153.hsd1.co.comcast.net) |
2023-07-17 03:47:07 +0200 | <Square> | omg omg =D |
2023-07-17 03:47:54 +0200 | <ddellacosta> | is there a way to pass a struct by value via FFI other than just writing a wrapper function in C myself? |
2023-07-17 03:53:20 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 03:54:21 +0200 | <monochrom> | I think no, since there is no pass-struct-by-value-via-FFI at all. |
2023-07-17 03:54:22 +0200 | <probie> | https://wiki.haskell.org/Foreign_Function_Interface#Foreign_types concretely says "no". Being a wiki, it might be out of date, but I don't think it is |
2023-07-17 03:54:26 +0200 | <Axman6> | ddellacosta: have you tried it? IIRC if you're passing something by reference you need to be explicit by using Ptr, so I would have assumed that as long as you have the appropriate Storable instance it might work? |
2023-07-17 03:54:37 +0200 | <Axman6> | guess I'm wrong |
2023-07-17 03:54:51 +0200 | <monochrom> | FFI only knows ints, floats, and pointers. It almost doesn't even know C strings. |
2023-07-17 03:56:26 +0200 | <ddellacosta> | Axman6: yeah I've had no luck in any variation I've tried even with what seems like a viable Storable instance :-( |
2023-07-17 03:56:34 +0200 | <ddellacosta> | monochrom: thanks for confirming, that's what I suspected |
2023-07-17 03:56:35 +0200 | <probie> | If it's a struct like `struct point { int x; int y; }` you might be able to get away with `newtype Point = Point Word64` |
2023-07-17 03:56:48 +0200 | <ddellacosta> | naw, this is a beast with like 14 fields |
2023-07-17 03:57:00 +0200 | <monochrom> | You can make and use an appropriate Storable instance, but then you are still by-ref/ptr not by-value. |
2023-07-17 03:57:26 +0200 | <ddellacosta> | yeah, I'm going to have to just make a C wrapper to call the API function, as far as I can understand right now |
2023-07-17 03:57:42 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 260 seconds) |
2023-07-17 03:57:52 +0200 | kritty | (~crumb@c-76-155-235-153.hsd1.co.comcast.net) (Quit: Leaving) |
2023-07-17 03:58:42 +0200 | <ddellacosta> | also probie thanks for that wiki link, missed that somehow |
2023-07-17 03:59:05 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-07-17 04:00:20 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Remote host closed the connection) |
2023-07-17 04:00:39 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-07-17 04:09:28 +0200 | coot | (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
2023-07-17 04:09:35 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 264 seconds) |
2023-07-17 04:09:42 +0200 | coot | (~coot@89-69-206-216.dynamic.chello.pl) |
2023-07-17 04:10:19 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 04:12:16 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) |
2023-07-17 04:12:16 +0200 | dibblego | (~dibblego@116-255-1-157.ip4.superloop.au) (Changing host) |
2023-07-17 04:12:16 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-17 04:14:32 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 245 seconds) |
2023-07-17 04:16:30 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
2023-07-17 04:17:58 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
2023-07-17 04:18:12 +0200 | <ddellacosta> | woohoo that was actually super easy |
2023-07-17 04:18:36 +0200 | phma | (~phma@2001:5b0:210b:e378:ed22:f5d0:8c20:185c) (Read error: Connection reset by peer) |
2023-07-17 04:19:00 +0200 | phma | (~phma@host-67-44-208-43.hnremote.net) |
2023-07-17 04:21:05 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::c680) |
2023-07-17 04:21:14 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-07-17 04:22:21 +0200 | _d0t | (~{-d0t-}@user/-d0t-/x-7915216) (Remote host closed the connection) |
2023-07-17 04:23:14 +0200 | _d0t | (~{-d0t-}@user/-d0t-/x-7915216) |
2023-07-17 04:25:06 +0200 | emmanuelux | (~emmanuelu@user/emmanuelux) (Quit: au revoir) |
2023-07-17 04:29:42 +0200 | td_ | (~td@i53870936.versanet.de) (Ping timeout: 272 seconds) |
2023-07-17 04:30:55 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::c680) (Ping timeout: 240 seconds) |
2023-07-17 04:31:19 +0200 | td_ | (~td@i53870921.versanet.de) |
2023-07-17 04:37:48 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) (Quit: Client closed) |
2023-07-17 04:39:12 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 04:43:43 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 258 seconds) |
2023-07-17 04:52:21 +0200 | lain1001 | (~lain@76.108.135.43) |
2023-07-17 04:54:36 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2023-07-17 04:54:36 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2023-07-17 04:54:37 +0200 | finn_elija | FinnElija |
2023-07-17 04:56:33 +0200 | emmanuelux | (~emmanuelu@user/emmanuelux) |
2023-07-17 04:57:52 +0200 | ddellacosta | (~ddellacos@143.244.47.81) (Ping timeout: 245 seconds) |
2023-07-17 04:58:38 +0200 | segfaultfizzbuzz | (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 246 seconds) |
2023-07-17 04:59:14 +0200 | emmanuelux | (~emmanuelu@user/emmanuelux) (Client Quit) |
2023-07-17 04:59:46 +0200 | lain1001 | (~lain@76.108.135.43) (Ping timeout: 260 seconds) |
2023-07-17 05:00:01 +0200 | ddellacosta | (~ddellacos@146.70.171.140) |
2023-07-17 05:01:22 +0200 | picklejuice | (~root@172.58.204.21) (Ping timeout: 272 seconds) |
2023-07-17 05:02:23 +0200 | picklejuice | (~root@172.58.203.145) |
2023-07-17 05:02:56 +0200 | puke | (~puke@user/puke) (Remote host closed the connection) |
2023-07-17 05:03:21 +0200 | puke | (~puke@user/puke) |
2023-07-17 05:04:25 +0200 | puke | (~puke@user/puke) (Max SendQ exceeded) |
2023-07-17 05:05:51 +0200 | puke | (~puke@user/puke) |
2023-07-17 05:08:32 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 05:08:58 +0200 | ft | (~ft@p508db47d.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
2023-07-17 05:09:33 +0200 | pickleju1ce | (~root@c-73-196-164-60.hsd1.nj.comcast.net) |
2023-07-17 05:09:57 +0200 | picklejuice | (~root@172.58.203.145) (Ping timeout: 245 seconds) |
2023-07-17 05:10:34 +0200 | ft | (~ft@p508dbe50.dip0.t-ipconnect.de) |
2023-07-17 05:12:52 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 245 seconds) |
2023-07-17 05:16:22 +0200 | pyooque | (~puke@user/puke) |
2023-07-17 05:16:22 +0200 | puke | Guest5974 |
2023-07-17 05:16:22 +0200 | Guest5974 | (~puke@user/puke) (Killed (zirconium.libera.chat (Nickname regained by services))) |
2023-07-17 05:16:22 +0200 | pyooque | puke |
2023-07-17 05:16:36 +0200 | phma | (~phma@host-67-44-208-43.hnremote.net) (Read error: Connection reset by peer) |
2023-07-17 05:17:00 +0200 | phma | (phma@2001:5b0:210b:e378:ed22:f5d0:8c20:185c) |
2023-07-17 05:18:46 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
2023-07-17 05:21:15 +0200 | ddellacosta | (~ddellacos@146.70.171.140) (Ping timeout: 246 seconds) |
2023-07-17 05:22:10 +0200 | mechap | (~mechap@user/mechap) (Ping timeout: 260 seconds) |
2023-07-17 05:22:53 +0200 | mechap | (~mechap@user/mechap) |
2023-07-17 05:23:21 +0200 | ddellacosta | (~ddellacos@143.244.47.68) |
2023-07-17 05:25:50 +0200 | lain1001 | (~lain@76.108.135.43) |
2023-07-17 05:29:39 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2023-07-17 05:30:06 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2023-07-17 05:31:18 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 05:35:25 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 240 seconds) |
2023-07-17 05:42:40 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 05:46:14 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 246 seconds) |
2023-07-17 05:47:21 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 258 seconds) |
2023-07-17 05:59:53 +0200 | aforemny | (~aforemny@i59F516E8.versanet.de) |
2023-07-17 06:00:23 +0200 | actioninja63 | (~actioninj@user/actioninja) (Quit: see ya mane) |
2023-07-17 06:00:48 +0200 | actioninja63 | (~actioninj@user/actioninja) |
2023-07-17 06:01:02 +0200 | aforemny_ | (~aforemny@i59F516F8.versanet.de) (Ping timeout: 252 seconds) |
2023-07-17 06:01:51 +0200 | mstksg | (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 246 seconds) |
2023-07-17 06:04:06 +0200 | mstksg | (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
2023-07-17 06:06:55 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
2023-07-17 06:07:19 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
2023-07-17 06:09:11 +0200 | razetime | (~quassel@117.193.6.110) (Ping timeout: 245 seconds) |
2023-07-17 06:10:22 +0200 | Square | (~Square@user/square) (Ping timeout: 245 seconds) |
2023-07-17 06:15:59 +0200 | lain1001 | (~lain@76.108.135.43) (Quit: leaving) |
2023-07-17 06:17:53 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 06:22:26 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 272 seconds) |
2023-07-17 06:24:46 +0200 | trev | (~trev@user/trev) |
2023-07-17 06:32:24 +0200 | gentauro | (~gentauro@user/gentauro) (Read error: Connection reset by peer) |
2023-07-17 06:34:28 +0200 | son0p | (~ff@181.136.122.143) (Ping timeout: 272 seconds) |
2023-07-17 06:35:00 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 06:38:03 +0200 | gentauro | (~gentauro@user/gentauro) |
2023-07-17 06:39:26 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 246 seconds) |
2023-07-17 07:05:31 +0200 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
2023-07-17 07:08:28 +0200 | dobblego | (~dibblego@116-255-1-114.ip4.superloop.au) |
2023-07-17 07:08:28 +0200 | dobblego | (~dibblego@116-255-1-114.ip4.superloop.au) (Changing host) |
2023-07-17 07:08:28 +0200 | dobblego | (~dibblego@haskell/developer/dibblego) |
2023-07-17 07:09:11 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds) |
2023-07-17 07:09:11 +0200 | dobblego | dibblego |
2023-07-17 07:15:43 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 07:23:14 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 272 seconds) |
2023-07-17 07:29:01 +0200 | notzmv | (~zmv@user/notzmv) |
2023-07-17 07:31:12 +0200 | <Lears> | probie: Re your Preludeless adventures, I've done similar things before. It's vastly more comfortable if you allow yourself to craft a RebindableSyntax interface layer. I.e. write an alternate prelude that imports (but does not reexport) types like `Integer` and `String`, just to implement `fromInteger` and `fromString`, etc. |
2023-07-17 07:31:47 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 264 seconds) |
2023-07-17 07:34:09 +0200 | rainbyte | (~rainbyte@181.31.239.226) |
2023-07-17 07:39:11 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht) |
2023-07-17 07:43:17 +0200 | pickleju1ce | (~root@c-73-196-164-60.hsd1.nj.comcast.net) (Ping timeout: 246 seconds) |
2023-07-17 07:46:36 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 07:50:50 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 246 seconds) |
2023-07-17 08:01:37 +0200 | mncheck | (~mncheck@193.224.205.254) |
2023-07-17 08:03:52 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 08:05:25 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
2023-07-17 08:05:46 +0200 | smalltalkman | (uid545680@id-545680.hampstead.irccloud.com) |
2023-07-17 08:08:12 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 240 seconds) |
2023-07-17 08:10:44 +0200 | mauke | (~mauke@user/mauke) (Ping timeout: 272 seconds) |
2023-07-17 08:16:03 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 08:20:06 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-07-17 08:20:12 +0200 | Guest97 | (~Guest97@2603-7000-4b42-1100-8446-81c1-b315-7d12.res6.spectrum.com) |
2023-07-17 08:20:55 +0200 | <Guest97> | Hello !! How to Calculate mod of Rational Number in Haskell? I can't get it right |
2023-07-17 08:23:24 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 272 seconds) |
2023-07-17 08:24:20 +0200 | razetime | (~quassel@117.193.6.110) |
2023-07-17 08:25:25 +0200 | <Axman6> | > let fmod n d = let q = n / d in n - q*d in fmod pi 3 |
2023-07-17 08:25:27 +0200 | <lambdabot> | 0.0 |
2023-07-17 08:25:36 +0200 | <Axman6> | hmmm |
2023-07-17 08:25:55 +0200 | <Axman6> | uh, yeah of course |
2023-07-17 08:26:25 +0200 | <Axman6> | Guest97: what sort of answer are you expecting to get? |
2023-07-17 08:27:20 +0200 | <Guest97> | A rational number between 0%1 and 11%1 |
2023-07-17 08:27:40 +0200 | <c_wraith> | > mod' 3.5 1.5 |
2023-07-17 08:27:41 +0200 | <lambdabot> | 0.5 |
2023-07-17 08:27:47 +0200 | <c_wraith> | > mod' 3.5 1.5 :: Rational |
2023-07-17 08:27:48 +0200 | <lambdabot> | 1 % 2 |
2023-07-17 08:27:57 +0200 | <c_wraith> | it's in Data.Fixed, for some reason |
2023-07-17 08:28:11 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 08:28:32 +0200 | <Guest97> | ok I couldn't find mod' |
2023-07-17 08:28:51 +0200 | <c_wraith> | https://hackage.haskell.org/package/base-4.18.0.0/docs/Data-Fixed.html#v:mod-39- |
2023-07-17 08:29:25 +0200 | <Axman6> | :t realFrac |
2023-07-17 08:29:26 +0200 | <lambdabot> | error: |
2023-07-17 08:29:26 +0200 | <lambdabot> | • Variable not in scope: realFrac |
2023-07-17 08:29:26 +0200 | <lambdabot> | • Perhaps you meant ‘realToFrac’ (imported from Prelude) |
2023-07-17 08:29:58 +0200 | <Axman6> | :t properFraction |
2023-07-17 08:29:59 +0200 | <lambdabot> | (RealFrac a, Integral b) => a -> (b, a) |
2023-07-17 08:35:35 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14::ac08) |
2023-07-17 08:36:33 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-07-17 08:39:22 +0200 | <Axman6> | > let fmod n d = let (i,f) = properFraction (n / d) in f*d in fmod pi 3 |
2023-07-17 08:39:23 +0200 | <lambdabot> | 0.1415926535897929 |
2023-07-17 08:39:31 +0200 | <Axman6> | > let fmod n d = let (i,f) = properFraction (n / d) in f*d in fmod 3.5 1.5 |
2023-07-17 08:39:33 +0200 | <lambdabot> | 0.5000000000000002 |
2023-07-17 08:39:40 +0200 | <Axman6> | > let fmod n d = let (i,f) = properFraction (n / d) in f*d in fmod 3.5 1.5 :: Rational |
2023-07-17 08:39:41 +0200 | <lambdabot> | 1 % 2 |
2023-07-17 08:39:55 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14::ac08) (Ping timeout: 240 seconds) |
2023-07-17 08:40:50 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) |
2023-07-17 08:40:52 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2023-07-17 08:41:34 +0200 | michalz | (~michalz@185.246.207.218) |
2023-07-17 08:43:59 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-07-17 08:45:41 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14::ac08) |
2023-07-17 08:46:31 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2023-07-17 08:47:00 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-07-17 08:49:09 +0200 | mango | (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) |
2023-07-17 08:53:54 +0200 | oo_miguel | (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) |
2023-07-17 09:00:42 +0200 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
2023-07-17 09:04:25 +0200 | shriekingnoise | (~shrieking@186.137.175.87) (Ping timeout: 240 seconds) |
2023-07-17 09:12:56 +0200 | fendor | (~fendor@2a02:8388:1640:be00:1f28:32b1:54ac:a932) |
2023-07-17 09:16:02 +0200 | razetime | (~quassel@117.193.6.110) (Ping timeout: 246 seconds) |
2023-07-17 09:16:21 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
2023-07-17 09:21:08 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 250 seconds) |
2023-07-17 09:31:48 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
2023-07-17 09:33:17 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) |
2023-07-17 09:35:48 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-07-17 09:36:03 +0200 | razetime | (~quassel@117.193.6.110) |
2023-07-17 09:37:40 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:76::1e) (Client Quit) |
2023-07-17 09:38:54 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 09:41:23 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14::ac08) (Remote host closed the connection) |
2023-07-17 09:41:58 +0200 | pointlessslippe1 | (~pointless@212.82.82.3) |
2023-07-17 09:42:59 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
2023-07-17 09:48:35 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 09:51:00 +0200 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
2023-07-17 09:53:20 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 272 seconds) |
2023-07-17 10:00:26 +0200 | rainbyte | (~rainbyte@181.31.239.226) (Ping timeout: 245 seconds) |
2023-07-17 10:03:26 +0200 | gurkenglas | (~gurkengla@dynamic-046-114-176-022.46.114.pool.telefonica.de) |
2023-07-17 10:05:38 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
2023-07-17 10:09:38 +0200 | titibandit | (~titibandi@user/titibandit) (Ping timeout: 260 seconds) |
2023-07-17 10:10:17 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2023-07-17 10:11:13 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-07-17 10:13:22 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 10:15:23 +0200 | bontaq | (~user@ool-45779b84.dyn.optonline.net) |
2023-07-17 10:15:23 +0200 | titibandit | (~titibandi@user/titibandit) (Read error: Connection reset by peer) |
2023-07-17 10:18:14 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2023-07-17 10:19:54 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Ping timeout: 258 seconds) |
2023-07-17 10:21:11 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-07-17 10:22:49 +0200 | ripspin | (~chatzilla@1.145.214.25) |
2023-07-17 10:24:29 +0200 | econo_ | (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
2023-07-17 10:24:44 +0200 | titibandit | (~titibandi@user/titibandit) (Remote host closed the connection) |
2023-07-17 10:24:58 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 10:25:49 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2023-07-17 10:28:20 +0200 | califax | (~califax@user/califx) |
2023-07-17 10:28:32 +0200 | chele | (~chele@user/chele) |
2023-07-17 10:29:26 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
2023-07-17 10:32:17 +0200 | qqq | (~qqq@92.43.167.61) |
2023-07-17 10:36:22 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-07-17 10:38:18 +0200 | razetime | (~quassel@117.193.6.110) (Ping timeout: 272 seconds) |
2023-07-17 10:39:16 +0200 | wildbartty_ | (~wildbartt@159.196.158.155) (Remote host closed the connection) |
2023-07-17 10:39:52 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 10:41:00 +0200 | danse-nr3 | (~francesco@151.43.141.194) |
2023-07-17 10:43:44 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2023-07-17 10:43:51 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 10:51:16 +0200 | mei | (~mei@user/mei) |
2023-07-17 10:58:14 +0200 | razetime | (~quassel@117.193.6.110) |
2023-07-17 11:02:33 +0200 | Guest97 | (~Guest97@2603-7000-4b42-1100-8446-81c1-b315-7d12.res6.spectrum.com) (Quit: Client closed) |
2023-07-17 11:04:48 +0200 | m1k3d | (~md@74.102.139.139) |
2023-07-17 11:06:10 +0200 | mango | (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) (Ping timeout: 272 seconds) |
2023-07-17 11:12:42 +0200 | fweht | (uid404746@id-404746.lymington.irccloud.com) |
2023-07-17 11:12:59 +0200 | end\ | (~end^@user/end/x-0094621) (Remote host closed the connection) |
2023-07-17 11:17:41 +0200 | Inst__ | (~Inst@2601:6c4:4081:2fc0:39c6:994c:92a5:82c7) (Ping timeout: 246 seconds) |
2023-07-17 11:18:25 +0200 | acidjnk | (~acidjnk@p200300d6e7072f499123e473781aa8c4.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2023-07-17 11:18:42 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:f161:e9a5:5038:6be6) |
2023-07-17 11:20:06 +0200 | arahael_ | (~arahael@124-149-31-4.dyn.iinet.net.au) (Ping timeout: 272 seconds) |
2023-07-17 11:24:32 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:f161:e9a5:5038:6be6) (Ping timeout: 272 seconds) |
2023-07-17 11:25:06 +0200 | ft | (~ft@p508dbe50.dip0.t-ipconnect.de) (Quit: leaving) |
2023-07-17 11:29:10 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-07-17 11:33:07 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) |
2023-07-17 11:34:16 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2023-07-17 11:34:24 +0200 | danse-nr3 | (~francesco@151.43.141.194) (Remote host closed the connection) |
2023-07-17 11:34:46 +0200 | danse-nr3 | (~francesco@151.43.141.194) |
2023-07-17 11:35:03 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 246 seconds) |
2023-07-17 11:35:27 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-07-17 11:36:01 +0200 | puke | (~puke@user/puke) (Remote host closed the connection) |
2023-07-17 11:37:06 +0200 | Lord_of_Life_ | Lord_of_Life |
2023-07-17 11:41:09 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.1) |
2023-07-17 11:44:14 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 258 seconds) |
2023-07-17 11:44:38 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
2023-07-17 11:44:39 +0200 | arahael_ | (~arahael@124-149-31-4.dyn.iinet.net.au) |
2023-07-17 11:45:12 +0200 | __monty__ | (~toonn@user/toonn) |
2023-07-17 11:49:18 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
2023-07-17 11:52:18 +0200 | Natch | (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Remote host closed the connection) |
2023-07-17 11:52:18 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-07-17 11:52:32 +0200 | CrunchyFlakes | (~pi4@ip5f5b4693.dynamic.kabel-deutschland.de) (Quit: WeeChat 4.0.1) |
2023-07-17 11:53:52 +0200 | Inst__ | (~Inst@2601:6c4:4081:2fc0:79c8:42a5:37ad:5ebf) |
2023-07-17 11:56:50 +0200 | titibandit | (~titibandi@user/titibandit) (Ping timeout: 272 seconds) |
2023-07-17 11:58:28 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-07-17 11:59:56 +0200 | dobblego | (~dibblego@116-255-1-114.ip4.superloop.au) |
2023-07-17 11:59:56 +0200 | dobblego | (~dibblego@116-255-1-114.ip4.superloop.au) (Changing host) |
2023-07-17 11:59:56 +0200 | dobblego | (~dibblego@haskell/developer/dibblego) |
2023-07-17 12:00:38 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 272 seconds) |
2023-07-17 12:00:39 +0200 | dobblego | dibblego |
2023-07-17 12:02:38 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Remote host closed the connection) |
2023-07-17 12:11:42 +0200 | puke | (~puke@user/puke) |
2023-07-17 12:12:49 +0200 | puke | (~puke@user/puke) (Max SendQ exceeded) |
2023-07-17 12:14:21 +0200 | puke | (~puke@user/puke) |
2023-07-17 12:29:52 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) |
2023-07-17 12:30:15 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 12:31:56 +0200 | <danse-nr3> | maybe a b c d |
2023-07-17 12:32:13 +0200 | <danse-nr3> | i guess `c` cannot be a function applied to `d` to return a maybe ... |
2023-07-17 12:34:19 +0200 | <danse-nr3> | oh, the case is that `maybe a b c` could return a function to be applied to `d` |
2023-07-17 12:39:28 +0200 | zazaeil | (~user@91.234.25.217) |
2023-07-17 12:39:51 +0200 | <probie> | > maybe (*2) (*) (Just 3) 14 |
2023-07-17 12:39:52 +0200 | <lambdabot> | 42 |
2023-07-17 12:41:36 +0200 | <zazaeil> | is there a way to run `Yesod.Test` with `QuickCheck` altogether? like `prop "tests foo" $ forAll genFoo $ \foo -> do { get $ HomeR foo ; statusIs 400 }`? |
2023-07-17 12:41:45 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2023-07-17 12:42:26 +0200 | <zazaeil> | I want request to be generated randomly and then run it on top of the `Yesod.Test` capabilities. |
2023-07-17 12:43:04 +0200 | titibandit | (~titibandi@user/titibandit) (Ping timeout: 250 seconds) |
2023-07-17 12:45:01 +0200 | titibandit | (~titibandi@user/titibandit) |
2023-07-17 12:47:01 +0200 | p3n | (~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-07-17 12:48:01 +0200 | ishig | (~abbe@136.pool85-53-4.dynamic.orange.es) |
2023-07-17 12:48:08 +0200 | picklejuice | (~root@c-73-196-164-60.hsd1.nj.comcast.net) |
2023-07-17 12:48:46 +0200 | ishig | (~abbe@136.pool85-53-4.dynamic.orange.es) (Client Quit) |
2023-07-17 12:49:12 +0200 | <Profpatsch> | Is it possible to refer to the current module? |
2023-07-17 12:49:33 +0200 | <Profpatsch> | e.g. if I have a let fooFn = fooFnFromModule |
2023-07-17 12:49:45 +0200 | <Profpatsch> | something like let foo = ThisModule.foo |
2023-07-17 12:50:04 +0200 | <danse-nr3> | zazaeil, i wonder whether a tool already exists to do that. I recall a friend was working on something similar many years ago. I think it was independent from the framework serving the interface though, just querying from a client |
2023-07-17 12:50:50 +0200 | <danse-nr3> | Profpatsch, usually if you have an ambiguity in scope, the compiler will show you the alternatives "qualified" |
2023-07-17 12:51:15 +0200 | acidjnk | (~acidjnk@p200300d6e7072f779123e473781aa8c4.dip0.t-ipconnect.de) |
2023-07-17 12:51:18 +0200 | <zazaeil> | danse-nr3: any chance you got a `GitHub` ref or something alike? I really need that but seems quite a complex task get done. |
2023-07-17 12:52:03 +0200 | <danse-nr3> | nope sorry, i think he abandoned that project since, so i should do a proper research about the topic |
2023-07-17 12:53:02 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds) |
2023-07-17 12:53:12 +0200 | <danse-nr3> | something platform-independent should rely on a description of the interface anyways |
2023-07-17 12:53:24 +0200 | <zazaeil> | danse-nr3: I have some guesses why he did abandon that; does not sound like an easy thing to do. |
2023-07-17 12:53:54 +0200 | <danse-nr3> | nah, it was working. There are many reasons why projects do not take off sometimes |
2023-07-17 12:54:36 +0200 | <zazaeil> | danse-nr3: I see. just in case you'd recall something useful, pls shoot me a msg. |
2023-07-17 12:54:54 +0200 | <zazaeil> | meanwhile will try to scan the Github once again. might find something to reuse. |
2023-07-17 12:55:00 +0200 | <danse-nr3> | good luck! |
2023-07-17 12:55:22 +0200 | <danse-nr3> | and also try scanning hackage, not everything is on github |
2023-07-17 12:55:46 +0200 | tomku | (~tomku@user/tomku) (Ping timeout: 260 seconds) |
2023-07-17 12:56:21 +0200 | <zazaeil> | danse-nr3: indeed |
2023-07-17 12:59:57 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2023-07-17 13:05:17 +0200 | misterfish | (~misterfis@87.215.131.102) |
2023-07-17 13:07:31 +0200 | mei | (~mei@user/mei) |
2023-07-17 13:08:36 +0200 | CrunchyFlakes | (~pi4@ip5f5b4693.dynamic.kabel-deutschland.de) |
2023-07-17 13:08:46 +0200 | CrunchyFlakes | (~pi4@ip5f5b4693.dynamic.kabel-deutschland.de) (Quit: WeeChat 4.0.2) |
2023-07-17 13:08:59 +0200 | CrunchyFlakes | (~pi4@ip5f5b4693.dynamic.kabel-deutschland.de) |
2023-07-17 13:09:46 +0200 | <Profpatsch> | danse-nr3: yeah but I can’t import the current module without creating a cycle as far as I can see |
2023-07-17 13:10:36 +0200 | <danse-nr3> | why would you import it when all symbols are already in scope? |
2023-07-17 13:11:23 +0200 | ubert | (~Thunderbi@91.141.70.181.wireless.dyn.drei.com) |
2023-07-17 13:16:26 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:adeb:5d31:3c95:b332) (Remote host closed the connection) |
2023-07-17 13:17:51 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
2023-07-17 13:18:52 +0200 | <probie> | I think the only time one would need this is if you had some shadowing going on, e.g. `foo x y = if y == 0 then x else let foo = x + y in ThisModule.foo foo (y - 1)` |
2023-07-17 13:19:43 +0200 | <probie> | if it's a top level name collision, one can import every module qualified, and then only the current module will have unqualified names |
2023-07-17 13:19:56 +0200 | <danse-nr3> | % let head = const 1 in head [0] |
2023-07-17 13:19:57 +0200 | <yahb2> | 1 |
2023-07-17 13:20:20 +0200 | <danse-nr3> | maybe i have something setup that makes the compiler complain and list alternatives |
2023-07-17 13:22:18 +0200 | <probie> | No, it's just that that definition of `head` shadows `Prelude.head`. If you make a top level definition named `head`, it won't shadow `Prelude.head` and you'll get an error about ambiguity when you go to use `head` |
2023-07-17 13:22:30 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
2023-07-17 13:22:52 +0200 | <danse-nr3> | % head = const 1 |
2023-07-17 13:22:52 +0200 | <yahb2> | <no output> |
2023-07-17 13:22:58 +0200 | arahael_ | (~arahael@124-149-31-4.dyn.iinet.net.au) (Ping timeout: 272 seconds) |
2023-07-17 13:23:02 +0200 | <danse-nr3> | % head [0] |
2023-07-17 13:23:02 +0200 | <yahb2> | 1 |
2023-07-17 13:23:19 +0200 | <danse-nr3> | i do not know how to make a top-level definition then |
2023-07-17 13:25:22 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
2023-07-17 13:25:28 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-07-17 13:25:46 +0200 | <danse-nr3> | % head = Prelude.head |
2023-07-17 13:25:46 +0200 | <yahb2> | <no output> |
2023-07-17 13:25:54 +0200 | <danse-nr3> | just in case |
2023-07-17 13:26:03 +0200 | <probie> | Try loading something like https://paste.tomsmeding.com/DSgolX8Z in GHCi |
2023-07-17 13:27:33 +0200 | <danse-nr3> | i get no errors |
2023-07-17 13:27:43 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 13:27:57 +0200 | <probie> | Interesting |
2023-07-17 13:28:02 +0200 | acidjnk | (~acidjnk@p200300d6e7072f779123e473781aa8c4.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
2023-07-17 13:28:55 +0200 | <probie> | So if I try and load that, I get https://paste.tomsmeding.com/6YcL8qZM |
2023-07-17 13:29:50 +0200 | <Lears> | Profpatsch: The current module is already "imported" (in scope) both qualified and unqualified. |
2023-07-17 13:29:51 +0200 | <danse-nr3> | maybe it is a new feature, i run old 8.6 |
2023-07-17 13:30:04 +0200 | <fvr> | Profpatsch: you don't need import the current module, you can prefix usage with current module name without importing |
2023-07-17 13:30:23 +0200 | acidjnk | (~acidjnk@p200300d6e7072f770cf848d8868092f6.dip0.t-ipconnect.de) |
2023-07-17 13:32:11 +0200 | <Profpatsch> | Lears: fvr but I can’t give it a different qualified name? |
2023-07-17 13:32:25 +0200 | <Profpatsch> | maybe I’m asking too much haha |
2023-07-17 13:34:22 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
2023-07-17 13:34:36 +0200 | <fvr> | Profpatsch: Perhaps `qualified-imports-plugin` can be modified to accomplish that |
2023-07-17 13:35:05 +0200 | CrunchyFlakes | (~pi4@ip5f5b4693.dynamic.kabel-deutschland.de) (Quit: WeeChat 4.0.2) |
2023-07-17 13:38:10 +0200 | danse-nr3 | (~francesco@151.43.141.194) (Ping timeout: 272 seconds) |
2023-07-17 13:38:42 +0200 | Logio_ | (em@kapsi.fi) (Ping timeout: 260 seconds) |
2023-07-17 13:39:03 +0200 | <Profpatsch> | fvr: errr, if plain Haskell doesn’t support it it’s fine |
2023-07-17 13:39:21 +0200 | Logio | (em@kapsi.fi) |
2023-07-17 13:39:36 +0200 | <Profpatsch> | I’d rather not use plugins if I can avoid it, esp not for things that can be trivially worked around |
2023-07-17 13:48:56 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Remote host closed the connection) |
2023-07-17 13:49:08 +0200 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
2023-07-17 13:50:41 +0200 | Guest94 | (~Guest94@89.101.145.49) |
2023-07-17 13:50:58 +0200 | Guest94 | (~Guest94@89.101.145.49) (Client Quit) |
2023-07-17 13:58:59 +0200 | razetime | (~quassel@117.193.6.110) (Remote host closed the connection) |
2023-07-17 13:59:05 +0200 | rainbyte | (~rainbyte@181.31.239.226) |
2023-07-17 14:00:22 +0200 | arahael_ | (~arahael@124-149-31-4.dyn.iinet.net.au) |
2023-07-17 14:05:24 +0200 | arahael_ | (~arahael@124-149-31-4.dyn.iinet.net.au) (Ping timeout: 272 seconds) |
2023-07-17 14:07:26 +0200 | danse-nr3 | (~francesco@151.43.154.166) |
2023-07-17 14:13:22 +0200 | m1k3d | (~md@74.102.139.139) (Read error: Connection reset by peer) |
2023-07-17 14:22:42 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 14:42:02 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-07-17 14:42:55 +0200 | gurkenglas | (~gurkengla@dynamic-046-114-176-022.46.114.pool.telefonica.de) (Read error: Connection reset by peer) |
2023-07-17 14:53:38 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 246 seconds) |
2023-07-17 14:53:38 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
2023-07-17 14:53:47 +0200 | yoggurt[m] | (~yoggurtma@2001:470:69fc:105::2:ba5) |
2023-07-17 14:56:34 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) |
2023-07-17 15:03:40 +0200 | telser | (~quassel@user/telser) |
2023-07-17 15:04:18 +0200 | zazaeil | (~user@91.234.25.217) (Ping timeout: 272 seconds) |
2023-07-17 15:08:46 +0200 | picklejuice | (~root@c-73-196-164-60.hsd1.nj.comcast.net) (Ping timeout: 245 seconds) |
2023-07-17 15:09:28 +0200 | picklejuice | (~root@c-73-196-164-60.hsd1.nj.comcast.net) |
2023-07-17 15:17:23 +0200 | nick4 | (~nick@ip98-162-147-230.pn.at.cox.net) (Ping timeout: 264 seconds) |
2023-07-17 15:22:02 +0200 | xff0x | (~xff0x@ai086045.d.east.v6connect.net) (Ping timeout: 272 seconds) |
2023-07-17 15:23:45 +0200 | xff0x | (~xff0x@178.255.149.135) |
2023-07-17 15:24:16 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Ping timeout: 250 seconds) |
2023-07-17 15:25:38 +0200 | thyriaen | (~thyriaen@2a01:aea0:dd4:6659:6245:cbff:fe9f:48b1) |
2023-07-17 15:30:44 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
2023-07-17 15:35:56 +0200 | zaquest | (~notzaques@5.130.79.72) (Remote host closed the connection) |
2023-07-17 15:37:11 +0200 | xff0x | (~xff0x@178.255.149.135) (Ping timeout: 246 seconds) |
2023-07-17 15:38:06 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) |
2023-07-17 15:39:11 +0200 | xff0x | (~xff0x@2405:6580:b080:900:28aa:9c66:15d:15fc) |
2023-07-17 15:40:10 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
2023-07-17 15:40:40 +0200 | alexbiehl | (~alexbiehl@77.20.253.164) |
2023-07-17 15:40:45 +0200 | danse-nr3 | (~francesco@151.43.154.166) (Ping timeout: 258 seconds) |
2023-07-17 15:40:56 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2023-07-17 15:41:13 +0200 | danse-nr3 | (~francesco@151.43.154.166) |
2023-07-17 15:45:01 +0200 | alexbiehl | (~alexbiehl@77.20.253.164) (Remote host closed the connection) |
2023-07-17 15:45:53 +0200 | Natch | (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) |
2023-07-17 15:46:41 +0200 | <Lears> | Profpatsch: I doubt it's an improvement over your workaround, but I'd been wanting a TH/QQ exercise anyway, so I wrote this: <https://gist.github.com/LSLeary/5e181568bdf7a7fba72d243e15e5b632>. |
2023-07-17 15:46:51 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 15:47:33 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 15:54:37 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Remote host closed the connection) |
2023-07-17 15:54:59 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 15:58:14 +0200 | qqq | (~qqq@92.43.167.61) (Quit: Lost terminal) |
2023-07-17 15:59:11 +0200 | <Profpatsch> | Lears: erm, no thank you |
2023-07-17 15:59:24 +0200 | <Profpatsch> | that is scary |
2023-07-17 16:00:03 +0200 | <Profpatsch> | Am I right in the assumption that HasField cannot be correctly derived for rankN fields? |
2023-07-17 16:02:07 +0200 | <[exa]> | the complexity of the proposition that the HasField would represent may get pretty scary there |
2023-07-17 16:04:05 +0200 | Square | (~Square@user/square) |
2023-07-17 16:04:09 +0200 | <Profpatsch> | The thing is I’m using a record to mock some functions |
2023-07-17 16:04:28 +0200 | <Profpatsch> | and this record field looks like: insert :: forall coll. ([InsertEntry coll] -> m [Entry coll ()]) |
2023-07-17 16:04:49 +0200 | <Profpatsch> | but mock.insert cannot infer coll? |
2023-07-17 16:04:55 +0200 | <Profpatsch> | Proxy I guess |
2023-07-17 16:04:55 +0200 | qqq | (~qqq@92.43.167.61) |
2023-07-17 16:05:34 +0200 | <Profpatsch> | doesn’t seem to work :( |
2023-07-17 16:06:27 +0200 | jabuxas | (~jabuxas@user/jabuxas) (WeeChat 3.8) |
2023-07-17 16:06:28 +0200 | <Profpatsch> | It does work with a FieldSelector |
2023-07-17 16:06:42 +0200 | nick4 | (~nick@wsip-174-78-110-18.pn.at.cox.net) |
2023-07-17 16:06:45 +0200 | <Profpatsch> | So I guess I’d have to enable FieldSelectors for this module :( |
2023-07-17 16:07:30 +0200 | <Lears> | NamedFieldPuns is best for records of functions. |
2023-07-17 16:08:12 +0200 | <Profpatsch> | Lears: ah yes, that’s another possibility thanks |
2023-07-17 16:09:32 +0200 | <Profpatsch> | that’s a lot better |
2023-07-17 16:13:56 +0200 | shriekingnoise | (~shrieking@186.137.175.87) |
2023-07-17 16:26:08 +0200 | <nick4> | I'm trying to install hoogle locally through cabal. I keep getting this error when building the warp-tls dependency: Couldn't match type ‘x509-1.7.7:Data.X509.CertificateChain.CertificateChain’ |
2023-07-17 16:26:10 +0200 | <nick4> | with ‘crypton-x509-1.7.6:Data.X509.CertificateChain.CertificateChain’ |
2023-07-17 16:26:32 +0200 | <nick4> | Is there a way to resolve this without modifying source? I'm not sure how to resolve this. |
2023-07-17 16:31:06 +0200 | <int-e> | maybe try --constraint 'crypton-x509 < 0.0' |
2023-07-17 16:31:29 +0200 | <int-e> | but presumably there's a reason for that fork of x509 |
2023-07-17 16:32:01 +0200 | mango | (~finn@176-151-21-224.abo.bbox.fr) |
2023-07-17 16:34:46 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2023-07-17 16:35:42 +0200 | mei | (~mei@user/mei) (Remote host closed the connection) |
2023-07-17 16:36:19 +0200 | ss4 | (~wootehfoo@user/wootehfoot) |
2023-07-17 16:38:07 +0200 | mei | (~mei@user/mei) |
2023-07-17 16:39:11 +0200 | <int-e> | it's a very recent fork though so it'll probably work for now |
2023-07-17 16:40:24 +0200 | tomku | (~tomku@user/tomku) |
2023-07-17 16:40:34 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 272 seconds) |
2023-07-17 16:44:37 +0200 | <nick4> | so you're saying I should try $ cabal install --contraint 'crypton-x509 < 0.0' hoogle? |
2023-07-17 16:44:55 +0200 | <int-e> | con*s*traint. yes. |
2023-07-17 16:46:12 +0200 | econo_ | (uid147250@id-147250.tinside.irccloud.com) |
2023-07-17 16:46:16 +0200 | <int-e> | it should use previous releases of tls and http-client-tls that still rely on x509 |
2023-07-17 16:46:29 +0200 | <nick4> | well that kinda works. Now I'm getting an out of scope error for the same variable that it says couldn't match type . . . =/ |
2023-07-17 16:46:50 +0200 | <int-e> | fun? |
2023-07-17 16:46:57 +0200 | <nick4> | much |
2023-07-17 16:47:10 +0200 | <nick4> | I'm just not sure how I'm supposed to figure out how to resolve the dependencies? |
2023-07-17 16:47:40 +0200 | <nick4> | like at least with missing C headers, I can try random things lol |
2023-07-17 16:47:45 +0200 | <int-e> | . o O ( reset the package index state to early 2022 and try again ) |
2023-07-17 16:47:48 +0200 | <nick4> | I'm completely lost here |
2023-07-17 16:48:13 +0200 | <int-e> | (the last upload of hoogle was in december 2021; presumably it could be built then) |
2023-07-17 16:48:32 +0200 | <int-e> | Oh, C headers... that's outside the scope of cabal |
2023-07-17 16:48:54 +0200 | <geekosaur> | I think that was an example of what they could fix, as compared to this? |
2023-07-17 16:48:59 +0200 | <int-e> | but if it's a type error that rather suggests incompatible dependencies |
2023-07-17 16:49:03 +0200 | <int-e> | on the haskell side |
2023-07-17 16:49:32 +0200 | <nick4> | Hmmm I'm not sure what you mean by the package index . . . I'm not seeing any options in cabal help to direct me. |
2023-07-17 16:50:04 +0200 | mango | (~finn@176-151-21-224.abo.bbox.fr) (Ping timeout: 272 seconds) |
2023-07-17 16:50:38 +0200 | <int-e> | the package index is what `cabal update` updates |
2023-07-17 16:50:42 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
2023-07-17 16:51:30 +0200 | <int-e> | And you can roll that back with, uhm, `cabal update --index-state='2022-01-01'` for example. I'm not convinced that this is a great idea unless you're also willing to use a similarly old ghc. |
2023-07-17 16:51:59 +0200 | <int-e> | and also I've never done that |
2023-07-17 16:52:15 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Remote host closed the connection) |
2023-07-17 16:52:16 +0200 | <int-e> | I only know of that feature because `caba update` itself advertises it |
2023-07-17 16:52:32 +0200 | <nick4> | well clearly this version of ghc isn't working with hoogle, so I'm willing to try things |
2023-07-17 16:52:42 +0200 | <nick4> | how do I know which version of ghc that I need? |
2023-07-17 16:53:11 +0200 | <nick4> | I assume I can just install it with ghcup and symlink it? |
2023-07-17 16:53:37 +0200 | <maerwald> | symlink? |
2023-07-17 16:53:40 +0200 | <int-e> | somewhere between 8.10 and 9.2 I guess |
2023-07-17 16:53:44 +0200 | <geekosaur> | ghcup set ghc, or use ghcup tui to select it, or use -w with cabal to tell caball to use a specific version |
2023-07-17 16:54:05 +0200 | <maerwald> | or symlink it manually and cause havoc :D |
2023-07-17 16:54:08 +0200 | <geekosaur> | cabal install haddock -w ghc-8.10.7 |
2023-07-17 16:54:13 +0200 | <int-e> | 9.2 was still rather new then; 8.10 is the safest bet |
2023-07-17 16:54:52 +0200 | <maerwald> | ghcup run --ghc 8.10 -- cabal install haddock |
2023-07-17 16:55:24 +0200 | <int-e> | (not sure whether there is a convenient list of release dates, but with https://www.haskell.org/ghc/download.html it's just a click per version) |
2023-07-17 16:55:57 +0200 | <maerwald> | int-e: ghcup now supports adding release dates (which is used for nightlies only atm) |
2023-07-17 16:56:06 +0200 | zwro | yin |
2023-07-17 16:56:09 +0200 | <maerwald> | so anyone with too much time on their hands could provide a PR |
2023-07-17 16:56:37 +0200 | <jade[m]> | I believe this shows modification dates without click http://downloads.haskell.org/~ghc/9.6.1/ |
2023-07-17 16:56:47 +0200 | <int-e> | . o O ( I'm too busy procrastinating to do that ) |
2023-07-17 16:56:55 +0200 | <jade[m]> | oops, one directory back |
2023-07-17 16:57:16 +0200 | <maerwald> | yeah, I got a lot of time, but not a lot of energy (sick leave) |
2023-07-17 16:57:16 +0200 | <geekosaur> | only to 2020 |
2023-07-17 16:57:26 +0200 | <maerwald> | so am just bikeshedding on github issues |
2023-07-17 16:57:31 +0200 | <geekosaur> | but that may be good enough |
2023-07-17 16:57:40 +0200 | ss4 | (~wootehfoo@user/wootehfoot) (Ping timeout: 272 seconds) |
2023-07-17 16:57:43 +0200 | segfaultfizzbuzz | (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
2023-07-17 16:58:11 +0200 | misterfish | (~misterfis@87.215.131.102) (Ping timeout: 264 seconds) |
2023-07-17 16:58:55 +0200 | <nick4> | well i installed ghcup from brew install, and in .ghcup/bin it doesn't install a plain ghc/ghci version, but instead always symlinks to an executable in .ghcup/bin/ghc/{version} but does not provide a ghc/ghci without a version appended to the name, so how else can I run ghc/ghci without symlinking one of those binaries? |
2023-07-17 16:59:12 +0200 | <geekosaur> | that's what ghcup set is for |
2023-07-17 16:59:18 +0200 | <nick4> | exactly |
2023-07-17 16:59:26 +0200 | <geekosaur> | ghcup set ghc <version> |
2023-07-17 16:59:41 +0200 | <geekosaur> | or use ghcup tui to select a version |
2023-07-17 16:59:58 +0200 | <maerwald> | yeah, we need an introductory mode |
2023-07-17 17:00:17 +0200 | <maerwald> | https://github.com/haskell/ghcup-hs/pull/850 |
2023-07-17 17:00:49 +0200 | <nick4> | ah hell yeah that's way better than manual symlinking! XD |
2023-07-17 17:02:09 +0200 | <maerwald> | that's because you installed via brew and didn't go through the installation script that will do that for you |
2023-07-17 17:02:43 +0200 | <maerwald> | I'm not too excited of people packaging ghcup... means I can't control the entry point anymore. It's more support work |
2023-07-17 17:04:55 +0200 | <danse-nr3> | many technologies ship with an environment switcher. ghcup has become the haskell standard |
2023-07-17 17:05:14 +0200 | <danse-nr3> | which alternative would you suggest? |
2023-07-17 17:05:45 +0200 | <nick4> | ah ok, do you think it would be better to just uninstall through brew and then install through the script? |
2023-07-17 17:05:51 +0200 | <maerwald> | nick4: yes |
2023-07-17 17:05:54 +0200 | <nick4> | I'm just trying ot manage installations with a package manager |
2023-07-17 17:05:58 +0200 | <maerwald> | curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh |
2023-07-17 17:06:25 +0200 | <danse-nr3> | oh got it was just about packaging |
2023-07-17 17:06:33 +0200 | <maerwald> | danse-nr3: I'm not sure I'm following... with "I can't control the entry point anymore" I mean I'm the maintainer of ghcup and have to deal with fallout that packagers do |
2023-07-17 17:06:44 +0200 | <maerwald> | (e.g. brew packaging broke the vscode-haskell extension) |
2023-07-17 17:06:45 +0200 | <danse-nr3> | yeah apologies |
2023-07-17 17:07:20 +0200 | <maerwald> | because `ghcup upgrade --inplace` doesn't work anymore when using brew |
2023-07-17 17:07:32 +0200 | <maerwald> | may fail with permission denied |
2023-07-17 17:08:20 +0200 | danse-nr3 | (~francesco@151.43.154.166) (Remote host closed the connection) |
2023-07-17 17:08:28 +0200 | <maerwald> | or... the users run `ghcup upgrade` and got the PATH not in order |
2023-07-17 17:08:37 +0200 | <maerwald> | now they got 2 binaries |
2023-07-17 17:08:43 +0200 | danse-nr3 | (~francesco@151.43.154.166) |
2023-07-17 17:09:51 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2023-07-17 17:09:55 +0200 | mauke | (~mauke@user/mauke) |
2023-07-17 17:11:02 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2023-07-17 17:11:54 +0200 | califax | (~califax@user/califx) |
2023-07-17 17:13:25 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 17:13:43 +0200 | gurkenglas | (~gurkengla@dynamic-046-114-180-206.46.114.pool.telefonica.de) |
2023-07-17 17:14:32 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2023-07-17 17:15:22 +0200 | <probie> | Why do people package ghcup? If I'm a package maintainer, the last thing I want is software that upgrades itself and installs things outside the package manager, since I can't make any promises about the stability or security of it. |
2023-07-17 17:16:05 +0200 | <maerwald> | probie: ghcup doesn't update itself inplace by default |
2023-07-17 17:16:11 +0200 | <maerwald> | it has sane defaults |
2023-07-17 17:16:24 +0200 | <maerwald> | and many package managers provide e.g. rustup |
2023-07-17 17:16:35 +0200 | <maerwald> | there is something compelling about it, but |
2023-07-17 17:16:57 +0200 | califax | (~califax@user/califx) |
2023-07-17 17:17:35 +0200 | <int-e> | but for you as the maintainer it's a burden |
2023-07-17 17:17:37 +0200 | <maerwald> | probie: you can't make any guarantee about any application in your repository that connects to the internet (games, chat apps, whatever) |
2023-07-17 17:17:42 +0200 | <maerwald> | they all write to $HOME |
2023-07-17 17:19:21 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
2023-07-17 17:19:34 +0200 | <maerwald> | from a security perspective, I think ghcup is better than (most) package repositories: it prefers GHC upstream bindists whenever possible. Those are built and verified by GHC devs. |
2023-07-17 17:20:06 +0200 | <maerwald> | security is established through sha256 checksums and gpg signatures |
2023-07-17 17:20:22 +0200 | <maerwald> | https://www.haskell.org/ghcup/guide/#gpg-verification |
2023-07-17 17:21:00 +0200 | <maerwald> | but no one ever asked me for my GPG key... so I think no one cares about security |
2023-07-17 17:21:20 +0200 | <maerwald> | they'll just believe whatever someone uploaded to that website |
2023-07-17 17:22:08 +0200 | <maerwald> | I think people rather rely on public shaming |
2023-07-17 17:22:52 +0200 | <maerwald> | give trust to random strangers and shame them if they f*ck up :D |
2023-07-17 17:23:18 +0200 | <nick4> | lol I'm definitely doing this wrong, but you may find it humours that I was jesting about C headers before . . . . `gcc' failed in phase `C Compiler'. (Exit code: 1) . . . fatal error: 'ffitarget_arm64.h' file not found . . . no wonder why you didn't recommend this XD |
2023-07-17 17:23:35 +0200 | <maerwald> | nick4: darwin aarch64? |
2023-07-17 17:23:41 +0200 | <nick4> | Monterey |
2023-07-17 17:23:49 +0200 | <maerwald> | what architecture |
2023-07-17 17:23:58 +0200 | <nick4> | M1 |
2023-07-17 17:24:08 +0200 | <maerwald> | which ghc version |
2023-07-17 17:24:08 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:f161:e9a5:5038:6be6) |
2023-07-17 17:24:12 +0200 | xff0x | (~xff0x@2405:6580:b080:900:28aa:9c66:15d:15fc) (Ping timeout: 240 seconds) |
2023-07-17 17:24:24 +0200 | Pickchea | (~private@user/pickchea) |
2023-07-17 17:24:31 +0200 | <nick4> | right now I've downgraded to 9.2.1 |
2023-07-17 17:24:46 +0200 | <maerwald> | this is a known bug |
2023-07-17 17:24:54 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
2023-07-17 17:24:58 +0200 | <maerwald> | https://gitlab.haskell.org/ghc/ghc/-/issues/20592#note_391266 |
2023-07-17 17:25:02 +0200 | <nick4> | yeah I really hate macs man |
2023-07-17 17:25:20 +0200 | <nick4> | wouldn't have this thing if my boss didn't buy it for me |
2023-07-17 17:25:22 +0200 | <maerwald> | export C_INCLUDE_PATH="`xcrun --show-sdk-path`/usr/include/ffi" |
2023-07-17 17:25:38 +0200 | <maerwald> | but it's fixed in 9.2.3+ |
2023-07-17 17:26:17 +0200 | xff0x | (~xff0x@ai086045.d.east.v6connect.net) |
2023-07-17 17:26:42 +0200 | <nick4> | how did you find that so fast? |
2023-07-17 17:27:13 +0200 | <maerwald> | my brain is filled with GHC bugs |
2023-07-17 17:27:39 +0200 | <maerwald> | most of them are on mac |
2023-07-17 17:27:42 +0200 | <nick4> | rofl |
2023-07-17 17:28:17 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:f161:e9a5:5038:6be6) (Ping timeout: 245 seconds) |
2023-07-17 17:28:33 +0200 | <maerwald> | I should take more sick leave... I feel more productive that way |
2023-07-17 17:31:04 +0200 | <nick4> | fuck, all that downgrading and I get the same failure to build from the warp-tls dependency . . . |
2023-07-17 17:31:21 +0200 | <maerwald> | what failure |
2023-07-17 17:33:25 +0200 | Ashkan | (~Ashkan@a119011.upc-a.chello.nl) |
2023-07-17 17:34:19 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 17:35:23 +0200 | <Ashkan> | Hi guys. I have this rather simple function : |
2023-07-17 17:35:23 +0200 | <Ashkan> | ``` |
2023-07-17 17:35:24 +0200 | <Ashkan> | size :: SomeTypeClass a => a -> Float |
2023-07-17 17:35:24 +0200 | <Ashkan> | size x = x * blockSize |
2023-07-17 17:35:25 +0200 | <Ashkan> | ``` |
2023-07-17 17:35:25 +0200 | <Ashkan> | `blockSize` is a `Float` and I need `size` to work with essentially every number as long as they are not imaginary or anything fancy: Integer, Int, Double etc. Ideas ? |
2023-07-17 17:35:45 +0200 | <maerwald> | SomeTypeClass? |
2023-07-17 17:36:22 +0200 | <Ashkan> | that is part of the question. I don't know which type class but I assume there must be a type class ? |
2023-07-17 17:37:02 +0200 | <Ashkan> | maybe I should define one and then instance it for those type I want to work with :thinking: Would that be too much ? |
2023-07-17 17:37:37 +0200 | <geekosaur> | Ashkan, I think you've got typeclasses backwards, as is common for people coming from OOP |
2023-07-17 17:37:47 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Remote host closed the connection) |
2023-07-17 17:38:05 +0200 | <geekosaur> | blockSize will have some specific type; x must therefore have the same type, it cannot be "any numeric type" |
2023-07-17 17:38:13 +0200 | <geekosaur> | :t (*) |
2023-07-17 17:38:14 +0200 | <lambdabot> | Num a => a -> a -> a |
2023-07-17 17:38:22 +0200 | <probie> | You probably want `Real`. `size x = (realToFrac x) * blockSize` |
2023-07-17 17:38:25 +0200 | <geekosaur> | they all have to be the same `a` |
2023-07-17 17:38:30 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) |
2023-07-17 17:38:42 +0200 | <probie> | s/probably/may/ |
2023-07-17 17:38:50 +0200 | <mauke> | :t \x -> toEnum (fromEnum x) * (2 :: Float) |
2023-07-17 17:38:51 +0200 | <lambdabot> | Enum a => a -> Float |
2023-07-17 17:38:58 +0200 | chele | (~chele@user/chele) (Remote host closed the connection) |
2023-07-17 17:39:05 +0200 | mauke | runs away |
2023-07-17 17:39:08 +0200 | <Ashkan> | Think of it this way: I need to express that there is a block-size and then I have full-number blocks (like 3 blocks, or 10 blocks) and half blocks (3.5) and partial blocks (1/3rd of a bock or 3.56 of a block) and they all translate to a screen size by multiplying them with the block-size. How do I model that ? |
2023-07-17 17:39:14 +0200 | <probie> | > toEnum (fromEnum (3.2 :: Float)) |
2023-07-17 17:39:15 +0200 | <lambdabot> | *Exception: Prelude.Enum.().toEnum: bad argument |
2023-07-17 17:39:19 +0200 | <probie> | :( |
2023-07-17 17:39:53 +0200 | <mauke> | > toEnum (fromEnum 3.2) * (2 :: Float) |
2023-07-17 17:39:54 +0200 | <lambdabot> | 6.0 |
2023-07-17 17:40:24 +0200 | <mauke> | Ashkan: Rational, maybe? |
2023-07-17 17:41:14 +0200 | <Ashkan> | geekosaur they don;t need to be all `a`. `size` outputs `Float`. It's argument, however, could be anything: whole numbers, fractional numbers, Doubles ... anything except non-real number or fancy stuff |
2023-07-17 17:41:57 +0200 | <geekosaur> | (*) requires both parameters and its result to be the same type |
2023-07-17 17:42:09 +0200 | <geekosaur> | you must do a conversion somewhere and it must be explicit |
2023-07-17 17:42:12 +0200 | <mauke> | why are you using Float? |
2023-07-17 17:43:01 +0200 | <nick4> | https://paste.tomsmeding.com/pIaBfPzw |
2023-07-17 17:43:03 +0200 | <nick4> | there's the error |
2023-07-17 17:43:18 +0200 | <probie> | > (0.1 + (0.2 :: Double), 0.1 + (0.2 :: Float)) -- <joke>It's the more correct type</joke> |
2023-07-17 17:43:19 +0200 | <lambdabot> | (0.30000000000000004,0.3) |
2023-07-17 17:43:30 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
2023-07-17 17:43:48 +0200 | <Ashkan> | mauke the `size` output is used with gloss functions which use `Float` but on a more conceptual level :the output is the screen size of the blocks in question, hence its either `Float` or `Double` |
2023-07-17 17:43:50 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
2023-07-17 17:44:17 +0200 | <mauke> | my screen uses pixels |
2023-07-17 17:44:34 +0200 | <mauke> | I've never seen floating points |
2023-07-17 17:44:48 +0200 | <maerwald> | nick4: try using 3.4.0 |
2023-07-17 17:44:57 +0200 | <maerwald> | it uses the new crypton package, which might have fixedit |
2023-07-17 17:45:19 +0200 | <c_wraith> | Eh. It's not wrong to model the screen as point samples of some continuous function, at least when doing graphics. |
2023-07-17 17:45:32 +0200 | <geekosaur> | mauke, opengl (gloss) doesn't do pixels |
2023-07-17 17:46:09 +0200 | <int-e> | . o O ( fragments ) |
2023-07-17 17:46:16 +0200 | <mauke> | maybe someone should port it to computer screens |
2023-07-17 17:46:18 +0200 | <c_wraith> | but Float's lack of precision when magnitudes get a little big has led to all sorts of bugs in all sorts of games |
2023-07-17 17:46:34 +0200 | geekosaur | has flashbacks to DPS |
2023-07-17 17:47:14 +0200 | <mauke> | ... but first we need to talk about parallel universes |
2023-07-17 17:47:38 +0200 | <Square> | I'm playing with ":kind" here. Can i somehow write the type function (->) ((,) Int) wo defining the actual parameterized type? |
2023-07-17 17:47:39 +0200 | <probie> | Ashkan: Whether or not it's the right thing to do, `size :: Real a => a -> Float; size x = realToFrac x * blockSize` will do what you've asked, assuming `blockSize` is a `Float` (i.e take Int, Integer, Float, Double, Word etc.) |
2023-07-17 17:48:38 +0200 | <Ashkan> | probie Thank you ! that answers my question. |
2023-07-17 17:48:48 +0200 | <Square> | (...as I do with function composition using ":t") |
2023-07-17 17:49:08 +0200 | <c_wraith> | A lot of games model time by converting some system timer that reports uptime into a number of seconds. Turns out that if you then convert that timer into a Float, after about 6 days, updates to it are no longer of sufficient granularity to update at 60 Hz. This has caused bugs in a number of games. |
2023-07-17 17:50:13 +0200 | danse-nr3_ | (~francesco@151.57.135.118) |
2023-07-17 17:50:17 +0200 | danse-nr3 | (~francesco@151.43.154.166) (Read error: Connection reset by peer) |
2023-07-17 17:50:56 +0200 | <Ashkan> | Now another question. How do I properly model this concept of "converting to screen units" ? the key point is : there are a few things (expressed as types) for all of which it makes sense and is required to get the screen-size. Some of them are used-defined like `newtype Col = Col Int` or maybe even more complex. Does a type-class fit here ? |
2023-07-17 17:50:59 +0200 | <c_wraith> | A lot of games model world coordinates as floats. When the world gets too big, this results in objects popping between locations, as the minimum available precision becomes a visible gap |
2023-07-17 17:53:04 +0200 | hellwolf | (~user@5b3d-5cac-bb28-d008-0f00-4d40-07d0-2001.sta.estpak.ee) |
2023-07-17 17:54:37 +0200 | <hellwolf> | Who here has experience to share regarding how to kick start a local haskell user group? How many people needed to have the 1st event, what topics, what format, etc? I know this is too general a question, but still would like to just hear some stories... |
2023-07-17 17:55:31 +0200 | <geekosaur> | that sounds like a good thing to ask on the discourse |
2023-07-17 17:56:04 +0200 | <geekosaur> | c_wraith, while your observations are correct, Ashkan is using gloss which uses Float |
2023-07-17 17:56:17 +0200 | <geekosaur> | rewriting it is probably out of scope |
2023-07-17 17:56:26 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 17:57:19 +0200 | <Ashkan> | It is a very stripped down mine sweeper but interesting to know about how float will cause all those bugs ! |
2023-07-17 17:58:47 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2023-07-17 17:58:55 +0200 | <c_wraith> | Technically, Double has all the same bugs. But you're way less likely to encounter them thanks to the much larger precision |
2023-07-17 17:59:31 +0200 | <c_wraith> | Still, ideally you'd be doing those tasks with some sort of fixed-point numbers, where precision doesn't depend on the magnitude |
2023-07-17 18:00:26 +0200 | <c_wraith> | (And that have good hardware support, and good language support... it's not happening any time soon) |
2023-07-17 18:00:49 +0200 | <mauke> | > head [ n | n <- [0 ..], let x = fromInteger (1 `shiftL` n) :: Float, x + 1 == x ] |
2023-07-17 18:00:50 +0200 | <lambdabot> | 24 |
2023-07-17 18:00:55 +0200 | <mauke> | > head [ n | n <- [0 ..], let x = fromInteger (1 `shiftL` n) :: Double, x + 1 == x ] |
2023-07-17 18:00:56 +0200 | Ashkan | (~Ashkan@a119011.upc-a.chello.nl) (Quit: Client closed) |
2023-07-17 18:00:56 +0200 | <lambdabot> | 53 |
2023-07-17 18:01:07 +0200 | <mauke> | that sounds about right |
2023-07-17 18:02:05 +0200 | <c_wraith> | more than double the mantissa size! |
2023-07-17 18:02:09 +0200 | <mauke> | well, everybody knows that home computers can't handle integers larger than 32 bits, so you should be safe using Double |
2023-07-17 18:02:21 +0200 | <c_wraith> | ah, the javascript approach |
2023-07-17 18:03:27 +0200 | <mauke> | ... cribbed from perl |
2023-07-17 18:03:33 +0200 | <c_wraith> | I like that javascript has bitwise operators that are specified as "convert the arguments to a 32-bit integer, do the bitwise operation, convert the result back to a double" |
2023-07-17 18:04:30 +0200 | <mauke> | except in the mean time, perl switched to keeping the internal representation as an integer wherever possible |
2023-07-17 18:04:38 +0200 | <jade[m]> | c_wraith: Q_sqrt "evil bit hack" moment |
2023-07-17 18:05:34 +0200 | dhil | (~dhil@78.45.150.83.ewm.ftth.as8758.net) |
2023-07-17 18:05:38 +0200 | <c_wraith> | jade[m]: Oh. No, I meant convert the number to a 32-bit integer by rounding/clamping. Not doing a bitwise conversion, like that hack does. |
2023-07-17 18:05:47 +0200 | <jade[m]> | ahhhhh okay |
2023-07-17 18:06:07 +0200 | <mauke> | s/rounding/truncating/ |
2023-07-17 18:06:10 +0200 | <jade[m]> | what are those useful for? |
2023-07-17 18:06:27 +0200 | <c_wraith> | When you want to pretend you have an integer and do bitwise operations |
2023-07-17 18:06:43 +0200 | <c_wraith> | despite javascript only having doubles |
2023-07-17 18:06:53 +0200 | <jade[m]> | ahh I see |
2023-07-17 18:06:59 +0200 | <jade[m]> | js fuckery |
2023-07-17 18:07:21 +0200 | <danse-nr3_> | Square what do you mean? |
2023-07-17 18:07:34 +0200 | <mauke> | (I'm serious about the perl part, btw: perl's internal type for floating-point numbers is still called NV (for "numeric value")) |
2023-07-17 18:07:47 +0200 | <mauke> | probably the fast inverse square root hack |
2023-07-17 18:08:03 +0200 | <[exa]> | hellwolf: do you have some user group communication platform/link/base? once that is established just share the link here and you'll see. :D |
2023-07-17 18:08:13 +0200 | nyc | (~nyc@2603-7000-a106-2fb5-0000-0000-0000-1f21.res6.spectrum.com) (Read error: Connection reset by peer) |
2023-07-17 18:08:45 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2023-07-17 18:09:14 +0200 | <jade[m]> | https://www.youtube.com/watch?v=p8u_k2LIZyo / https://en.m.wikipedia.org/wiki/Fast_inverse_square_root |
2023-07-17 18:09:55 +0200 | <mauke> | I'd like to strike my last remark. I've accidentally crossed the conversation streams |
2023-07-17 18:10:14 +0200 | <Square> | danse-nr3_, I meant that just as I can do ':t show . (3*)' Id hoped I could do ':k (->) ((,) Int)' and it magically sorted out the resulting type function/kind. =D |
2023-07-17 18:10:34 +0200 | <mauke> | you'd need a type-level compose |
2023-07-17 18:10:46 +0200 | <Square> | oh ok |
2023-07-17 18:11:07 +0200 | <danse-nr3_> | wow i received a message from lambdabot from two days ago |
2023-07-17 18:11:26 +0200 | <mauke> | type C f g x = f (g x), except that doesn't help you because C (->) ((,) Int) is malformed |
2023-07-17 18:12:27 +0200 | <Square> | oh ok |
2023-07-17 18:13:34 +0200 | <jade[m]> | unrelated, but I recently realized that I really dislike how TupleSections look |
2023-07-17 18:14:00 +0200 | remedan | (~remedan@ip-94-112-0-18.bb.vodafone.cz) (Ping timeout: 252 seconds) |
2023-07-17 18:15:47 +0200 | remedan | (~remedan@ip-94-112-0-18.bb.vodafone.cz) |
2023-07-17 18:15:48 +0200 | <probie> | I hate all three of `flip (,) x`, `\y -> (y, x)` and `(,x)` |
2023-07-17 18:17:01 +0200 | <jade[m]> | yeah that's fair |
2023-07-17 18:17:01 +0200 | <danse-nr3_> | `(,x)` looks nice and readable |
2023-07-17 18:17:10 +0200 | <jade[m]> | just don't use tuples tbh |
2023-07-17 18:17:16 +0200 | <jade[m]> | (half joking) |
2023-07-17 18:18:26 +0200 | <probie> | :t (,42,,) |
2023-07-17 18:18:27 +0200 | <lambdabot> | Num t1 => t2 -> t3 -> t4 -> (t2, t1, t3, t4) |
2023-07-17 18:20:17 +0200 | qqq | (~qqq@92.43.167.61) (Remote host closed the connection) |
2023-07-17 18:20:32 +0200 | <probie> | :t (,(,(,(,42)))) -- I hate that they make parens extra meaningful |
2023-07-17 18:20:33 +0200 | <lambdabot> | Num t1 => t2 -> (t2, t3 -> (t3, t4 -> (t4, t5 -> (t5, t1)))) |
2023-07-17 18:20:53 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
2023-07-17 18:20:57 +0200 | <probie> | :t (, , , , 42) |
2023-07-17 18:20:58 +0200 | <lambdabot> | Num t1 => t2 -> t3 -> t4 -> t5 -> (t2, t3, t4, t5, t1) |
2023-07-17 18:20:59 +0200 | pickleju1ce | (~root@172.56.217.212) |
2023-07-17 18:21:01 +0200 | <jade[m]> | that's truly disgusting |
2023-07-17 18:21:09 +0200 | <mauke> | you sound like you'd enjoy perl |
2023-07-17 18:21:35 +0200 | arahael_ | (~arahael@124-149-31-4.dyn.iinet.net.au) |
2023-07-17 18:21:41 +0200 | <mauke> | in perl, (1,(((2),3),4)) and 1,2,3,4 mean the same thing |
2023-07-17 18:21:49 +0200 | <mauke> | (because , is list concatenation) |
2023-07-17 18:23:38 +0200 | picklejuice | (~root@c-73-196-164-60.hsd1.nj.comcast.net) (Ping timeout: 246 seconds) |
2023-07-17 18:24:31 +0200 | hiredman | (~hiredman@frontier1.downey.family) |
2023-07-17 18:24:41 +0200 | <probie> | I can't make lambdabot demonstrate it, but I also hate that you're allowed to put newlines into tuple sections |
2023-07-17 18:26:11 +0200 | <monochrom> | You're allowed to put newlines into almost everywhere. |
2023-07-17 18:26:20 +0200 | arahael_ | (~arahael@124-149-31-4.dyn.iinet.net.au) (Ping timeout: 272 seconds) |
2023-07-17 18:26:30 +0200 | <jade[m]> | as long as the indentation on the next line is right |
2023-07-17 18:26:34 +0200 | <mauke> | I avoid newlines by programming in the whitespace-free subset of Haskell |
2023-07-17 18:27:02 +0200 | <probie> | Yes, but it means that people from languages that allow trailing commas get a rather weird type error |
2023-07-17 18:27:36 +0200 | <monochrom> | This allows a religious cult of code formatting that minimizes line-based diffs. Perhaps that's what you hate. :) |
2023-07-17 18:28:44 +0200 | <jade[m]> | very evil |
2023-07-17 18:28:54 +0200 | <int-e> | > let{fibs(x)(y)=x:fibs(y)(x+y)}in{--}fibs(0)(1) |
2023-07-17 18:28:55 +0200 | <lambdabot> | [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,... |
2023-07-17 18:29:30 +0200 | titibandit | (~titibandi@user/titibandit) (Remote host closed the connection) |
2023-07-17 18:29:43 +0200 | <mauke> | baeuaeutiful |
2023-07-17 18:29:50 +0200 | <int-e> | mauke: do you think using {--} is cheating? |
2023-07-17 18:29:56 +0200 | <probie> | > let{fibs(x)y=x:fibs(y)(x+y)}in0+fibs(0)1 |
2023-07-17 18:29:58 +0200 | <lambdabot> | <hint>:1:29: error: parse error on input ‘in0’ |
2023-07-17 18:30:16 +0200 | <probie> | right, that turns it into an identifier |
2023-07-17 18:30:29 +0200 | <mauke> | int-e: no, but you could've used ( ) instead, which is shorter |
2023-07-17 18:30:30 +0200 | <probie> | > let{fibs(x)y=x:fibs(y)(x+y)}in(fibs(0)1) |
2023-07-17 18:30:32 +0200 | <lambdabot> | [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,... |
2023-07-17 18:30:39 +0200 | <int-e> | probie: ohright |
2023-07-17 18:30:44 +0200 | <int-e> | mauke: err |
2023-07-17 18:30:51 +0200 | <int-e> | mauke: (that was for you) |
2023-07-17 18:31:17 +0200 | <int-e> | so silly too since I used so many parentheses already |
2023-07-17 18:31:35 +0200 | <probie> | > let{fibs(x)y=y:fibs(x+y)y}in(fibs(1)0) |
2023-07-17 18:31:36 +0200 | <lambdabot> | [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0... |
2023-07-17 18:31:40 +0200 | <monochrom> | let kt = flip take in kt"abcdefg"2 |
2023-07-17 18:31:44 +0200 | <monochrom> | err |
2023-07-17 18:31:46 +0200 | <monochrom> | > let kt = flip take in kt"abcdefg"2 |
2023-07-17 18:31:47 +0200 | <lambdabot> | "ab" |
2023-07-17 18:32:01 +0200 | <int-e> | apparently `data(A)=B|C` is legal? |
2023-07-17 18:32:09 +0200 | <jade[m]> | lambdabot: iccanobif |
2023-07-17 18:32:25 +0200 | <int-e> | so the white-space-free fragment is shaping up to be rather big even without comments |
2023-07-17 18:32:52 +0200 | <probie> | > let{fibs(x)y=y:fibs(x+y)x}in(fibs(1)0) |
2023-07-17 18:32:54 +0200 | <lambdabot> | [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,... |
2023-07-17 18:34:25 +0200 | <int-e> | with PackageImports you can even foo import"base"Data.List |
2023-07-17 18:34:34 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2023-07-17 18:34:40 +0200 | <mauke> | ah, but how do you enable PackageImports? |
2023-07-17 18:34:52 +0200 | <int-e> | I don't know yet |
2023-07-17 18:35:06 +0200 | <probie> | cheat and pass it as an argument to GHC |
2023-07-17 18:35:50 +0200 | <int-e> | Sorry, that was poor style. I meant "this is left as an exercise to the reader". |
2023-07-17 18:36:01 +0200 | <jade[m]> | the command and args to ghc itself also may not contain whitespace |
2023-07-17 18:36:26 +0200 | <monochrom> | x`fibs`y=y:(x+y)`fibs`x :) |
2023-07-17 18:36:35 +0200 | <geekosaur> | {-#OPTIONS_GHC-XPackageImportds#-} |
2023-07-17 18:36:39 +0200 | <geekosaur> | -d |
2023-07-17 18:37:36 +0200 | <Square> | Free monads seems hyped in that they can be give you analyzable trace of a computation. I wonder if there are any examples libs / apps using it that way. I mostly find illustrative examples of Free rather than actual application of it. |
2023-07-17 18:38:11 +0200 | <monochrom> | Use C instead of shell. execlp("ghc","-XPackageImports",(char*)NULL); no space at all :) |
2023-07-17 18:38:25 +0200 | <Square> | ie Free tutorials- |
2023-07-17 18:38:40 +0200 | <monochrom> | (I am teaching fork-exec in a course right now :) ) |
2023-07-17 18:39:30 +0200 | <monochrom> | https://hackage.haskell.org/package/free-game is a game library that uses a free monad. |
2023-07-17 18:39:52 +0200 | <Square> | thanks |
2023-07-17 18:40:05 +0200 | <geekosaur> | you can rev-deps any free monad package such as prompt |
2023-07-17 18:40:10 +0200 | <geekosaur> | or freer or etc. |
2023-07-17 18:40:23 +0200 | <geekosaur> | (packdeps.haskellers.com/revdeps) |
2023-07-17 18:40:44 +0200 | <Square> | thans |
2023-07-17 18:41:04 +0200 | <int-e> | . o O ( echo${IFS}a${IFS}b${IFS}c ) |
2023-07-17 18:42:05 +0200 | <int-e> | (there is nothing wrong with using more than one whitespace character per argument) |
2023-07-17 18:42:11 +0200 | <geekosaur> | sorry that's /reverse not /revdeps |
2023-07-17 18:42:22 +0200 | <mauke> | {echo,hello,world} |
2023-07-17 18:42:24 +0200 | <geekosaur> | also I think flora.pm provides reverse dependencies |
2023-07-17 18:42:37 +0200 | CrunchyFlakes | (~pi4@ip9234cf0c.dynamic.kabel-deutschland.de) |
2023-07-17 18:42:43 +0200 | <int-e> | mauke: hmm interesting |
2023-07-17 18:43:37 +0200 | <int-e> | oh duh |
2023-07-17 18:44:01 +0200 | <int-e> | (I know that syntax, but I have probably never used it in isolation like that) |
2023-07-17 18:44:02 +0200 | pickleju1ce | (~root@172.56.217.212) (Ping timeout: 250 seconds) |
2023-07-17 18:44:08 +0200 | <geekosaur> | heh |
2023-07-17 18:44:19 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) |
2023-07-17 18:44:59 +0200 | picklejuice | (~root@172.56.218.140) |
2023-07-17 18:49:31 +0200 | <probie> | int-e: You've probably seen it prefixed like in `mv foo{,.old}` |
2023-07-17 18:50:35 +0200 | <int-e> | probie: Among other things, yes. I'm surprised I didn't recognize it because I actually use it quite a lot. I think the reason is that I usually don't think much about what it actually expands too |
2023-07-17 18:50:39 +0200 | <int-e> | *to |
2023-07-17 18:51:51 +0200 | <int-e> | or maybe I forgot that the command name is just another word in the command line |
2023-07-17 18:52:06 +0200 | <int-e> | whatever |
2023-07-17 18:52:56 +0200 | <Square> | geekosaur, i found it |
2023-07-17 18:53:17 +0200 | <int-e> | so I think whitespace- and comment-free Haskell is quite adequte for programming, but I don't think you can name modules (`module Foo where`) |
2023-07-17 18:54:18 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Remote host closed the connection) |
2023-07-17 18:55:01 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 18:55:18 +0200 | <probie> | But you can run definitely write little programs like `{runhaskell,-XPackageImports}<<<'import"base"Data.List;main=putStrLn(sort("Hello\x20World"))'` |
2023-07-17 18:55:52 +0200 | <geekosaur> | did you catch how to turn on PackageImports in the file? |
2023-07-17 18:55:54 +0200 | <mauke> | \x20? how gauche |
2023-07-17 18:56:07 +0200 | <geekosaur> | concat 😛 |
2023-07-17 18:56:34 +0200 | <mauke> | \32, baby |
2023-07-17 18:56:41 +0200 | <int-e> | probie: right, and you can use let{...}in(...) to switch to explicit layout for as many local function definitions as you like |
2023-07-17 18:57:06 +0200 | <geekosaur> | \& is gauche too 😛 |
2023-07-17 18:57:15 +0200 | <geekosaur> | \32\&5 |
2023-07-17 18:57:17 +0200 | <int-e> | geekosaur: I'm debating whether a pragma is a comment |
2023-07-17 18:58:26 +0200 | <geekosaur> | I'd say it isn't. I get syntax errors for using one in the wrong place (try it with e.g. {-# COMPLETE #-}) |
2023-07-17 19:00:22 +0200 | <geekosaur> | btw, re {} there's another confusion in that { means two different things |
2023-07-17 19:00:35 +0200 | <geekosaur> | {foo,bar} vs. {;a;b;} |
2023-07-17 19:00:52 +0200 | <geekosaur> | one's a glob, the other's a command list |
2023-07-17 19:01:30 +0200 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
2023-07-17 19:01:49 +0200 | <Hecate> | Unicorn_Princess: hohai |
2023-07-17 19:01:50 +0200 | <ncf> | {;a;b;} is nothing |
2023-07-17 19:02:02 +0200 | <probie> | An unrecognised pragma is only a warning though |
2023-07-17 19:02:05 +0200 | <ncf> | i think you need spaces to disambiguate |
2023-07-17 19:03:07 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
2023-07-17 19:03:43 +0200 | <geekosaur> | probie, https://paste.tomsmeding.com/HYpvaxKe |
2023-07-17 19:04:19 +0200 | <geekosaur> | (serious example, I am still trying to put together a promposal and found out I couldn't reuse that pragma with backward compatibility) |
2023-07-17 19:04:41 +0200 | <geekosaur> | -m |
2023-07-17 19:04:47 +0200 | <probie> | Sure, but `{runhaskell,-XPackageImports}<<<'module{-##-}Main{-#Deprecated"a"#-}where;import"base"Data.List;main=putStrLn(sort("Hello\x20World"))'` runs |
2023-07-17 19:05:40 +0200 | <geekosaur> | int-e asked if pragmas counted as comments, at least one does not because you get a syntax error |
2023-07-17 19:05:46 +0200 | <Unicorn_Princess> | Hecate, o/ |
2023-07-17 19:07:33 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Remote host closed the connection) |
2023-07-17 19:09:49 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-07-17 19:12:04 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2023-07-17 19:14:06 +0200 | bratwurst | (~dfadsva@2604:3d09:207f:f650::c680) |
2023-07-17 19:16:15 +0200 | ripspin | (~chatzilla@1.145.214.25) (Remote host closed the connection) |
2023-07-17 19:19:32 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 272 seconds) |
2023-07-17 19:21:32 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) (Remote host closed the connection) |
2023-07-17 19:22:15 +0200 | mizlan | (~mizlan@c-174-62-68-33.hsd1.ca.comcast.net) |
2023-07-17 19:23:42 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 246 seconds) |
2023-07-17 19:24:50 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Quit: λ) |
2023-07-17 19:26:02 +0200 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2023-07-17 19:27:12 +0200 | mango | (~finn@176-151-21-224.abo.bbox.fr) |
2023-07-17 19:28:23 +0200 | thyriaen | (~thyriaen@2a01:aea0:dd4:6659:6245:cbff:fe9f:48b1) (Quit: Leaving) |
2023-07-17 19:32:49 +0200 | <probie> | cat<<<'{-#OPTIONS_GHC-XPackageImports#-}import"base"System.Environment;main=do{[input,_,output]<-getArgs;writeFile(output)"module\x20";readFile(input)>>=appendFile(output).drop(34)}'>AddModule.hs;{ghc,--make,AddModule.hs,-o,addModule};{runhaskell,-F}<<<'{-#OPTIONS_GHC-pgmF=./addModule#-}Main{-#Warning"SpacelessMode"#-}where;main=putStrLn"hi"' |
2023-07-17 19:32:59 +0200 | <probie> | this almost definitely counts as cheating |
2023-07-17 19:33:30 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 19:35:25 +0200 | <probie> | namely, write a source preprocessor that adds `module ` to the start of files in the space-free dialect of Haskell, and then run it on a source file that starts with the module name. It breaks when there are other pragmas at the start of the file, but that's easily fixed |
2023-07-17 19:38:02 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Ping timeout: 258 seconds) |
2023-07-17 19:40:30 +0200 | <[exa]> | probie: still better than perl |
2023-07-17 19:40:55 +0200 | mango | (~finn@176-151-21-224.abo.bbox.fr) (Quit: WeeChat 2.8) |
2023-07-17 19:45:30 +0200 | trev | (~trev@user/trev) (Quit: trev) |
2023-07-17 19:55:34 +0200 | ensyde | (~ensyde@2600:381:4229:8b04:2d50:ec6d:ab72:78a2) |
2023-07-17 19:58:31 +0200 | driib | (~driib@vmi931078.contaboserver.net) (Quit: The Lounge - https://thelounge.chat) |
2023-07-17 19:59:10 +0200 | driib | (~driib@vmi931078.contaboserver.net) |
2023-07-17 20:00:18 +0200 | ensyde | (~ensyde@2600:381:4229:8b04:2d50:ec6d:ab72:78a2) (Quit: WeeChat 4.0.1) |
2023-07-17 20:04:34 +0200 | Guest8732 | (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) |
2023-07-17 20:15:34 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) |
2023-07-17 20:16:09 +0200 | dibblego | (~dibblego@116-255-1-114.ip4.superloop.au) |
2023-07-17 20:16:09 +0200 | dibblego | (~dibblego@116-255-1-114.ip4.superloop.au) (Changing host) |
2023-07-17 20:16:09 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-17 20:17:06 +0200 | danse-nr3_ | (~francesco@151.57.135.118) (Ping timeout: 245 seconds) |
2023-07-17 20:26:50 +0200 | ncf | (~n@monade.li) (Quit: Fairfarren.) |
2023-07-17 20:27:13 +0200 | ncf | (~n@monade.li) |
2023-07-17 20:29:02 +0200 | <hellwolf> | [exa]: yea, I have a meetup page, it has less than 10 members atm, and many of them know each other :D Comparing to the one in Helsinki across the pond, there is 100-200 ppl... |
2023-07-17 20:29:32 +0200 | <hellwolf> | crazy question: can GHCJS cross compile GHC itself? (probably not, but just asking, why not) |
2023-07-17 20:30:16 +0200 | codaraxis | (~codaraxis@user/codaraxis) |
2023-07-17 20:30:42 +0200 | <Hecate> | hellwolf: latest GHC or a specific, outdated version of GHC? Also, GHCJS *specifically* or the JS backend of GHC? |
2023-07-17 20:31:01 +0200 | <hellwolf> | latest JS backend of GHC, and latest GHC |
2023-07-17 20:34:00 +0200 | <geekosaur> | js backend of ghc is a tech demo as yet |
2023-07-17 20:34:14 +0200 | <geekosaur> | so my guess is not |
2023-07-17 20:34:45 +0200 | gmg | (~user@user/gehmehgeh) |
2023-07-17 20:36:02 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2023-07-17 20:37:51 +0200 | <hellwolf> | Would... would it ever? |
2023-07-17 20:38:13 +0200 | dumptruckman | (~dumptruck@143-42-239-71.ip.linodeusercontent.com) (Quit: ZNC - https://znc.in) |
2023-07-17 20:38:16 +0200 | <hellwolf> | imaging running GHC in browser without using a cloud service paid by someone who doesn't have the money |
2023-07-17 20:38:27 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Quit: λ) |
2023-07-17 20:38:29 +0200 | <geekosaur> | I don't see wy not, it'll just take time and more work |
2023-07-17 20:39:00 +0200 | <geekosaur> | that said, I imagine the resule would be slow as molasses |
2023-07-17 20:39:05 +0200 | <geekosaur> | *result |
2023-07-17 20:42:08 +0200 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2023-07-17 20:42:26 +0200 | dibblego | (~dibblego@116-255-1-114.ip4.superloop.au) |
2023-07-17 20:42:26 +0200 | dibblego | (~dibblego@116-255-1-114.ip4.superloop.au) (Changing host) |
2023-07-17 20:42:26 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2023-07-17 20:43:39 +0200 | Nosrep | (~Nosrep@user/nosrep) (Remote host closed the connection) |
2023-07-17 20:44:03 +0200 | dumptruckman | (~dumptruck@143-42-184-47.ip.linodeusercontent.com) |
2023-07-17 20:45:01 +0200 | Nosrep | (~Nosrep@user/nosrep) |
2023-07-17 20:45:20 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14::ac08) |
2023-07-17 20:47:01 +0200 | <monochrom> | This is what you get for FOSS. (Oh don't get me wrong, paid software has the opposite problems...) |
2023-07-17 20:47:14 +0200 | <monochrom> | (So, this is what you get for human nature.) |
2023-07-17 20:47:39 +0200 | <geekosaur> | I strongly suspect this is being funded and someone wanted to see results early so got a tech demo |
2023-07-17 20:48:59 +0200 | deb776[m] | (~deb776ted@2001:470:69fc:105::3:84c5) |
2023-07-17 20:49:06 +0200 | <[exa]> | hellwolf: re ghcjs, actually I saw some talk which kinda demonstrated it, iirc from zurihac, but maybe that was the wasm backend |
2023-07-17 20:49:21 +0200 | <monochrom> | That sounds exactly how I work. Before the deadline for the thesis proposal: intensive work and impressive proposal. After submitting that: Yeah let's chill out on IRC and do nothing. >:) |
2023-07-17 20:49:29 +0200 | <[exa]> | hellwolf: btw it's stockholm then? :D |
2023-07-17 20:51:00 +0200 | <hellwolf> | [exa]: oh, I think you mean Ben Lynn's MacGyver's Haskell :) |
2023-07-17 20:51:09 +0200 | <hellwolf> | [exa]: no, actually Tallinn/Estonia :) |
2023-07-17 20:51:27 +0200 | <[exa]> | yeah likely, it looked like a lot of stuff running in the browser there |
2023-07-17 20:52:00 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14::ac08) (Remote host closed the connection) |
2023-07-17 20:52:02 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds) |
2023-07-17 20:52:03 +0200 | <hellwolf> | It was, and it was wasm indeed. Close haskell 98 though. |
2023-07-17 20:52:08 +0200 | <hellwolf> | *close to |
2023-07-17 20:52:27 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) |
2023-07-17 20:52:40 +0200 | <[exa]> | re community, it may just take time |
2023-07-17 20:53:03 +0200 | <[exa]> | community building is _hard_ |
2023-07-17 20:53:25 +0200 | <hellwolf> | geekosaur: funding is overrated, I have heard that you can launch a coin with cute dog face on it and you can fund GHC 20 years with that money. Talking about humanity priority. |
2023-07-17 20:54:29 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
2023-07-17 20:54:32 +0200 | <[exa]> | hellwolf: compared to how easy it is there's strikingly low amount of funding received that way. :D |
2023-07-17 20:54:54 +0200 | <[exa]> | btw geekosaur might have been pointing to a grant timing out to "show papers" phase |
2023-07-17 20:55:24 +0200 | <monochrom> | So we should go out and scam people? |
2023-07-17 20:56:11 +0200 | <monochrom> | Oh the research world has its dose of scammers alright. |
2023-07-17 20:56:24 +0200 | <monochrom> | I guess s/dose/share/ |
2023-07-17 20:56:41 +0200 | <[exa]> | that's pretty cool on bitcoin, most scammy folks migrated there |
2023-07-17 20:58:08 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) |
2023-07-17 20:59:32 +0200 | <hellwolf> | Sorry for the digression, I am a bit disillusioned about the state of the affairs. Back to Haskell. |
2023-07-17 21:00:03 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
2023-07-17 21:00:10 +0200 | <monochrom> | :) |
2023-07-17 21:00:17 +0200 | <[exa]> | hellwolf: there's always #-offtopic |
2023-07-17 21:00:31 +0200 | <[exa]> | also do you have estonian haskell channel? |
2023-07-17 21:02:58 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) |
2023-07-17 21:07:07 +0200 | <hellwolf> | No I don't, only the meetup page. There used to be a slack server, and there is this https://haskell.ee/ and I met many of them. |
2023-07-17 21:07:56 +0200 | mstksg | (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 245 seconds) |
2023-07-17 21:08:59 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 246 seconds) |
2023-07-17 21:10:10 +0200 | mstksg | (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
2023-07-17 21:13:34 +0200 | new | (~new@ool-18bbef1a.static.optonline.net) |
2023-07-17 21:16:49 +0200 | <new> | Hi, im reading "Learn yourself a haskell for good", and i dont understand this quote when learning about typeclass and type |
2023-07-17 21:16:49 +0200 | <new> | > To join Num, a type must already be friends with Show and Eq. |
2023-07-17 21:16:50 +0200 | <new> | I know that typeclass is like Interface, so it looks like either Show or Eq should have something like implemented the Num typeclass in their :i |
2023-07-17 21:16:50 +0200 | <new> | But using :i on Num Show or Eq I don't see any link to one another. |
2023-07-17 21:16:50 +0200 | <lambdabot> | <hint>:1:12: error: parse error on input ‘,’ |
2023-07-17 21:16:51 +0200 | <new> | So if I have a type that wants to implement Num, how do I know I must first implements Show and Eq? Will the compiler show error? |
2023-07-17 21:16:51 +0200 | <new> | Thank you |
2023-07-17 21:20:09 +0200 | <monochrom> | I don't know how "like interface" helps. |
2023-07-17 21:20:24 +0200 | <monochrom> | and the "friends" analogy is also highly broken. |
2023-07-17 21:20:51 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
2023-07-17 21:21:09 +0200 | <monochrom> | I would think my own lecture notes does it justice. http://www.cs.utoronto.ca/~trebla/CSCC24-2023-Summer/04-haskell-types-2.html |
2023-07-17 21:21:23 +0200 | <mauke> | does Num still require Show and Eq? |
2023-07-17 21:21:28 +0200 | <monochrom> | No. |
2023-07-17 21:21:28 +0200 | <mauke> | I thought they got rid of that |
2023-07-17 21:21:34 +0200 | <monochrom> | Right. |
2023-07-17 21:21:35 +0200 | <new> | oh |
2023-07-17 21:21:46 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 250 seconds) |
2023-07-17 21:21:50 +0200 | <monochrom> | In the past, Num was a subclass of Show and Eq. |
2023-07-17 21:22:13 +0200 | <monochrom> | Today, not any more. However, you can still learn the subclassing concept from Ord and Eq. |
2023-07-17 21:22:23 +0200 | <mauke> | yeah, but :i Ord produces massive output |
2023-07-17 21:22:52 +0200 | <mauke> | 'class Eq a => Ord a' is in there somewhere if you know what you're looking for :-) |
2023-07-17 21:22:53 +0200 | <monochrom> | Well, Integral and Num then. :) |
2023-07-17 21:23:02 +0200 | <mauke> | ah, that's better |
2023-07-17 21:23:04 +0200 | <new> | right |
2023-07-17 21:23:19 +0200 | <new> | meaning, if i wants to implement Ord, I have to implement everything in Eq |
2023-07-17 21:23:24 +0200 | <mauke> | yes |
2023-07-17 21:23:31 +0200 | <monochrom> | "class Eq a => Ord a" is also in my lecture notes. And yes that should be where you should look. </shameless plug> |
2023-07-17 21:23:33 +0200 | <new> | really helpful thank you for all your help |
2023-07-17 21:23:50 +0200 | <new> | this is my second attempt learning haskell |
2023-07-17 21:24:27 +0200 | <new> | I learned haskell to learn F# for work. And after a while I love F# so much that I goes back to haskell because FP is so beautiful |
2023-07-17 21:24:50 +0200 | <mauke> | my second attempt was the successful one :-) |
2023-07-17 21:25:50 +0200 | <new> | the initial attempt was rushed because i needed to get a sense of FP basic concepts like monad and functor to use F# quick. Now I have a better grasp and actually enjoy FP, it's time to go back to haskell again :) |
2023-07-17 21:26:12 +0200 | nate2 | (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
2023-07-17 21:28:26 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2023-07-17 21:32:06 +0200 | <nick4> | so I wasted most of the day trying to install hoogle locally from cabal with no success at all. I decided to just try stack, and it literally worked first try. Is stack, just better to use than cabal? How do I decide which package manager to use? |
2023-07-17 21:33:00 +0200 | <nick4> | I know a lot of people have complained about cabal (that I have read online), but this is the first issue I've had. So I'm just trying to see what opinions are out there between cabal/stack |
2023-07-17 21:33:28 +0200 | <geekosaur> | stack does things like download matching ghc versions for things |
2023-07-17 21:34:12 +0200 | <sclv> | for installing software stack could well be better, because you never need to have two different dep sets and merge them |
2023-07-17 21:34:15 +0200 | <sclv> | stackage solved that for you |
2023-07-17 21:34:16 +0200 | <geekosaur> | and won't have picked up all the crypton churn in the LTS yet |
2023-07-17 21:34:23 +0200 | <sclv> | but note that cabal works with stackage as well! |
2023-07-17 21:34:34 +0200 | <nick4> | doesn't cabal do that? I mean, it tries to match the base version at least with whatever you're doing? Am I missing something? |
2023-07-17 21:34:39 +0200 | <sclv> | the current issue is really fundamentally just that there's been a very recent breakage in crypto churn |
2023-07-17 21:34:54 +0200 | <sclv> | and stackage has a pinned set that has not yet faced that issue |
2023-07-17 21:35:14 +0200 | <sclv> | cabal uses whatever ghc you pass it with the -w flag, it can't pick a different ghc version for you |
2023-07-17 21:35:21 +0200 | <sclv> | so that means it uses the base you passed it |
2023-07-17 21:36:55 +0200 | <sclv> | but in any case, you're experiencing the fact that hoogle latest is busted w/r/t the crypto changes, and stackage doesn't have that problem. so if you used cabal with the stackage resolver you'd be fine. |
2023-07-17 21:37:27 +0200 | <nick4> | so you would use stack when you're just trying to build an executable from hackage? But you think cabal is still good to use in projects? |
2023-07-17 21:37:32 +0200 | <sclv> | i would always use cabal |
2023-07-17 21:37:35 +0200 | <sclv> | personally |
2023-07-17 21:37:47 +0200 | <sclv> | but i might use the stackage resolver in conjunction with it for just building executables :-) |
2023-07-17 21:38:07 +0200 | <nick4> | I don't know, I've tried building hoogle several times the past month, and have given up every instance because I didn't want to devote the time to fix it |
2023-07-17 21:38:09 +0200 | <sclv> | i don't think stack is any worse in this case -- just personally i like to stick to one thing |
2023-07-17 21:38:17 +0200 | <nick4> | and today I just said f it and have been focusing on that |
2023-07-17 21:38:25 +0200 | <sclv> | again -- cabal with the stackage resolver gives the same benefit you just got |
2023-07-17 21:38:58 +0200 | <nick4> | for how long has this crypto issue been going on with hoogle and cabal? because if its recent, it seems that hoogle often has issues with cabal? |
2023-07-17 21:39:11 +0200 | <sclv> | its very recent, and its not just hoogle. its the entire network ecosystem |
2023-07-17 21:39:28 +0200 | <sclv> | the cryptonite package went unmaintained, and the maintainer refused to hand over ownership |
2023-07-17 21:39:41 +0200 | <sclv> | so it was forked into crypton, but not all packages are uniformly updated to use the fork |
2023-07-17 21:39:46 +0200 | <nick4> | has this been going on for hours? days? weeks? months? |
2023-07-17 21:39:51 +0200 | <sclv> | about a month |
2023-07-17 21:39:57 +0200 | <nick4> | ok that makes sense |
2023-07-17 21:40:36 +0200 | emmanuelux | (~emmanuelu@user/emmanuelux) |
2023-07-17 21:40:42 +0200 | <monochrom> | I use cabal. I have never run into problems. |
2023-07-17 21:40:46 +0200 | <sclv> | basically we had one very ornery maintainer who wrote and controlled the crypto ecosystem, but did not play well with others, and now that they've walked away and taken their ball with them, we're all picking up the pieces |
2023-07-17 21:41:31 +0200 | <nick4> | so how do you use the stackage resolver? This is the first I'm hearing about it. |
2023-07-17 21:41:47 +0200 | <nick4> | I'm still trying to install hoogle on my debian machine, so I can try doing that. |
2023-07-17 21:41:50 +0200 | <monochrom> | I don't use stack because I don't have disk space for stack automatically deciding that I need 10 versions of GHC. |
2023-07-17 21:42:01 +0200 | <nick4> | you also didn't suggest using stackage |
2023-07-17 21:42:07 +0200 | <sm> | nick4: stack makes certain kinds of install (things which are in the stackage version you're using) more likely to work reliably, as you saw. cabal makes certain other kinds of install (things which are not in the stackage snapshot) possible. |
2023-07-17 21:42:33 +0200 | alexbiehl | (~alexbiehl@ip4d14fda4.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
2023-07-17 21:42:38 +0200 | <sclv> | stackage provides freeze files as "cabal.config" files for each lts (they're sort of undocumented on its side) |
2023-07-17 21:42:39 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:f161:e9a5:5038:6be6) |
2023-07-17 21:42:46 +0200 | <sm> | also stack can optionally install ghc and on windows, extra libs, for you. But nowadays it can let ghcup handle that and experts mostly prefer that. |
2023-07-17 21:42:53 +0200 | <sclv> | one can either download them and use them in a project directly |
2023-07-17 21:43:02 +0200 | <sclv> | or create a cabal.project file that remotely imports them https://cabal.readthedocs.io/en/stable/cabal-project.html#conditionals-and-imports |
2023-07-17 21:44:12 +0200 | <sclv> | in this case if i remember the story i pieced together, you first got sufficient advice to avoid the package issue without that hassle -- just setting the constraint on crypton like so `cabal install hoogle --constraint='crypton-x509 < 0.0'` |
2023-07-17 21:44:14 +0200 | <nick4> | oh, so you're saying instead of building the package through cabal, you actually download the cabal file and build it like a local project? |
2023-07-17 21:44:34 +0200 | <sclv> | then it was just you had the bad luck of using a ghc with a known bug on c headers, and stack picking a ghc without that bug |
2023-07-17 21:44:49 +0200 | <geekosaur> | no, you build through cabal, you just tell cabal to use the same dependencies stack would use |
2023-07-17 21:44:52 +0200 | <sm> | in all cases, cabal and stack build packages from source - there's no binary downloading |
2023-07-17 21:45:18 +0200 | <sclv> | geekosaur: right, but you can't do it from hackage directly, you need to use the repo or unpack to use the freeze or project stuff |
2023-07-17 21:45:23 +0200 | <geekosaur> | (stack calls this a resolver) |
2023-07-17 21:45:59 +0200 | <sclv> | in general one can use ghcup to make sure you're on "recommended" and not known-buggy versions of ghc. |
2023-07-17 21:46:28 +0200 | thegeekinside | (~thegeekin@189.217.90.138) |
2023-07-17 21:47:23 +0200 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:f161:e9a5:5038:6be6) (Ping timeout: 264 seconds) |
2023-07-17 21:48:19 +0200 | <nick4> | yes I know that, but I used like 7 different versions of ghc and two different versions of cabal using ghcup |
2023-07-17 21:48:32 +0200 | <nick4> | been trying to add all sorts of constraints etc etc |
2023-07-17 21:48:40 +0200 | ft | (~ft@p508dbe50.dip0.t-ipconnect.de) |
2023-07-17 21:48:44 +0200 | <sclv> | right but my understanding was that single constraint and _any_ nonbuggy ghc would work |
2023-07-17 21:48:48 +0200 | <nick4> | what I'm trying to figure out is how you actually do that with cabal because it makes no sense to me |
2023-07-17 21:48:51 +0200 | <sclv> | you just stumbled into a matrix of two problems |
2023-07-17 21:49:03 +0200 | <nick4> | it feels like more than two problems =/ |
2023-07-17 21:49:03 +0200 | <sclv> | and you ended up exploring it in an accidentally very suboptimal order |
2023-07-17 21:49:25 +0200 | <nick4> | are you saying there's a way to install hoogle through cabal right now? or is it impossible because of the bugs? |
2023-07-17 21:49:25 +0200 | <sclv> | ok i literally only know of two from what i saw -- the crypto issue, solvable by a single constraint, and the buggy header issue |
2023-07-17 21:49:38 +0200 | <sclv> | its literally possible with exactly the command i pasted above |
2023-07-17 21:49:41 +0200 | <nick4> | yeah, i haven't mentioned every issue i've had =/ |
2023-07-17 21:49:41 +0200 | <sclv> | and any nonbuggy ghc |
2023-07-17 21:50:02 +0200 | <nick4> | you're talking about cabal install hoogle --constraint='crypton-x509 < 0.0? |
2023-07-17 21:50:15 +0200 | <nick4> | I'm going to run that on my debian machine right now, and I'll let you know about the output. |
2023-07-17 21:50:25 +0200 | <sclv> | i'll test too, to make sure i'm not blowing smoke |
2023-07-17 21:51:10 +0200 | <nick4> | which version of ghc should I have set from ghcup? 9.2.8? |
2023-07-17 21:51:33 +0200 | <sclv> | i'd imagine that works, idk. i'm using 9.4.5 locally typically |
2023-07-17 21:51:46 +0200 | <sclv> | that's the one i'm testing with at least |
2023-07-17 21:51:53 +0200 | <sclv> | the 9.2 series is ancient |
2023-07-17 21:52:08 +0200 | <nick4> | ok I'll try 9.2.8 since its running, then 9.4.5 if it doesn't work. |
2023-07-17 21:53:42 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-07-17 21:57:40 +0200 | <monochrom> | cabal ... -wghc-?.?.? --constraint='????? < 0.0' |
2023-07-17 21:59:19 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 21:59:35 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Remote host closed the connection) |
2023-07-17 21:59:48 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 22:02:08 +0200 | <monochrom> | When I use hexchat, or calibre, or fcitx, I just let ubuntu choose which version and where to install to and what compile-time options to turn on or off. This is because for my use case of them, it doesn't matter. |
2023-07-17 22:02:33 +0200 | <monochrom> | But I do not go around saying "therefore ubuntu is easier than building your own". |
2023-07-17 22:02:58 +0200 | <monochrom> | If some non-default option is important for other people, it is not easier for them. |
2023-07-17 22:03:36 +0200 | <monochrom> | Now just do hexchat, calibre, fcitx : ubuntu :: haskell : stack |
2023-07-17 22:03:56 +0200 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht) |
2023-07-17 22:04:25 +0200 | <monochrom> | And damn English prepositions. s/important for/important to/ |
2023-07-17 22:04:45 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Remote host closed the connection) |
2023-07-17 22:04:59 +0200 | trev | (~trev@user/trev) |
2023-07-17 22:05:35 +0200 | <monochrom> | People debate like "stack works out of the box" vs "no, cabal works out of the box". I don't understand why. |
2023-07-17 22:05:40 +0200 | trev | (~trev@user/trev) (Client Quit) |
2023-07-17 22:05:52 +0200 | <monochrom> | It's almost like religious wars among ubuntu, gentoo, nix. |
2023-07-17 22:05:55 +0200 | <monochrom> | Oh wait. |
2023-07-17 22:07:56 +0200 | <mauke> | stack just rubs me the wrong way because of the FUD |
2023-07-17 22:08:58 +0200 | <Square> | Is there some way of showing the type of function for a certain instance in ghci. Say for fmap for "instance Functor ((->) r) ", instead of the class generic variant. |
2023-07-17 22:09:04 +0200 | oo_miguel | (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) (Ping timeout: 258 seconds) |
2023-07-17 22:10:28 +0200 | <monochrom> | There was even a time when I didn't want to use cabal (and stack didn't even exist) and I simply point my web browser to hackage and downloaded some tarballs and ran Setup.hs myself. |
2023-07-17 22:10:35 +0200 | <mauke> | :t fmap @((->) Char) |
2023-07-17 22:10:36 +0200 | <lambdabot> | error: parse error on input ‘->’ |
2023-07-17 22:13:24 +0200 | <monochrom> | Even today, I still keep around a shell script that runs Setup.hs for call-stack and then for HUnit. This is because a few years ago I made students use HUnit for homework, and "cabal update" would be inappropriate because their school accounts did not have enough disk quota for the humongous 00-index.tar. (So nevermind stack.) |
2023-07-17 22:13:58 +0200 | <monochrom> | Here be a use case in which both cabal and stack would be impossible. |
2023-07-17 22:15:09 +0200 | <Square> | mauke, thanks. Works! |
2023-07-17 22:16:02 +0200 | <monochrom> | Actually cabal was slightly possible because the disk quota was just enough for 00-index.tar, so some students had success because they had no other files. |
2023-07-17 22:16:28 +0200 | <carbolymer> | huh, I've discovered today that closed type families don't really protect you from referring to non-existing instances. so why use closed type families over open? |
2023-07-17 22:19:05 +0200 | <Square> | Unless you get a better answer. There are situations closed families are an requirement for certain functionality iirc. |
2023-07-17 22:19:18 +0200 | <Square> | is an* |
2023-07-17 22:20:12 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 22:23:02 +0200 | fendor | (~fendor@2a02:8388:1640:be00:1f28:32b1:54ac:a932) (Remote host closed the connection) |
2023-07-17 22:23:20 +0200 | <carbolymer> | yeah I imagine there exists a purpose |
2023-07-17 22:23:38 +0200 | new | (~new@ool-18bbef1a.static.optonline.net) (Ping timeout: 246 seconds) |
2023-07-17 22:24:38 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Ping timeout: 260 seconds) |
2023-07-17 22:29:16 +0200 | <sm> | mauke: what FUD ? |
2023-07-17 22:29:54 +0200 | <mauke> | "Hackage documentation generation is not reliable. For up to date documentation, please see: http://www.stackage.org/package/http-client." |
2023-07-17 22:30:57 +0200 | <nick4> | unfortunately i got a build error on my debian machine with `cabal install hoogle --constraint='crypton-x509 < 0.0'`. Here's the pastebin of the error https://paste.tomsmeding.com/Osm8xdGd. I just don't know what to do. That's with ghc-9.4.5 |
2023-07-17 22:31:08 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 22:31:34 +0200 | <sm> | is hackage documentation generation reliable ? I thought sometimes it failed and that's why there's a manual upload feature |
2023-07-17 22:31:57 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Remote host closed the connection) |
2023-07-17 22:32:42 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 22:33:29 +0200 | <sclv> | yeah i got that too nick4 -- its because of buggy bounds on the tls stuff -- precisely another reason its good (despite the pain) that it was forked, sigh |
2023-07-17 22:33:36 +0200 | <sclv> | its worth tracing down tho and i guess i will |
2023-07-17 22:33:55 +0200 | <nick4> | thanks at least I know its not me now |
2023-07-17 22:36:50 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Ping timeout: 246 seconds) |
2023-07-17 22:39:43 +0200 | <geekosaur> | sm, the main reason for hackage documentation build failures is it's done as part of package building, which can fail because there's only one ghc version available and a very limited set of system libraries etc. |
2023-07-17 22:39:56 +0200 | <sm> | yes, I know |
2023-07-17 22:40:06 +0200 | <geekosaur> | it *used* to be fairly unreliable but that was fixed long ago |
2023-07-17 22:40:19 +0200 | <geekosaur> | like, years |
2023-07-17 22:40:34 +0200 | dhil | (~dhil@78.45.150.83.ewm.ftth.as8758.net) (Ping timeout: 252 seconds) |
2023-07-17 22:40:51 +0200 | <sm> | the effect is the same surely to a user ? Some packages/versions will not have the docs they're looking for ? |
2023-07-17 22:41:08 +0200 | <geekosaur> | yeh |
2023-07-17 22:42:03 +0200 | <sm> | I see no value judgement in the statement, it's just factual. But I'm sure we could get it reworded |
2023-07-17 22:42:51 +0200 | notzmv | (~zmv@user/notzmv) (Ping timeout: 246 seconds) |
2023-07-17 22:44:14 +0200 | <sm> | or removed, if it's just obsolete. (I assume some uploaders fail to manually upload or are slow about it, but maybe the percentage is ignorable) |
2023-07-17 22:45:50 +0200 | <mauke> | the statement is information-free |
2023-07-17 22:46:00 +0200 | <mauke> | it tells me nothing |
2023-07-17 22:46:47 +0200 | <sm> | how could we measure how many packages have haddocks currently ? |
2023-07-17 22:48:02 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Quit: Leaving) |
2023-07-17 22:48:25 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 22:50:04 +0200 | <sm> | https://www.yesodweb.com/blog/2014/12/use-stackage-for-docs was the announcement of this message, with a little discussion. It sounds like he was willing to reword it but got busy |
2023-07-17 22:53:59 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 264 seconds) |
2023-07-17 22:54:28 +0200 | Midjak | (~Midjak@82.66.147.146) (Quit: This computer has gone to sleep) |
2023-07-17 22:54:40 +0200 | <mauke> | yeah, that's stupid |
2023-07-17 22:56:22 +0200 | <monochrom> | Oh, https://hackage.haskell.org/package/free-game doesn't have docs built. But that's because extra C libs. |
2023-07-17 22:56:44 +0200 | <mauke> | ... and apparently he solved it the next day by automating documentation generation |
2023-07-17 22:56:58 +0200 | <monochrom> | I wouldn't be surprised that by now (even since several years ago), doc build failure iff extra C libs. |
2023-07-17 22:57:21 +0200 | <monochrom> | in which case I don't bet that stackage is any better. |
2023-07-17 22:57:57 +0200 | <mauke> | I like how the "my next blog post" link goes to the article itself |
2023-07-17 22:59:04 +0200 | <monochrom> | But I'm disillusioned (about humanity in general, you see). Please still FUD about recursion taking stack space, like 3 decades since gcc -O2 does TCO. |
2023-07-17 22:59:18 +0200 | <monochrom> | err, s/Please/People/ |
2023-07-17 22:59:25 +0200 | <monochrom> | (Please don't FUD about that! heh) |
2023-07-17 22:59:57 +0200 | <mauke> | 'my main motivation here is explaining my reasoning for these changes, so I don't get a flood of new inquiries as to "why do you have such a strange description field in all your packages?"' [proceeds to not link to the blog post anywhere, especially not the package description field] |
2023-07-17 23:00:06 +0200 | <geekosaur> | in 2023 FUD is the norm 😞 |
2023-07-17 23:00:15 +0200 | <monochrom> | And https://queue.acm.org/detail.cfm?id=3212479 points out a ton of updated information about C and real metal. |
2023-07-17 23:00:29 +0200 | <monochrom> | err, s/updated/outdate/ |
2023-07-17 23:00:43 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-07-17 23:00:52 +0200 | <monochrom> | Gosh I can't write today. It's even at the word level. |
2023-07-17 23:01:15 +0200 | yin | zzz |
2023-07-17 23:02:13 +0200 | <monochrom> | Oh wait, "my next blog post" link going to the article itself. That's recursion. >:D |
2023-07-17 23:02:29 +0200 | <mauke> | tail recursion, even |
2023-07-17 23:05:43 +0200 | michalz | (~michalz@185.246.207.218) (Remote host closed the connection) |
2023-07-17 23:06:10 +0200 | Guest8732 | (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds) |
2023-07-17 23:07:50 +0200 | <darkling> | This article's really interesting. Thanks, monochrom. |
2023-07-17 23:08:10 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Ping timeout: 272 seconds) |
2023-07-17 23:13:52 +0200 | nick4 | (~nick@wsip-174-78-110-18.pn.at.cox.net) (Ping timeout: 240 seconds) |
2023-07-17 23:16:20 +0200 | <int-e> | well "not just a fast PDP-11" is cute |
2023-07-17 23:20:04 +0200 | Square | (~Square@user/square) (Ping timeout: 250 seconds) |
2023-07-17 23:20:32 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2023-07-17 23:21:12 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) |
2023-07-17 23:21:36 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-07-17 23:26:12 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:9c68:5d81:ef7b:a861) (Ping timeout: 245 seconds) |
2023-07-17 23:32:04 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:91cb:37cc:152b:5836) |
2023-07-17 23:35:15 +0200 | emmanuelux | (~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer) |
2023-07-17 23:36:12 +0200 | alexbiehl | (~alexbiehl@2a02:8108:323f:ca14:91cb:37cc:152b:5836) (Ping timeout: 240 seconds) |
2023-07-17 23:37:16 +0200 | nick4 | (~nick@2600:100d:b126:6e75:7c64:2bc8:586e:a3ac) |
2023-07-17 23:38:34 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 272 seconds) |
2023-07-17 23:39:14 +0200 | misterfish | (~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 252 seconds) |
2023-07-17 23:39:15 +0200 | son0p | (~ff@181.136.122.143) |
2023-07-17 23:39:30 +0200 | emmanuelux | (~emmanuelu@user/emmanuelux) |
2023-07-17 23:40:17 +0200 | <sclv> | alright, i hunted down the underlying issue. |
2023-07-17 23:40:35 +0200 | <sclv> | hoogle depends both on warp-tls and connection |
2023-07-17 23:40:49 +0200 | <sclv> | the former is updated to use the forked crypto ecosystem and the latter isn't |
2023-07-17 23:41:07 +0200 | <monochrom> | :( |
2023-07-17 23:41:10 +0200 | <sclv> | the other issues are just like weird mismatches that come from forcing hoogle back onto prior versions that don't have this given issue |
2023-07-17 23:42:39 +0200 | waleee | (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
2023-07-17 23:42:59 +0200 | gurkenglas | (~gurkengla@dynamic-046-114-180-206.46.114.pool.telefonica.de) (Read error: Connection reset by peer) |
2023-07-17 23:44:26 +0200 | <sclv> | and doh, i see this is fixed in the hoogle repo |
2023-07-17 23:45:29 +0200 | <sclv> | nick4: the correct answer to all the issues turns out to be "this is fixed by using the hoogle repo from github, which is ahead of the release" |
2023-07-17 23:45:54 +0200 | <int-e> | sclv: good to know |
2023-07-17 23:46:17 +0200 | <monochrom> | Ugh "fixed in HEAD" rears its head again. |
2023-07-17 23:46:41 +0200 | <int-e> | brain surgery is difficult |
2023-07-17 23:49:14 +0200 | gurkenglas | (~gurkengla@dynamic-046-114-180-206.46.114.pool.telefonica.de) |
2023-07-17 23:53:42 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Ping timeout: 245 seconds) |
2023-07-17 23:54:08 +0200 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |