Logs on 2021-09-05 (liberachat/#haskell)
| 00:03:12 | × | fernand quits (~fernand@179.156.35.4) (Quit: Connection closed) |
| 00:04:26 | → | [_] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 00:06:34 | → | minimario joins (~minimario@2603-900a-1600-ba00-5c11-a774-3b23-4728.inf6.spectrum.com) |
| 00:06:39 | ← | minimario parts (~minimario@2603-900a-1600-ba00-5c11-a774-3b23-4728.inf6.spectrum.com) () |
| 00:06:40 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 240 seconds) |
| 00:11:19 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 252 seconds) |
| 00:12:14 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 00:15:53 | × | fendor quits (~fendor@91.141.39.112.wireless.dyn.drei.com) (Remote host closed the connection) |
| 00:16:16 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
| 00:16:33 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 00:17:05 | × | TranquilEcho quits (~grom@user/tranquilecho) (Quit: WeeChat 2.8) |
| 00:20:40 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
| 00:21:23 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 00:27:23 | → | zebrag joins (~chris@user/zebrag) |
| 00:36:39 | × | a6a45081-2b83 quits (~aditya@2601:249:4300:1296:88ec:cc73:84d4:1507) (Quit: Konversation terminated!) |
| 00:38:23 | → | hannessteffenhag joins (~hannesste@ip4d14ffd8.dynamic.kabel-deutschland.de) |
| 00:39:49 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 00:45:07 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 245 seconds) |
| 00:45:25 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 00:45:58 | × | hannessteffenhag quits (~hannesste@ip4d14ffd8.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds) |
| 00:51:02 | sm2n_ | is now known as sm2n |
| 00:55:04 | <hololeap> | I've got a type T that is isomorphic to type V, but is not a newtype wrapper. I want to use DerivingVia to reuse an instance that exists for V, and apply it to T. how can I do this? |
| 01:03:34 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 01:04:43 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:89b5:4a22:cf8b:aed2) (Remote host closed the connection) |
| 01:06:16 | <pavonia> | hololeap: Adding "via V" to the deriving clause doesn't work? |
| 01:10:28 | <hololeap> | pavonia: http://sprunge.us/KqFw3S |
| 01:11:35 | → | libertyprime joins (~libertypr@197.109.124.202.static.snap.net.nz) |
| 01:12:24 | → | neurocyte8 joins (~neurocyte@IP-213188117211.dialin.heagmedianet.de) |
| 01:12:24 | × | neurocyte8 quits (~neurocyte@IP-213188117211.dialin.heagmedianet.de) (Changing host) |
| 01:12:24 | → | neurocyte8 joins (~neurocyte@user/neurocyte) |
| 01:14:00 | <pavonia> | Hhm, no idea then |
| 01:16:17 | × | neurocyte quits (~neurocyte@user/neurocyte) (Ping timeout: 252 seconds) |
| 01:16:17 | neurocyte8 | is now known as neurocyte |
| 01:19:45 | <hololeap> | there is "4.3 - Deriving via isomorphisms" from the "Deriving Via" paper but it's ugly and confusing |
| 01:21:00 | <geekosaur> | there comes a point where it's easier to just write the damn thing yourself... |
| 01:21:32 | <hololeap> | "Note that the via type does not have to be a newtype. The only restriction is that it is coercible with the original data type." |
| 01:22:08 | <hololeap> | so how do I make my Range type coercible with These? |
| 01:22:30 | <geekosaur> | hm. does that mean Data.Coerce? because that would exclude what you're trying to do, representationally equivalent isn't enough |
| 01:22:49 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
| 01:23:06 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 01:23:45 | <geekosaur> | you can look at the docs for Data.Coerce but iirc you can't get there from here |
| 01:23:57 | <hololeap> | oh, I see what it's saying |
| 01:24:54 | <geekosaur> | and I din't think you're allowed to wreite your own Coercible instance |
| 01:25:40 | × | waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 240 seconds) |
| 01:27:11 | <hololeap> | yeah it doesn't give you any way to do that |
| 01:27:53 | <hololeap> | so is this as good as it gets, without making Range a newtype? http://sprunge.us/R6uAmH |
| 01:28:16 | <hololeap> | I just want more meaningful constructor names, but that semigroup instance is annoying to write by hand |
| 01:29:10 | <geekosaur> | probably |
| 01:29:29 | × | xff0x quits (~xff0x@2001:1a81:5399:4e00:f397:598c:9bde:b2ba) (Ping timeout: 252 seconds) |
| 01:30:29 | <pavonia> | What additional properties are required for the Coercible instance? |
| 01:31:04 | → | xff0x joins (~xff0x@2001:1a81:53d2:1d00:b362:d9b0:e8ff:4377) |
| 01:31:07 | <geekosaur> | they have to bve directly or indirectly related, not just representationally equivalent |
| 01:31:44 | <geekosaur> | basically the compiler has to be able to follow a chain of internally-generated Coercible instances to relate the two types |
| 01:34:23 | <pavonia> | Not sure what that means. For what kind of types does such a relation exist? |
| 01:34:55 | × | alx741 quits (~alx741@181.196.69.46) (Quit: alx741) |
| 01:35:38 | <hololeap> | pavonia: basically just some arbitrary number of newtype wrappings, from what I can tell |
| 01:36:28 | <hololeap> | if you can morph one type into another type by wrapping/unwrapping it in nothing but newtypes, they will be coercible |
| 01:36:36 | <geekosaur> | https://downloads.haskell.org/ghc/latest/docs/html/libraries/base-4.15.0.0/Data-Coerce.html |
| 01:39:47 | → | nfd joins (~nfd@user/nfd) |
| 01:39:57 | × | superbil quits (~superbil@1-34-176-171.HINET-IP.hinet.net) (Quit: WeeChat 3.2) |
| 01:40:55 | <pavonia> | What does "class a ~R# b" denote? |
| 01:41:02 | × | libertyprime quits (~libertypr@197.109.124.202.static.snap.net.nz) (Ping timeout: 252 seconds) |
| 01:41:37 | → | superbil joins (~superbil@1-34-176-171.HINET-IP.hinet.net) |
| 01:48:02 | → | lavaman joins (~lavaman@98.38.249.169) |
| 01:48:15 | [_] | is now known as [itchyjunk] |
| 01:52:12 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 245 seconds) |
| 01:53:10 | <geekosaur> | it's documented at the bottom of https://gitlab.haskell.org/ghc/ghc/-/wikis/roles-implementation |
| 01:55:59 | <geekosaur> | and may correspond to the ~ρ mentioned on page 6 of http://research.microsoft.com/en-us/um/people/simonpj/papers/ext-f/coercible.pdf |
| 01:56:49 | → | libertyprime joins (~libertypr@118.149.81.105) |
| 02:01:47 | <pavonia> | Thanks |
| 02:05:07 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:89b5:4a22:cf8b:aed2) |
| 02:06:29 | × | natechan quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Quit: WeeChat 2.9) |
| 02:06:52 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:06:52 | FinnElija | is now known as Guest7529 |
| 02:06:52 | × | Guest7529 quits (~finn_elij@user/finn-elija/x-0085643) (Killed (calcium.libera.chat (Nickname regained by services))) |
| 02:06:52 | finn_elija | is now known as FinnElija |
| 02:10:40 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:89b5:4a22:cf8b:aed2) (Ping timeout: 252 seconds) |
| 02:12:02 | × | zaquest quits (~notzaques@5.128.210.178) (Quit: Leaving) |
| 02:16:01 | → | zaquest joins (~notzaques@5.128.210.178) |
| 02:18:51 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 02:19:32 | × | td_ quits (~td@94.134.91.73) (Ping timeout: 252 seconds) |
| 02:21:21 | → | td_ joins (~td@muedsl-82-207-238-013.citykom.de) |
| 02:25:26 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:89b5:4a22:cf8b:aed2) |
| 03:08:25 | × | otto_s_ quits (~user@p4ff2722c.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 03:10:09 | → | otto_s joins (~user@p5b044ad0.dip0.t-ipconnect.de) |
| 03:14:16 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 256 seconds) |
| 03:14:33 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 03:16:44 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
| 03:17:09 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 03:20:20 | → | brettgilio joins (~brettgili@137.184.3.255) |
| 03:21:52 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 03:23:27 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 245 seconds) |
| 03:23:44 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 03:28:13 | × | rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 252 seconds) |
| 03:30:10 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 240 seconds) |
| 03:30:25 | → | Lycurgus joins (~juan@98.4.112.204) |
| 03:30:27 | → | MQ-17J joins (~MQ-17J@8.21.10.6) |
| 03:48:17 | → | wei2912 joins (~wei2912@112.199.250.21) |
| 03:51:35 | → | Sgeo_ joins (~Sgeo@user/sgeo) |
| 03:52:48 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
| 03:54:04 | × | Sgeo quits (~Sgeo@user/sgeo) (Ping timeout: 252 seconds) |
| 04:19:40 | × | nfd quits (~nfd@user/nfd) (Ping timeout: 240 seconds) |
| 04:25:57 | × | hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 245 seconds) |
| 04:27:22 | → | hyiltiz joins (~quassel@31.220.5.250) |
| 04:47:18 | → | mei joins (~mei@user/mei) |
| 04:51:35 | × | Everything quits (~Everythin@37.115.210.35) (Quit: leaving) |
| 04:59:00 | × | mrus quits (~mrus@2001:19f0:5:1535:5400:3ff:fe7d:10ae) (Quit: Surfing the great wave off Kanagawa) |
| 04:59:42 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
| 05:00:20 | → | mrus joins (~mrus@149.28.224.172) |
| 05:00:59 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 05:10:00 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 05:11:24 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 05:16:23 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 05:16:23 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 05:16:23 | → | wroathe joins (~wroathe@user/wroathe) |
| 05:21:12 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
| 05:26:55 | × | mrus quits (~mrus@149.28.224.172) (Quit: Surfing the great wave off Kanagawa) |
| 05:27:12 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 05:27:12 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 05:27:12 | → | wroathe joins (~wroathe@user/wroathe) |
| 05:27:21 | → | mrus joins (~mrus@2001:19f0:5:1535:5400:3ff:fe7d:10ae) |
| 05:28:33 | → | Guest66_ joins (~textual@2603:3020:e00:8100:4d23:3b2f:14f2:bb44) |
| 05:28:45 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 05:31:25 | × | MQ-17J quits (~MQ-17J@8.21.10.6) (Ping timeout: 252 seconds) |
| 05:31:38 | × | mrus quits (~mrus@2001:19f0:5:1535:5400:3ff:fe7d:10ae) (Client Quit) |
| 05:31:57 | → | mrus joins (~mrus@149.28.224.172) |
| 05:32:59 | × | mrus quits (~mrus@149.28.224.172) (Client Quit) |
| 05:38:40 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
| 05:47:28 | × | Lycurgus quits (~juan@98.4.112.204) (Quit: Exeunt) |
| 05:49:01 | × | sim590 quits (~simon@modemcable090.207-203-24.mc.videotron.ca) (Ping timeout: 252 seconds) |
| 05:49:25 | → | lavaman joins (~lavaman@98.38.249.169) |
| 05:53:46 | → | slack1256 joins (~slack1256@ip-64-134-164-2.public.wayport.net) |
| 05:53:52 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 245 seconds) |
| 05:56:20 | × | slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving) |
| 06:00:29 | × | Guest66_ quits (~textual@2603:3020:e00:8100:4d23:3b2f:14f2:bb44) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 06:01:45 | → | sim590 joins (~simon@modemcable090.207-203-24.mc.videotron.ca) |
| 06:05:34 | → | mikoto-chan joins (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
| 06:26:56 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 256 seconds) |
| 06:44:21 | → | thyriaen joins (~thyriaen@dynamic-078-055-123-051.78.55.pool.telefonica.de) |
| 06:54:48 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 06:55:44 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Remote host closed the connection) |
| 06:58:35 | → | Gurkenglas joins (~Gurkengla@dslb-088-075-022-191.088.075.pools.vodafone-ip.de) |
| 07:00:17 | × | slack1256 quits (~slack1256@ip-64-134-164-2.public.wayport.net) (Remote host closed the connection) |
| 07:06:04 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 07:08:43 | → | nattiestnate joins (~nate@36.81.8.78) |
| 07:13:35 | × | nattiestnate quits (~nate@36.81.8.78) (Client Quit) |
| 07:18:57 | × | libertyprime quits (~libertypr@118.149.81.105) (Quit: leaving) |
| 07:24:39 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 07:28:53 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 07:33:14 | × | awpr quits (uid446117@id-446117.tooting.irccloud.com) () |
| 07:33:29 | → | awpr joins (uid446117@id-446117.lymington.irccloud.com) |
| 07:35:55 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 07:36:22 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 07:36:53 | × | aarvar quits (~aaron@2601:602:a080:fa0:2b49:6db1:e21:14d8) (Ping timeout: 252 seconds) |
| 07:41:10 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
| 07:43:50 | → | Tuplanolla joins (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
| 07:49:06 | → | acidjnk joins (~acidjnk@p200300d0c7203041c87a18810a048a6d.dip0.t-ipconnect.de) |
| 07:52:05 | × | Gurkenglas quits (~Gurkengla@dslb-088-075-022-191.088.075.pools.vodafone-ip.de) (Remote host closed the connection) |
| 07:52:31 | → | Gurkenglas joins (~Gurkengla@dslb-088-075-022-191.088.075.pools.vodafone-ip.de) |
| 07:55:27 | → | max22- joins (~maxime@2a01cb088335980059777f3ef448327c.ipv6.abo.wanadoo.fr) |
| 07:57:32 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 07:59:12 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Remote host closed the connection) |
| 08:00:19 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:89b5:4a22:cf8b:aed2) (Remote host closed the connection) |
| 08:06:36 | → | hendursa1 joins (~weechat@user/hendursaga) |
| 08:10:21 | × | hendursaga quits (~weechat@user/hendursaga) (Ping timeout: 276 seconds) |
| 08:11:46 | × | mikoto-chan quits (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 250 seconds) |
| 08:17:21 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 08:17:43 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 08:19:02 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 08:35:15 | → | vysn joins (~vysn@user/vysn) |
| 08:37:31 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 08:41:40 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Ping timeout: 240 seconds) |
| 08:46:25 | × | vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.2) |
| 08:46:50 | → | vysn joins (~vysn@user/vysn) |
| 08:47:03 | → | peterhil joins (~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) |
| 08:49:12 | × | Sgeo_ quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 08:49:49 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 08:53:05 | lep- | is now known as lep |
| 08:53:58 | → | acidjnk_new joins (~acidjnk@p200300d0c7203041e4b6d81317d42b76.dip0.t-ipconnect.de) |
| 08:54:00 | → | __monty__ joins (~toonn@user/toonn) |
| 08:57:37 | × | acidjnk quits (~acidjnk@p200300d0c7203041c87a18810a048a6d.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 09:01:03 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:857f:fa29:eec4:b0fd) |
| 09:05:10 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:857f:fa29:eec4:b0fd) (Ping timeout: 240 seconds) |
| 09:10:09 | <hexeme> | Trying to use the comment eval feature in vscode's haskell support, but I can't get it to actually insert the output of the evaluation result: https://i.imgur.com/fS26JBV.png |
| 09:10:18 | <hexeme> | anyone familiar with this extension? |
| 09:12:26 | × | ulvarrefr quits (~user@185.24.53.152) (Quit: ERC (IRC client for Emacs 27.2)) |
| 09:13:41 | → | ulvarrefr joins (~user@185.24.53.152) |
| 09:13:50 | → | Lycurgus joins (~juan@98.4.112.204) |
| 09:14:02 | <hexeme> | nm |
| 09:16:36 | × | mei quits (~mei@user/mei) (Quit: mei) |
| 09:19:11 | → | hexfive joins (~eric@50.35.83.177) |
| 09:21:35 | × | hexfive quits (~eric@50.35.83.177) (Client Quit) |
| 09:25:07 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine) |
| 09:26:19 | <Orbstheorem> | How do I debug a timeout in quickcheck properties? |
| 09:28:08 | × | hnOsmium0001 quits (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
| 09:28:25 | <Rembane_> | Orbstheorem: I do it by adding loads and loads of trace and traceShow. |
| 09:28:44 | <Orbstheorem> | Some elements in my test suite sporadically take very long times and I can't figure why. My guess was the generators and `suchThat` filters, but since I can't deterministically reproduce a test I can't really bisect :( |
| 09:29:06 | <Orbstheorem> | Is there a way to record and reuse a test seed? |
| 09:29:18 | <Rembane_> | Orbstheorem: Do you get more to play with if you add more test runs? |
| 09:29:31 | <Rembane_> | Orbstheorem: Yes you can. I have only found how in tasty though. |
| 09:29:51 | <Rembane_> | Orbstheorem: https://stackoverflow.com/questions/19189476/how-to-set-constant-seeds-for-haskells-quickcheck-function <- something like this perhaps? |
| 09:31:36 | <Orbstheorem> | Rembane_: Not really :/ |
| 09:31:47 | <Orbstheorem> | Rembane_: Reading.... |
| 09:32:14 | → | timCF joins (~timCF@m91-129-108-244.cust.tele2.ee) |
| 09:33:59 | <timCF> | Hello! Is there any standard type of positive Rational in Haskell, or I just create newtype with smart constructor? Just don't want to reinvent a wheel :) |
| 09:34:25 | <dibblego> | https://hackage.haskell.org/package/natural |
| 09:34:42 | <dminuoso> | timCF: You can use `Ratio Unsigned`? |
| 09:34:55 | <dminuoso> | Err, `Ratio Natural` |
| 09:35:09 | → | jtomas joins (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) |
| 09:35:29 | → | benin03693233 joins (~benin@183.82.207.253) |
| 09:35:39 | <dminuoso> | timCF: Consider that `type Rational = Ratio Integer` |
| 09:36:10 | × | benin0369323 quits (~benin@183.82.207.253) (Ping timeout: 252 seconds) |
| 09:36:10 | benin03693233 | is now known as benin0369323 |
| 09:37:22 | <timCF> | I'll take a look, thanks! |
| 09:38:22 | × | xff0x quits (~xff0x@2001:1a81:53d2:1d00:b362:d9b0:e8ff:4377) (Ping timeout: 252 seconds) |
| 09:39:15 | → | xff0x joins (~xff0x@2001:1a81:53d2:1d00:a4d9:e30c:7a3d:a7fe) |
| 09:42:40 | × | sim590 quits (~simon@modemcable090.207-203-24.mc.videotron.ca) (Ping timeout: 240 seconds) |
| 09:48:40 | × | Morrow_ quits (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 240 seconds) |
| 09:49:26 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 252 seconds) |
| 09:50:12 | → | hannessteffenhag joins (~hannesste@ip4d14ffd8.dynamic.kabel-deutschland.de) |
| 09:51:00 | → | lavaman joins (~lavaman@98.38.249.169) |
| 09:51:38 | → | mikoto-chan joins (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
| 09:53:31 | <Orbstheorem> | Yes, got a reproducible failure! Thanks! |
| 09:55:29 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
| 09:58:40 | → | kenran joins (~kenran@200116b82bb26900654cf7da7de5144b.dip.versatel-1u1.de) |
| 10:00:51 | × | timCF quits (~timCF@m91-129-108-244.cust.tele2.ee) (Quit: leaving) |
| 10:01:06 | lep | is now known as lep- |
| 10:01:12 | <tomsmeding> | Orbstheorem: there is Test.QuickCheck.Random.mkQCGen :: Int -> QCGen that creates a QCGen with a particular seed, if you don't want to use tasty |
| 10:01:23 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 10:01:24 | <tomsmeding> | there's no documentation for that function on hackage for some reason |
| 10:04:46 | × | dsrt^ quits (~dsrt@wsip-98-188-244-188.mc.at.cox.net) (Ping timeout: 252 seconds) |
| 10:05:31 | → | fendor joins (~fendor@91.141.39.112.wireless.dyn.drei.com) |
| 10:07:00 | <Orbstheorem> | I wrote this:... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/fe823de0d6ebca77f298f8fb12ff2a075df2bb12) |
| 10:07:32 | <tomsmeding> | printf debugging for the win |
| 10:08:16 | <Orbstheorem> | `traceShow` \o/ xD |
| 10:09:17 | × | kenran quits (~kenran@200116b82bb26900654cf7da7de5144b.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
| 10:09:44 | <Orbstheorem> | The problem with the optimizer is that even if the seed is random the generated code is not xD |
| 10:10:00 | <Orbstheorem> | Just by adding traceShow, sometimes I get the failure after 1 test and sometimes after 4 xD |
| 10:11:21 | → | acro_ joins (~acro@user/acro) |
| 10:12:41 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 10:13:23 | → | hexagoxe- joins (~hexagoxel@2a01:4f8:c0c:e::2) |
| 10:13:24 | → | connrs_ joins (~connrs@user/connrs) |
| 10:13:39 | → | ptrcmd_ joins (~ptrcmd@user/ptrcmd) |
| 10:16:43 | → | dsrt^ joins (~dsrt@wsip-98-188-244-188.mc.at.cox.net) |
| 10:18:26 | × | hexagoxel quits (~hexagoxel@hexagoxel.de) (Ping timeout: 276 seconds) |
| 10:18:26 | × | acro quits (~acro@user/acro) (Ping timeout: 276 seconds) |
| 10:18:26 | × | connrs quits (~connrs@user/connrs) (Quit: ZNC 1.8.2 - https://znc.in) |
| 10:18:26 | × | ptrcmd quits (~ptrcmd@user/ptrcmd) (Ping timeout: 276 seconds) |
| 10:18:26 | acro_ | is now known as acro |
| 10:18:26 | connrs_ | is now known as connrs |
| 10:18:37 | ptrcmd_ | is now known as ptrcmd |
| 10:18:40 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Ping timeout: 240 seconds) |
| 10:35:40 | <Orbstheorem> | Found my problem: `sublistOf [] `suchThat` (not . null)` ... |
| 10:35:53 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 10:37:59 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 10:38:36 | <hexeme> | haskell is pretty crazy but i'm having fun |
| 10:38:46 | → | xkuru joins (~xkuru@user/xkuru) |
| 10:40:14 | <Orbstheorem> | I think it's the very first time I use BangPatterns x) |
| 10:40:42 | <Orbstheorem> | Also, I discovered that deconstructors will force evaluation. |
| 10:41:05 | Andrew | is now known as CoHaxPenguino |
| 10:41:10 | <tomsmeding> | deconstructors? |
| 10:41:24 | <Orbstheorem> | Pattern matching on assignments. |
| 10:41:42 | <sshine> | fun pastime: watching haskell projects compile to see what packages other people depend on. it's a pretty neat way to discover things, I think. :) |
| 10:42:20 | <Orbstheorem> | x) |
| 10:43:45 | CoHaxPenguino | is now known as HaxPenguino |
| 10:43:48 | <sshine> | Orbstheorem, congrats on levelling up! |
| 10:44:24 | × | wei2912 quits (~wei2912@112.199.250.21) (Quit: Lost terminal) |
| 10:44:38 | <sshine> | Orbstheorem, on Friday there's a Haskell Love talk on GHC's Strict mode that you may want to see, then. |
| 10:44:46 | <kaol> | Huh. I have two IntMaps. Their set of keys are equal, but running intersectionWith (,) for them yields an empty IntMap. How can this be. |
| 10:44:59 | Orbstheorem | googles Haskell Love |
| 10:45:17 | <Orbstheorem> | Ohhhh |
| 10:45:18 | <Orbstheorem> | Nice! |
| 10:45:20 | <Orbstheorem> | :) |
| 10:45:24 | <sshine> | Orbstheorem, https://www.youtube.com/watch?v=IQYIOZUUrNc&list=PLBqWQH1MiwBTwo2wrwINAorzXRumxO41s&index=10 |
| 10:49:52 | × | hannessteffenhag quits (~hannesste@ip4d14ffd8.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds) |
| 10:49:58 | <tromp> | please consider upvoting HN submission of my Haskell based project, https://news.ycombinator.com/item?id=28423029 |
| 10:53:24 | × | xff0x quits (~xff0x@2001:1a81:53d2:1d00:a4d9:e30c:7a3d:a7fe) (Ping timeout: 250 seconds) |
| 10:54:18 | → | Morrow_ joins (~Morrow@31.154.96.164) |
| 10:54:27 | → | xff0x joins (~xff0x@2001:1a81:53d2:1d00:6afe:f077:c625:e6c4) |
| 10:56:18 | <[exa]> | tromp: opening the github-- I thought for a moment that the chess pictures are made of unicode. :D |
| 10:57:44 | <[exa]> | alas /me has no HN account |
| 10:58:13 | tomsmeding | gave [exa]'s upvote |
| 11:00:59 | → | alx741 joins (~alx741@181.196.69.46) |
| 11:02:13 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:857f:fa29:eec4:b0fd) |
| 11:03:29 | × | Lycurgus quits (~juan@98.4.112.204) (Quit: Exeunt) |
| 11:06:22 | × | max22- quits (~maxime@2a01cb088335980059777f3ef448327c.ipv6.abo.wanadoo.fr) (Ping timeout: 245 seconds) |
| 11:06:40 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:857f:fa29:eec4:b0fd) (Ping timeout: 240 seconds) |
| 11:09:56 | → | AlexNoo_ joins (~AlexNoo@178.34.151.45) |
| 11:12:58 | × | pbrisbin quits (~patrick@pool-108-16-214-93.phlapa.fios.verizon.net) (Ping timeout: 252 seconds) |
| 11:13:10 | × | AlexZenon quits (~alzenon@178.34.151.114) (Ping timeout: 240 seconds) |
| 11:13:10 | × | Alex_test quits (~al_test@178.34.151.114) (Ping timeout: 240 seconds) |
| 11:13:31 | × | AlexNoo quits (~AlexNoo@178.34.151.114) (Ping timeout: 252 seconds) |
| 11:15:23 | HaxPenguino | is now known as CoCoHaxPenguin |
| 11:16:53 | × | xff0x quits (~xff0x@2001:1a81:53d2:1d00:6afe:f077:c625:e6c4) (Ping timeout: 252 seconds) |
| 11:18:29 | → | AlexZenon joins (~alzenon@178.34.151.45) |
| 11:19:04 | → | sim590 joins (~simon@modemcable090.207-203-24.mc.videotron.ca) |
| 11:20:02 | → | Alex_test joins (~al_test@178.34.151.45) |
| 11:25:42 | → | fendor_ joins (~fendor@77.119.200.43.wireless.dyn.drei.com) |
| 11:26:47 | × | Morrow_ quits (~Morrow@31.154.96.164) (Ping timeout: 252 seconds) |
| 11:28:24 | × | fendor quits (~fendor@91.141.39.112.wireless.dyn.drei.com) (Ping timeout: 256 seconds) |
| 11:30:34 | × | sim590 quits (~simon@modemcable090.207-203-24.mc.videotron.ca) (Ping timeout: 252 seconds) |
| 11:34:17 | <Gurkenglas> | janus, are you sure "Conn handler already done..." should be nonfatal? |
| 11:35:23 | AlexNoo_ | is now known as AlexNoo |
| 11:42:00 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 11:43:42 | → | bjobjo joins (~bjobjo@user/bjobjo) |
| 11:45:07 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Ping timeout: 245 seconds) |
| 11:45:34 | → | Vajb joins (~Vajb@n1xq4ni1adi29tefj-2.v6.elisa-mobile.fi) |
| 11:45:53 | <Gurkenglas> | stack won't install old-time, wat do? https://bpa.st/XADQ --no-system-ghc didn't help |
| 11:51:23 | <jneira[m]> | maybe it is related with the long paths issue, I would change STACK_ROOT env var to C:\sr and your project dir to the shortest path possible |
| 11:51:35 | <jneira[m]> | Gurkenglas ^^ |
| 11:52:55 | × | bjobjo quits (~bjobjo@user/bjobjo) (Quit: boot) |
| 11:52:56 | <Gurkenglas> | stack path already says stack-root: C:\sr |
| 11:53:07 | <jneira[m]> | hmm |
| 11:53:44 | × | hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 252 seconds) |
| 11:54:07 | <jneira[m]> | but ghc is inside you user dir, you should change that config option too |
| 11:54:39 | <jneira[m]> | mmm don't remember the exact name |
| 11:55:07 | <jneira[m]> | local-prog-path? |
| 11:55:14 | <jneira[m]> | something alike |
| 11:55:21 | → | bjobjo joins (~bjobjo@user/bjobjo) |
| 11:55:56 | <Gurkenglas> | local-bin-path presumably |
| 11:56:05 | <jneira[m]> | yeah |
| 11:57:13 | <Gurkenglas> | stack install Cabal fixed it. |
| 11:57:32 | <Gurkenglas> | scratch that, oof |
| 11:57:43 | <tomsmeding> | yeah, that didn't sound right :p |
| 11:57:56 | → | hyiltiz joins (~quassel@31.220.5.250) |
| 11:58:39 | <jneira[m]> | wow |
| 11:59:34 | <jneira[m]> | I would try to reproduce the error with a clean global config |
| 11:59:42 | → | xff0x joins (~xff0x@2001:1a81:53d2:1d00:6afe:f077:c625:e6c4) |
| 11:59:56 | <jneira[m]> | if you have time ☺️ |
| 12:01:30 | <Gurkenglas> | is there a simple way to get such a one? some folder or file that i rename and then overwriting it back later undoes it? |
| 12:02:58 | × | acidjnk_new quits (~acidjnk@p200300d0c7203041e4b6d81317d42b76.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
| 12:03:29 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c1b9:a2b:77a8:fec7) |
| 12:03:32 | × | Vajb quits (~Vajb@n1xq4ni1adi29tefj-2.v6.elisa-mobile.fi) (Read error: Connection reset by peer) |
| 12:04:28 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 12:06:24 | → | oxide joins (~lambda@user/oxide) |
| 12:07:56 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c1b9:a2b:77a8:fec7) (Ping timeout: 250 seconds) |
| 12:08:40 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Ping timeout: 240 seconds) |
| 12:17:03 | <Gurkenglas> | ah stack path said config-location, so i renamed that yaml. it installed another ghc and and then failed to install old-time in the same way |
| 12:17:24 | <Gurkenglas> | jneira[m], ^^ |
| 12:20:37 | × | retroid_ quits (~retro@176.255.22.194) (Ping timeout: 252 seconds) |
| 12:24:17 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 12:27:25 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 12:28:13 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 12:30:14 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 12:30:43 | → | Vajb joins (~Vajb@n1xq4ni1adi29tefj-2.v6.elisa-mobile.fi) |
| 12:30:52 | <Gurkenglas> | hmm stack install Cabal doesn't put cabal on the path |
| 12:31:08 | × | vysn quits (~vysn@user/vysn) (Ping timeout: 252 seconds) |
| 12:31:14 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 12:31:38 | <Gurkenglas> | oh wait it did, i just thought the stack bin path was different from the choco bin path. |
| 12:39:12 | <Gurkenglas> | oh wait it is... stack install Cabal doesn't seem to do much of anything when i run it after this first tiem? it finishes in ~1 second and my C:\Users\Gurkenglas\AppData\Roaming\local\bin (stack path --local-bin) does not get a new cabal.exe |
| 12:39:13 | × | Vajb quits (~Vajb@n1xq4ni1adi29tefj-2.v6.elisa-mobile.fi) (Read error: Connection reset by peer) |
| 12:39:40 | × | hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 240 seconds) |
| 12:40:47 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 12:41:41 | CoCoHaxPenguin | is now known as \[ |
| 12:42:04 | × | talismanick quits (~user@2601:644:8500:8350::9c19) (Ping timeout: 256 seconds) |
| 12:42:07 | \[ | is now known as \} |
| 12:42:07 | <tomsmeding> | Gurkenglas: Cabal != cabal-install |
| 12:42:15 | <tomsmeding> | Cabal is the library, cabal-install is the executable |
| 12:42:25 | \} | is now known as a_ |
| 12:42:28 | a_ | is now known as Andrew |
| 12:42:33 | <Gurkenglas> | youProbablyWantCapitalCabal lied to me!? |
| 12:42:46 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 12:42:57 | <tomsmeding> | world is a hard place |
| 12:43:10 | × | jespada quits (~jespada@90.254.245.194) (Ping timeout: 252 seconds) |
| 12:46:59 | → | jespada joins (~jespada@90.254.245.194) |
| 12:49:16 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 12:49:28 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 12:49:37 | → | hyiltiz joins (~quassel@31.220.5.250) |
| 12:50:31 | → | euandreh joins (~euandreh@2804:14c:33:9fe5:2c9d:2885:3ab4:eb30) |
| 12:50:58 | <jneira[m]> | <Gurkenglas> "local-bin-path presumably" <- the path to ghcs and msys is controlled by local-programs-path |
| 12:51:26 | <jneira[m]> | local-bin-path is where installed binaries go |
| 12:52:51 | <jneira[m]> | and it is advisable to set the ghc and msys location to a short path as well |
| 12:53:08 | <Gurkenglas> | why doesn't stack do this automatically |
| 12:53:10 | <jneira[m]> | I would try again after change it |
| 12:53:50 | <jneira[m]> | to get a fresh global cache delete C:\sr entirely |
| 12:54:42 | <jneira[m]> | spaces and non ASCII chars in the user name usually gives problems too (not your case though) |
| 12:55:36 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 12:56:26 | <jneira[m]> | Gurkenglas: maybe cause it can choose a location which is known to be writable by the user for sure |
| 12:56:33 | → | Vajb joins (~Vajb@n1xq4ni1adi29tefj-2.v6.elisa-mobile.fi) |
| 12:56:43 | <jneira[m]> | it cant |
| 12:58:18 | × | hendursa1 quits (~weechat@user/hendursaga) (Quit: hendursa1) |
| 12:58:46 | → | hendursaga joins (~weechat@user/hendursaga) |
| 12:59:25 | <Gurkenglas> | eh, i read out of head swapspace. ill try installing idris on wsl, then. |
| 12:59:30 | <Gurkenglas> | *ran out |
| 13:02:28 | → | waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
| 13:04:25 | → | DNH joins (~DNH@8.43.122.27) |
| 13:13:43 | <phaazon> | do you people remember where cabal writes compilation outputs like binaries, libs, etc.? |
| 13:13:54 | <phaazon> | I would swear I remember using a command like cabal path --binary |
| 13:13:58 | <phaazon> | but I don’t recall exactly |
| 13:14:11 | <phaazon> | I basically want to grab the built binary and sent it to a server node |
| 13:14:22 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 13:17:03 | <phaazon> | found it by manually going in the directory but I was sure there was a way to grab that |
| 13:17:09 | <phaazon> | or was it with stack, hm |
| 13:19:33 | × | cods quits (~fred@82-65-232-44.subs.proxad.net) (Ping timeout: 250 seconds) |
| 13:19:33 | × | Vajb quits (~Vajb@n1xq4ni1adi29tefj-2.v6.elisa-mobile.fi) (Read error: Connection reset by peer) |
| 13:23:21 | → | kuribas joins (~user@ptr-25vy0i6xfv8pdfgun1l.18120a2.ip6.access.telenet.be) |
| 13:25:04 | <DigitalKiwi> | cabal list-bin |
| 13:25:47 | × | DNH quits (~DNH@8.43.122.27) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 13:25:56 | <phaazon> | oh yeah, thanks! |
| 13:26:09 | × | barrucadu quits (~barrucadu@carcosa.barrucadu.co.uk) (Quit: leaving) |
| 13:26:53 | <DigitalKiwi> | yw |
| 13:29:03 | → | max22- joins (~maxime@2a01cb0883359800fd368d07cdffdcdf.ipv6.abo.wanadoo.fr) |
| 13:29:24 | → | son0p joins (~ff@181.136.122.143) |
| 13:30:04 | → | yourname_ joins (~barrucadu@carcosa.barrucadu.co.uk) |
| 13:32:04 | → | favonia joins (~favonia@user/favonia) |
| 13:34:49 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 13:36:49 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 13:46:24 | → | cods joins (~fred@82-65-232-44.subs.proxad.net) |
| 13:51:04 | × | cods quits (~fred@82-65-232-44.subs.proxad.net) (Ping timeout: 250 seconds) |
| 13:51:29 | → | img joins (~img@user/img) |
| 13:54:14 | <wz1000> | kuribas: https://gitlab.haskell.org/ghc/ghc/-/issues/17768#note_374060 |
| 13:55:20 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 13:55:26 | × | thyriaen quits (~thyriaen@dynamic-078-055-123-051.78.55.pool.telefonica.de) (Remote host closed the connection) |
| 13:56:25 | → | cods joins (~fred@82-65-232-44.subs.proxad.net) |
| 13:57:17 | → | thyriaen joins (~thyriaen@dynamic-078-055-123-051.78.55.pool.telefonica.de) |
| 13:59:53 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 14:02:36 | <Gurkenglas> | ...does idris just not build on a modern resolve with allow-newer? |
| 14:04:30 | <Gurkenglas> | janus, what do you use for idris? stack install idris? something something idris2? |
| 14:09:31 | <kuribas> | wz1000: are you sure it's applicative do? |
| 14:09:40 | <wz1000> | yes, remove it and it will work |
| 14:09:52 | <kuribas> | wz1000: I did, and I got the same error? |
| 14:10:22 | <kuribas> | wz1000: nice reduction! |
| 14:11:04 | <kuribas> | wz1000: in any case, that should be sort enough for them to find the problem? |
| 14:11:19 | <kuribas> | wz1000: or are you a ghc hacker as well? |
| 14:12:08 | <wz1000> | yes |
| 14:12:44 | → | amahl joins (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
| 14:16:21 | <kuribas> | wz1000: I am getting the same error with applicative. |
| 14:17:08 | <wz1000> | with applicative? |
| 14:17:14 | <wz1000> | you mean without applicative do? |
| 14:17:17 | <kuribas> | wz1000: https://gist.github.com/kuribas/9bf506b79dd2690600c4c06108efae59 |
| 14:17:22 | <kuribas> | wz1000: yes |
| 14:17:38 | <wz1000> | ApplicativeDo is enabled in that file |
| 14:18:09 | <kuribas> | wz1000: oh wait, do you mean only enabling it? |
| 14:18:15 | <wz1000> | yes |
| 14:18:42 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 14:19:00 | <kuribas> | weird that enabling it would break code that doesn't use it... |
| 14:19:17 | <wz1000> | it does - applicativedo rewrites all do statements |
| 14:19:29 | <wz1000> | *do blocks |
| 14:19:40 | × | oxide quits (~lambda@user/oxide) (Ping timeout: 250 seconds) |
| 14:19:42 | <kuribas> | wz1000: so you mean the outer do block triggers it then? |
| 14:19:47 | <wz1000> | yes |
| 14:20:03 | <kuribas> | applicativeDo also isn't very smart. |
| 14:20:16 | <wz1000> | true. It is kind of half baked |
| 14:20:23 | <wz1000> | there are many open issues on the tracker |
| 14:20:28 | <kuribas> | right... |
| 14:20:31 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
| 14:20:45 | → | oxide joins (~lambda@user/oxide) |
| 14:20:45 | <kuribas> | Still it's very handy together with records. |
| 14:20:46 | <wz1000> | there is -optimal-applicative-do or something if you want |
| 14:21:18 | <kuribas> | Otherwise you need to do "MyRecord <$> field1 <*> field2 <*> field3", and so easy to mix them up. |
| 14:21:18 | <wz1000> | https://downloads.haskell.org/ghc/latest/docs/html/users_guide/exts/applicative_do.html#ghc-flag--foptimal-applicative-do |
| 14:22:13 | <kuribas> | I just bypass the problem by doing do field1 <- field1A; field2 <- field2A; pure $ MyRecord {field1, field2, field3 = pureComputation} |
| 14:22:22 | × | thyriaen quits (~thyriaen@dynamic-078-055-123-051.78.55.pool.telefonica.de) (Remote host closed the connection) |
| 14:22:31 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 14:28:25 | <kuribas> | wz1000: that's a silly flag |
| 14:28:42 | <kuribas> | why would I want "suboptimal-applicative-do"? |
| 14:29:27 | <wz1000> | kuribas: because it is faster |
| 14:31:43 | tomsmeding | . o O ( O(n^3), that's some heavy complexity for a compiler ) |
| 14:33:22 | <kuribas> | why would that need to be so slow? Isn't it just creating a graph? |
| 14:33:25 | → | vysn joins (~vysn@user/vysn) |
| 14:41:16 | → | turlando joins (~turlando@93-42-250-112.ip89.fastwebnet.it) |
| 14:41:16 | × | turlando quits (~turlando@93-42-250-112.ip89.fastwebnet.it) (Changing host) |
| 14:41:16 | → | turlando joins (~turlando@user/turlando) |
| 14:50:08 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 256 seconds) |
| 14:50:25 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 14:51:25 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 14:56:47 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 245 seconds) |
| 14:57:05 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 14:58:22 | → | DNH joins (~DNH@8.43.122.27) |
| 15:00:04 | × | APic quits (apic@apic.name) (Read error: Connection reset by peer) |
| 15:00:24 | → | APic joins (apic@apic.name) |
| 15:01:46 | × | hgolden quits (~hgolden2@cpe-172-114-84-61.socal.res.rr.com) (Ping timeout: 252 seconds) |
| 15:02:52 | × | DNH quits (~DNH@8.43.122.27) (Ping timeout: 252 seconds) |
| 15:03:40 | → | ryantrinkle joins (~ryan@66.152.129.6) |
| 15:03:48 | <ryantrinkle> | is there a good tool for removing unused imports these days? |
| 15:04:27 | <ryantrinkle> | i tried fix-imports, but it only removed Data.ByteString.Lazy (even though lots of other imports are unused since I just cleared a ton of stuff out of the file) |
| 15:05:03 | <ryantrinkle> | i'm trying to try importify, but the version in nixpkgs doesn't build |
| 15:05:16 | <wz1000> | ryantrinkle: HLS can do it |
| 15:05:50 | × | mikoto-chan quits (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Quit: mikoto-chan) |
| 15:06:44 | <ryantrinkle> | wz1000: ah ok, in-editor i guess? |
| 15:06:58 | <wz1000> | yes |
| 15:07:34 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 15:07:34 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 15:07:34 | → | wroathe joins (~wroathe@user/wroathe) |
| 15:14:13 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Remote host closed the connection) |
| 15:20:14 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 15:25:01 | × | APic quits (apic@apic.name) (Read error: Connection reset by peer) |
| 15:25:35 | → | APic joins (apic@apic.name) |
| 15:27:04 | × | pgib quits (~textual@173-38-117-70-rtp-corp-nat-pool.cisco.com) (Ping timeout: 252 seconds) |
| 15:28:47 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
| 15:29:04 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 15:34:49 | → | mrus joins (~mrus@2001:19f0:5:1535:5400:3ff:fe7d:10ae) |
| 15:36:26 | × | jess quits (~jess@libera/staff/jess) () |
| 15:40:01 | × | APic quits (apic@apic.name) (Read error: Connection reset by peer) |
| 15:42:30 | → | kenran joins (~kenran@200116b82bb269000c0e8623ae0a9f2b.dip.versatel-1u1.de) |
| 15:45:12 | → | APic joins (apic@apic.name) |
| 15:48:14 | → | madjestic joins (~madjestic@88-159-247-120.fixed.kpn.net) |
| 15:49:17 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 15:50:10 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
| 15:50:23 | → | MQ-17J joins (~MQ-17J@8.21.10.6) |
| 15:51:49 | × | sleblanc quits (~sleblanc@user/sleblanc) (Ping timeout: 252 seconds) |
| 15:52:04 | → | mikoto-chan joins (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
| 15:52:59 | <ryantrinkle> | wz1000: any idea how to actually make emacs do it? |
| 15:53:02 | <ryantrinkle> | i think i've got lsp working |
| 15:53:21 | <wz1000> | look for "code actions" in your lsp client |
| 15:53:35 | <wz1000> | you need to trigger it over a redundant import I think |
| 15:53:41 | → | lavaman joins (~lavaman@98.38.249.169) |
| 15:53:43 | <wz1000> | (which should be highlighted) |
| 15:54:07 | <wz1000> | then you will get an option ("code action") to remove all redundant imports |
| 15:54:34 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
| 15:55:44 | → | fernand joins (~fernand@179.156.35.4) |
| 15:55:59 | <monochrom> | I use ghc's -ddump-minimal-imports |
| 15:57:56 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
| 16:04:21 | × | vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.2) |
| 16:05:01 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 252 seconds) |
| 16:05:45 | → | x_kuru joins (~xkuru@user/xkuru) |
| 16:06:47 | × | fernand quits (~fernand@179.156.35.4) (Ping timeout: 245 seconds) |
| 16:07:33 | → | TranquilEcho joins (~grom@user/tranquilecho) |
| 16:08:52 | × | xkuru quits (~xkuru@user/xkuru) (Ping timeout: 252 seconds) |
| 16:13:20 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
| 16:20:40 | × | thelounge9230681 quits (~thelounge@cpe-75-85-161-60.san.res.rr.com) (Ping timeout: 240 seconds) |
| 16:21:24 | <kaol> | Really weird. I have two IntMaps that have equal keys. intersectionWith (,) yields an empty list. But doing IntMap.fromList . IntMap.toList on one of them makes it work. And using (==) on that variable and the one piped through that yields False. How can IntMap.fromList . IntMap.toList not be identity? |
| 16:22:22 | <geekosaur> | Doubles? |
| 16:23:10 | <geekosaur> | (in particular any NaNs will break the IntMap) |
| 16:23:11 | <kaol> | No, I don't have any Doubles in my data. |
| 16:23:14 | <c_wraith> | eh, that shouldn't matter in the values, and the keys of an IntMap are always Int |
| 16:23:24 | → | orcalikastecona joins (~orca@047-134-143-165.res.spectrum.com) |
| 16:23:25 | <geekosaur> | mm, right. sorry |
| 16:23:37 | <hpc> | @where paste |
| 16:23:37 | <lambdabot> | Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com |
| 16:23:49 | <hpc> | can you make a minimal reproduction? |
| 16:24:35 | <kaol> | I'll try. |
| 16:25:00 | × | APic quits (apic@apic.name) (Read error: Connection reset by peer) |
| 16:25:01 | <kaol> | Or at least one that doesn't require my DB for running it. |
| 16:25:17 | → | APic joins (apic@apic.name) |
| 16:26:51 | <hpc> | it'll be interesting to see what the root cause is |
| 16:28:16 | → | retroid_ joins (~retro@176.255.22.194) |
| 16:29:26 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 16:29:26 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 16:29:26 | → | wroathe joins (~wroathe@user/wroathe) |
| 16:33:37 | × | madjestic quits (~madjestic@88-159-247-120.fixed.kpn.net) (Ping timeout: 252 seconds) |
| 16:34:05 | → | pbrisbin joins (~patrick@pool-108-16-214-93.phlapa.fios.verizon.net) |
| 16:34:17 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
| 16:34:31 | × | oxide quits (~lambda@user/oxide) (Quit: oxide) |
| 16:36:40 | <kaol> | It's not reproducible without my DB (obviously) but here's the code. I had that exact same intersectionWith before but I moved it to a different function and that broke it. https://gitlab.com/piperka/piperka/-/commit/a6237d956f370208a38f9a55905d2c4297ec4a52 |
| 16:37:11 | → | myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net) |
| 16:37:29 | <Gurkenglas> | kaol, when you take the map to a list and back and the write it to your db and back, does that land back where it started? |
| 16:38:01 | × | retroid_ quits (~retro@176.255.22.194) (Ping timeout: 252 seconds) |
| 16:39:08 | <kaol> | My code's really not built for pushing this data back to the DB that way. |
| 16:40:32 | <Gurkenglas> | kaol, presumably you checked that their keys are equal. when you do unionwith, what happens? |
| 16:42:02 | <kaol> | N/A, my IntMaps have different types, can't union them. (sort $ IntMap.keys a) == (sort $ IntMap.keys b) yields True. |
| 16:42:55 | <Gurkenglas> | then merge, i suppose. |
| 16:45:14 | × | hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 252 seconds) |
| 16:45:15 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Quit: Leaving) |
| 16:45:25 | <hololeap> | kaol, I think I see the problem |
| 16:45:41 | <kaol> | I tried mergeWithKey already. Same result, empty IntMap. |
| 16:45:47 | <hololeap> | Oh, nvm, this is a diff view and I was reading it wrong :/ |
| 16:46:43 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 16:48:19 | <Gurkenglas> | kaol, what does size :: IntMap a -> Int say about the two? |
| 16:48:33 | <hololeap> | kaol: this might be grasping at straws, but have you tried Data.IntMap.Strict? |
| 16:48:38 | <Gurkenglas> | and perhaps null :: IntMap a -> Bool |
| 16:49:34 | <Gurkenglas> | kaol, have you considered using the ghci debugger in this desparate circumstance? :3 |
| 16:49:36 | <kaol> | Yes, it didn't change anything. |
| 16:49:47 | <hpc> | you're building an IntMap with fromAscList, is the input list sorted? |
| 16:50:03 | <kaol> | (yes to trying Data.IntMap.Strict) |
| 16:50:35 | <hpc> | (try Debug.Trace-ing as you build the IntMap) |
| 16:51:19 | <Gurkenglas> | (look at the source of null and size, null won't be useful, and size is unlikely to be. i had hoped there may be an inconsistent size cache in there) |
| 16:51:19 | <kaol> | Good call, that sounds like a reasonable thing that would break it. |
| 16:51:26 | <hololeap> | hpc, good catch |
| 16:51:28 | → | hyiltiz joins (~quassel@31.220.5.250) |
| 16:51:45 | <Gurkenglas> | s/look/looking/ |
| 16:51:57 | <hololeap> | that would explain why (IntMap.fromList . IntMap.toList) would fix it |
| 16:52:03 | <kaol> | Postgresql has implicitly ordered it before but I think adding that function broke it. |
| 16:52:43 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c1b9:a2b:77a8:fec7) |
| 16:54:48 | <kaol> | Yes, after adding that ORDER BY to my query everything works again. Hopefully I won't be making same mistake again anytime soon! Thanks for pointing it out to me. |
| 16:55:28 | <hpc> | yeah, the ordering was probably because scanning that index was optimal in the query plan |
| 16:58:09 | → | slowButPresent joins (~slowButPr@user/slowbutpresent) |
| 17:01:44 | × | kenran quits (~kenran@200116b82bb269000c0e8623ae0a9f2b.dip.versatel-1u1.de) (Ping timeout: 252 seconds) |
| 17:02:12 | × | pbrisbin quits (~patrick@pool-108-16-214-93.phlapa.fios.verizon.net) (Ping timeout: 245 seconds) |
| 17:02:41 | → | kenran joins (~kenran@200116b82bb2690022d6d62970fa28b8.dip.versatel-1u1.de) |
| 17:05:11 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 17:13:56 | → | ubert joins (~Thunderbi@178.115.47.210.wireless.dyn.drei.com) |
| 17:15:51 | → | econo joins (uid147250@user/econo) |
| 17:19:26 | fendor_ | is now known as fendor |
| 17:20:22 | × | MQ-17J quits (~MQ-17J@8.21.10.6) (Ping timeout: 252 seconds) |
| 17:23:04 | <ryantrinkle> | any idea what could cause this? Error processing message (void-function lsp-modeline-workspace-status-mode) |
| 17:26:29 | × | ubert quits (~Thunderbi@178.115.47.210.wireless.dyn.drei.com) (Quit: ubert) |
| 17:26:46 | → | ubert joins (~Thunderbi@178.115.47.210.wireless.dyn.drei.com) |
| 17:28:12 | → | ubert1 joins (~Thunderbi@178.115.47.210.wireless.dyn.drei.com) |
| 17:28:12 | → | hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com) |
| 17:29:46 | → | pbrisbin joins (~patrick@pool-108-16-214-93.phlapa.fios.verizon.net) |
| 17:31:22 | × | ubert quits (~Thunderbi@178.115.47.210.wireless.dyn.drei.com) (Ping timeout: 252 seconds) |
| 17:31:22 | ubert1 | is now known as ubert |
| 17:35:13 | <hololeap> | lets say that there is a monoid where, forall b. `A <> b = A` and `b <> A = A` ... is there a name for A's behavior here? |
| 17:35:50 | <hpc> | so like 0 in multiplication? |
| 17:36:00 | <hololeap> | correct |
| 17:36:19 | <hpc> | i don't know off the top of my head what the name would be, but you can start by looking at rings maybe? |
| 17:36:23 | <Gurkenglas> | hololeap, https://hackage.haskell.org/package/semirings |
| 17:36:45 | <hpc> | ooh yeah, zero's as good a name as any |
| 17:37:06 | <kaol> | https://en.wikipedia.org/wiki/Absorbing_element |
| 17:38:25 | <hololeap> | cool, thanks for the links |
| 17:40:00 | × | APic quits (apic@apic.name) (Read error: Connection reset by peer) |
| 17:40:10 | × | xstill quits (~xstill@fimu/xstill) (Ping timeout: 252 seconds) |
| 17:41:09 | → | xstill joins (~xstill@fimu/xstill) |
| 17:42:48 | × | xstill quits (~xstill@fimu/xstill) (Client Quit) |
| 17:44:08 | → | brandonh joins (brandonh@gateway/vpn/protonvpn/brandonh) |
| 17:44:41 | × | brandonh quits (brandonh@gateway/vpn/protonvpn/brandonh) (Client Quit) |
| 17:45:06 | → | xstill joins (~xstill@gate.vstill.cz) |
| 17:45:06 | × | xstill quits (~xstill@gate.vstill.cz) (Changing host) |
| 17:45:06 | → | xstill joins (~xstill@fimu/xstill) |
| 17:52:59 | → | lavaman joins (~lavaman@98.38.249.169) |
| 17:54:00 | → | azeem joins (~azeem@2a00:801:23f:d6b0:3dc9:5843:deaf:1727) |
| 17:56:52 | → | APic joins (apic@apic.name) |
| 17:58:22 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 17:58:22 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 17:58:22 | → | wroathe joins (~wroathe@user/wroathe) |
| 17:59:42 | × | cheater quits (~Username@user/cheater) (Ping timeout: 245 seconds) |
| 18:05:46 | × | pbrisbin quits (~patrick@pool-108-16-214-93.phlapa.fios.verizon.net) (Ping timeout: 240 seconds) |
| 18:07:37 | → | Guest82 joins (~textual@ool-4579fedc.dyn.optonline.net) |
| 18:08:12 | × | Guest82 quits (~textual@ool-4579fedc.dyn.optonline.net) (Client Quit) |
| 18:12:07 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 18:19:13 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds) |
| 18:20:44 | <hexeme> | i did a rotation cipher in haskell \o/ |
| 18:21:15 | → | cheater joins (~Username@user/cheater) |
| 18:21:40 | <Hecate> | hexeme: hurray! |
| 18:22:29 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 18:22:52 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 18:24:54 | × | max22- quits (~maxime@2a01cb0883359800fd368d07cdffdcdf.ipv6.abo.wanadoo.fr) (Ping timeout: 256 seconds) |
| 18:25:07 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 18:29:16 | × | mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 250 seconds) |
| 18:33:38 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c1b9:a2b:77a8:fec7) (Remote host closed the connection) |
| 18:34:07 | <janus> | Gurkenglas: "Conn handler already done" just means that the library user handed a coroutine to the library that doesn't actually handle requests, but immediatly exits. It doesn't really hurt the event loop, so i am not sure why the program would need to die |
| 18:35:23 | <janus> | Gurkenglas: i was thinking of maybe putting Void in the Cont for connection handler coroutines, since that would fit my HTTP2 use case just fine, and i could shave off those Result case matches |
| 18:36:04 | <janus> | Gurkenglas: but on the other hand, there are protocols where you'd like to terminate the connection, and Result could serve that purpose. So I have the current situation because i don't know which way to go here |
| 18:37:13 | <janus> | in related news, i found out my Cont was totally broken because i had used idris' proof search to define its methods :O gotta be careful with new toys :P |
| 18:38:06 | <Gurkenglas> | You're using idris2, right? Setup was painful enough I gave up on it |
| 18:38:23 | <janus> | yes, i am using master from last week |
| 18:38:51 | <janus> | setup is super smooth for me, i am on ubuntu. i used to use chez from ubuntu, but now i use one from master, since i thought i had found a chez bug |
| 18:39:05 | <hexeme> | Is it possible to do games in haskell? Or is it always more of a hack/trick to do that? |
| 18:39:06 | <janus> | turned out it was my mistake :P |
| 18:39:32 | <hexeme> | Is there a popular 2D surface/canvas library to play with? |
| 18:40:16 | <[exa]> | hexeme: try Gloss |
| 18:40:19 | <Gurkenglas> | janus, can you tell what silly mistake I'm making? https://bpa.st/YYPQ |
| 18:40:23 | <hexeme> | thanks |
| 18:40:25 | <[exa]> | hexeme: it's literally made for starting easy |
| 18:40:41 | <hexeme> | I guess I need to learn how to use packages first :P |
| 18:41:23 | <janus> | Gurkenglas: from that output , i can't say. looks like a shell scripting problem? are you on BSD or Mac? |
| 18:41:32 | <orcalikastecona> | hexeme: Gloss is nice, +1 from me |
| 18:41:38 | <Gurkenglas> | ubuntu via windows subsystem for linux |
| 18:41:38 | <hexeme> | right on |
| 18:41:54 | <[exa]> | hexeme: either you install it via cabal and setup ghc to include the gloss package to compilation (ghc -package gloss mygame.hs -o mygame, or so), or, much better, make a cabal package with your project and add gloss as a dependency |
| 18:42:03 | <orcalikastecona> | hexeme: Are you familiar with haskell build tools like cabal or stack? |
| 18:42:08 | <[exa]> | hexeme: generally, `cabal init` in an empty directory should do like 90% of it :] |
| 18:42:11 | → | Guest66 joins (~textual@2601:586:c180:47d0:ad98:e3f9:ca65:9bfb) |
| 18:42:46 | <hexeme> | I have been reading Haskell From First Principles for a few days now, so basically just screwing around with ghcid |
| 18:42:47 | <janus> | Gurkenglas: hmmm i wouldn't trust WSL2 to be fully compatible... if you have enough memory, i'd recommend having a real vm |
| 18:42:49 | <[exa]> | hexeme: this is pretty useful https://wiki.haskell.org/How_to_write_a_Haskell_program#Structure_of_a_simple_project |
| 18:42:55 | <hexeme> | thank you! |
| 18:43:15 | <c_wraith> | janus: wsl2 works perfectly well. It's a real linux kernel, which fixed all the issues GHC had under wsl1 |
| 18:43:17 | <hexeme> | janus: WSL2 is pretty dope |
| 18:43:17 | <[exa]> | I can't say about any kinds of ide though, I'm avoiding these things |
| 18:43:37 | <hexeme> | [exa]: got that all setup in vscode |
| 18:44:40 | <hexeme> | i also use nixos so i'm betting there's a nixos way to use cabal/packages |
| 18:44:50 | <janus> | well, what could possibly be breaking Gurkenglas' idris build? maybe filesystem incompatibilities? how does WSL provides ext4-like guarantees on NTFS? |
| 18:45:28 | <[exa]> | hexeme: yeah many people do nix with haskell, actually even the current cabal way of building and storing stuff is heavily inspired by that |
| 18:46:59 | → | pbrisbin joins (~patrick@pool-108-16-214-93.phlapa.fios.verizon.net) |
| 18:47:39 | <shapr> | hexeme: nix-shell -p cookiecutter git --run 'cookiecutter gh:utdemir/hs-nix-template' |
| 18:47:48 | <shapr> | That's how I start a new Haskell project in nixos |
| 18:49:39 | × | kuribas quits (~user@ptr-25vy0i6xfv8pdfgun1l.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3)) |
| 18:50:05 | × | APic quits (apic@apic.name) (Read error: Connection reset by peer) |
| 18:51:30 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 18:51:34 | <hexeme> | hmm seems to be downloading a pin of nixpkgs or something |
| 18:54:26 | → | max22- joins (~maxime@2a01cb08833598002ab2b51b25a0cd4b.ipv6.abo.wanadoo.fr) |
| 18:55:15 | <hexeme> | heh i actually ran out of disk space |
| 18:55:18 | <hexeme> | wonder why it does that |
| 18:55:41 | → | APic joins (apic@apic.name) |
| 18:59:06 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 19:00:33 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c1b9:a2b:77a8:fec7) |
| 19:03:17 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
| 19:04:24 | → | sleblanc joins (~sleblanc@user/sleblanc) |
| 19:04:40 | × | kenran quits (~kenran@200116b82bb2690022d6d62970fa28b8.dip.versatel-1u1.de) (Ping timeout: 240 seconds) |
| 19:05:11 | → | cptaffe joins (~connor@2600:1700:f08:1110:c843:5621:bfb6:7631) |
| 19:05:53 | → | kenran joins (~kenran@200116b82bb26900a953bf306bfc7506.dip.versatel-1u1.de) |
| 19:07:36 | → | bec joins (~bec@user/bec) |
| 19:08:10 | <bec> | Hello! |
| 19:08:18 | <yushyin> | hi bec |
| 19:08:33 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 19:08:48 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit) |
| 19:09:03 | <bec> | I have a question about GHC warnings, is there a way to tell GHC to emit a compilation warning when a specific typeclass instance is used? |
| 19:09:55 | × | max22- quits (~maxime@2a01cb08833598002ab2b51b25a0cd4b.ipv6.abo.wanadoo.fr) (Quit: Leaving) |
| 19:11:34 | <hpc> | iirc there's something that's (String -> Context) which fails compilation with your message |
| 19:13:48 | <[exa]> | hexeme: environment reproducibility eats space. |
| 19:15:00 | × | APic quits (apic@apic.name) (Read error: Connection reset by peer) |
| 19:16:36 | <bec> | > iirc there's something that's (String -> Context) which fails compilation with your message |
| 19:16:38 | <lambdabot> | error: |
| 19:16:38 | <lambdabot> | Pattern syntax in expression context: String -> Context |
| 19:17:10 | <bec> | I would prefer not to fail compilation, as some people may have working codebases that would be effected. |
| 19:18:51 | <maerwald> | maybe https://downloads.haskell.org/~ghc/8.10.7/docs/html/users_guide/glasgow_exts.html?highlight=deprecated#pragma-DEPRECATED |
| 19:19:31 | <hpc> | bec: yeah, but that would be a place to start looking - if i was a standard library author i would define an equivalent for compiler warnings and put that in the same module |
| 19:22:27 | <maerwald> | move the instance to its own module, add module-level WARNING pragma |
| 19:22:54 | <maerwald> | users will get a compile error when upgrading, need to read the changelog and can still keep their codebases running |
| 19:23:28 | <maerwald> | and don't be afraid of orphan instances |
| 19:23:57 | → | hololeap_ joins (~hololeap@user/hololeap) |
| 19:24:24 | × | hololeap quits (~hololeap@user/hololeap) (Ping timeout: 276 seconds) |
| 19:26:22 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 19:32:00 | → | APic joins (apic@apic.name) |
| 19:32:10 | <bec> | Thanks Maerwald, that's a good idea! I'll try it. |
| 19:35:38 | → | talismanick joins (~user@2601:644:8500:8350::3ed5) |
| 19:38:11 | → | acidjnk_new joins (~acidjnk@p200300d0c7203078fd6a92c92b819b7b.dip0.t-ipconnect.de) |
| 19:39:57 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 19:40:04 | × | hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 252 seconds) |
| 19:43:12 | → | hyiltiz joins (~quassel@31.220.5.250) |
| 19:44:28 | × | pbrisbin quits (~patrick@pool-108-16-214-93.phlapa.fios.verizon.net) (Ping timeout: 252 seconds) |
| 19:44:41 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 19:46:12 | <raehik> | How do I make a "closeable" channel for concurrent communication in Haskell? So I can send a bunch of jobs, have them consumed by workers, then have the workers close themselves when all jobs are done |
| 19:47:27 | <raehik> | I found the stm-chans package through an old snoyberg blog post, but I can't find too much literature/usage of it. want to confirm that I'm looking in the right place |
| 19:48:03 | <tomsmeding> | bec: the thing you were thinking of was probably https://hackage.haskell.org/package/base-4.15.0.0/docs/GHC-TypeLits.html#t:TypeError but that's an error, not a warning |
| 19:49:30 | × | pounce quits (~pounce@facebook/engineering/pounce) (Remote host closed the connection) |
| 19:50:10 | <hpc> | raehik: Chan is garbage-collected and forkIO threads go away when their action is complete, if you want to go simple |
| 19:50:18 | hololeap_ | is now known as hololeap |
| 19:51:27 | <raehik> | hpc: but how do I indicate that a channel of a s is closed? not just empty |
| 19:51:42 | <raehik> | -- assuming I'm not using the stm-chans pkg |
| 19:52:29 | <bec> | tomsmeding I was looking for something that would make a warning, but it seems I'm out of luck. I'm trying maerwald's idea, but I'm not sure it will work since warnings in method instances don't trigger. |
| 19:53:33 | → | max22- joins (~maxime@2a01cb08833598005a7785a489aeabb8.ipv6.abo.wanadoo.fr) |
| 19:53:36 | <bec> | My idea was to add an overlapping instance B to an overlapped instance A, having in mind that I could make it so when the instance B is used, a warning is emitted. |
| 19:53:59 | <maerwald> | bec: the warning is module level |
| 19:54:12 | <bec> | But it seems this is not easy. |
| 19:54:17 | <maerwald> | why? |
| 19:54:43 | <maerwald> | the warning will be emitted when you import the module |
| 19:55:26 | <bec> | If that's so, the warning would be emitted inside the library rather than in the code using the library, and resolving to this particular instance. |
| 19:56:07 | <Hecate> | hohai bec |
| 19:56:09 | <bec> | I want the warning to be emitted not when the module is imported, but when the compiler resolves to that instance. |
| 19:56:44 | → | pounce joins (~pounce@facebook/engineering/pounce) |
| 19:56:52 | × | orcalikastecona quits (~orca@047-134-143-165.res.spectrum.com) (Quit: WeeChat 2.8) |
| 19:57:03 | <bec> | Hi Hecate :) |
| 19:57:04 | <Hecate> | bec: yeah I don't think we have a nice middle ground between TypeError and DEPRECATED |
| 19:57:19 | → | lavaman joins (~lavaman@98.38.249.169) |
| 19:58:26 | <hpc> | raehik: you'd send something over the channel that indicates the end of it |
| 19:58:44 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Remote host closed the connection) |
| 19:58:44 | <hpc> | and then on the other side do the appropriate cleanup |
| 19:58:52 | → | amitnjha joins (~amit@024-216-124-116.res.spectrum.com) |
| 19:59:03 | <bec> | Hecate: even with DEPRECATED, I don't really know whether it would trigger. |
| 19:59:10 | → | burnsidesLlama joins (~burnsides@dhcp168-019.wadham.ox.ac.uk) |
| 19:59:43 | <raehik> | hpc: but I have multiple threads reading from the channel, if I send 1 thing it'll only get caught once |
| 19:59:53 | <hpc> | ah right |
| 20:00:15 | <raehik> | stm-chans and snoyberg's post both have solutions -- I'm just kind of unsure why those solutions aren't in a more major library |
| 20:01:40 | <hpc> | iirc with regular Chans you can make one that is broadcast |
| 20:01:46 | <hpc> | maybe stm-chans has something similar |
| 20:01:47 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 245 seconds) |
| 20:01:51 | × | Guest66 quits (~textual@2601:586:c180:47d0:ad98:e3f9:ca65:9bfb) (Quit: Textual IRC Client: www.textualapp.com) |
| 20:02:01 | <hpc> | then you have two Chans, one for the job queue and one for control |
| 20:03:11 | <maerwald> | bec: no, the users imports the module |
| 20:03:27 | × | burnsidesLlama quits (~burnsides@dhcp168-019.wadham.ox.ac.uk) (Ping timeout: 245 seconds) |
| 20:03:44 | × | hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 250 seconds) |
| 20:03:55 | × | amitnjha quits (~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha) |
| 20:04:09 | → | amitnjha joins (~amit@024-216-124-116.res.spectrum.com) |
| 20:04:34 | <hpc> | and if you want to interrupt jobs in progress you get into signals, which i don't enjoy thinking about so i couldn't help you with that |
| 20:04:40 | × | juhp quits (~juhp@128.106.188.220) (Ping timeout: 240 seconds) |
| 20:04:53 | → | hyiltiz joins (~quassel@31.220.5.250) |
| 20:04:56 | <hpc> | er, not signals - async exceptions |
| 20:05:13 | <hpc> | (too much time writing bash lol) |
| 20:06:29 | <bec> | maerwald: that would be too breaking for too little benefit I believe. |
| 20:06:34 | <raehik> | hpc: right, thanks, a separate control queue makes sense |
| 20:07:08 | <maerwald> | bec: well, it's a reasonable way to tell you users API changed and force them to read the changelog |
| 20:07:22 | → | juhp joins (~juhp@128.106.188.220) |
| 20:07:31 | <maerwald> | the fix will take 5 minutes |
| 20:07:47 | → | Everything joins (~Everythin@37.115.210.35) |
| 20:07:47 | × | dsrt^ quits (~dsrt@wsip-98-188-244-188.mc.at.cox.net) (Remote host closed the connection) |
| 20:07:49 | <bec> | maerwald: besides, the pattern covered by this instance is also covered by another, overlapped instance, so people falling in the warning trap wouldn't notice. |
| 20:08:05 | <raehik> | hpc: ah, stm-chans actually does that exactly. it's just a (TQueue a, TVar Bool). now I understand why it's separate! |
| 20:08:20 | <hololeap> | type instance Output Dependency t = Output DepVersion t |
| 20:08:27 | <bec> | It's not an api change, the goal is to add a warning on a subset of an existing instance that may be ambiguous for the users. |
| 20:08:42 | <hololeap> | The type family application ‘Output DepVersion t’ is no smaller than the instance head ‘Output Dependency t’ (Use UndecidableInstances to permit this) |
| 20:08:49 | <hpc> | ah, nice |
| 20:08:53 | <hololeap> | can someone explain to me what this means? |
| 20:09:40 | × | gmc quits (sid58314@id-58314.ilkley.irccloud.com) (Ping timeout: 240 seconds) |
| 20:09:56 | <hpc> | when the compiler does instance resolution, it wants to know that resolution will always terminate |
| 20:09:58 | <tomsmeding> | hololeap: presumably nr 2 in https://downloads.haskell.org/ghc/latest/docs/html/users_guide/exts/type_families.html#decidability-of-type-synonym-instances |
| 20:10:06 | → | gmc joins (sid58314@id-58314.ilkley.irccloud.com) |
| 20:10:43 | <hpc> | "smaller" has a specific meaning, which... that link explains |
| 20:11:26 | × | carter quits (sid14827@id-14827.helmsley.irccloud.com) (Ping timeout: 256 seconds) |
| 20:11:45 | <tomsmeding> | monochrom enlightened me to the quality of ghc's user guide |
| 20:12:42 | <hpc> | yeah, it's easy to forget it's there |
| 20:12:57 | → | carter joins (sid14827@id-14827.helmsley.irccloud.com) |
| 20:13:21 | <hpc> | here's another one for you, next time someone asks for resources to learn haskell point them to https://www.haskell.org/documentation/ |
| 20:13:30 | <hpc> | instead of a dozen different specific links |
| 20:13:49 | <tomsmeding> | I'm not even sure whether giving a beginner 10 links instead of 1 is better |
| 20:13:54 | <tomsmeding> | but it's certainly fairer |
| 20:13:54 | × | pounce quits (~pounce@facebook/engineering/pounce) (Remote host closed the connection) |
| 20:14:33 | <hpc> | it gets them in the habit of going to haskell.org too |
| 20:14:38 | → | orcalikastecona joins (~orca@047-134-143-165.res.spectrum.com) |
| 20:14:50 | <hololeap> | ok, what confuses me is that it gives this error when I have: data Dependency = Dependency DepVersion Category Name |
| 20:15:04 | → | otto_s_ joins (~user@p5b04481b.dip0.t-ipconnect.de) |
| 20:15:04 | × | orcalikastecona quits (~orca@047-134-143-165.res.spectrum.com) (Client Quit) |
| 20:15:09 | <hololeap> | but if I have: data Dependency' a b c = Dependency a b c |
| 20:15:27 | → | orcalikastecona joins (~orca@047-134-143-165.res.spectrum.com) |
| 20:15:33 | <hololeap> | and: type Dependency = Dependency' DepVersion Category Name |
| 20:15:44 | <hololeap> | then that same code no longer requires UndecidableInstances |
| 20:16:04 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 20:16:10 | <hpc> | the heuristic doesn't cross data definitions |
| 20:16:18 | <hpc> | it sees "data Dependency" and "data DepVersion" |
| 20:16:24 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 20:16:30 | <tomsmeding> | well, the number of symbols in "Output DepVersion t" is certainly smaller than the number of symbols in "Output (Dependency' DepVersion Category Name) t" |
| 20:16:55 | <hololeap> | ok, so it's that simple of a heuristic, then |
| 20:17:06 | <hpc> | yeah |
| 20:17:12 | × | otto_s quits (~user@p5b044ad0.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 20:17:18 | → | pounce joins (~pounce@facebook/engineering/pounce) |
| 20:17:20 | <tomsmeding> | nobody said that ghc was smart ;) |
| 20:17:24 | <hpc> | the heuristic for type classes is even simpler |
| 20:17:28 | <hololeap> | haha :) |
| 20:17:56 | × | ubert quits (~Thunderbi@178.115.47.210.wireless.dyn.drei.com) (Remote host closed the connection) |
| 20:20:14 | → | benin03693235 joins (~benin@183.82.207.253) |
| 20:20:59 | × | orcalikastecona quits (~orca@047-134-143-165.res.spectrum.com) (Quit: WeeChat 2.8) |
| 20:22:48 | × | benin0369323 quits (~benin@183.82.207.253) (Ping timeout: 250 seconds) |
| 20:22:49 | benin03693235 | is now known as benin0369323 |
| 20:34:52 | → | lavaman joins (~lavaman@98.38.249.169) |
| 20:36:40 | → | acidjnk_new3 joins (~acidjnk@p200300d0c720307835a2456c1104dd43.dip0.t-ipconnect.de) |
| 20:38:22 | × | mikoto-chan quits (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 252 seconds) |
| 20:39:12 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
| 20:40:32 | × | acidjnk_new quits (~acidjnk@p200300d0c7203078fd6a92c92b819b7b.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 20:43:48 | → | ubert joins (~Thunderbi@178.115.47.210.wireless.dyn.drei.com) |
| 20:45:50 | × | neurocyte quits (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat) |
| 20:46:04 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds) |
| 20:47:53 | × | bec quits (~bec@user/bec) (Quit: Client closed) |
| 20:51:11 | → | neurocyte joins (~neurocyte@IP-213188117211.dialin.heagmedianet.de) |
| 20:51:11 | × | neurocyte quits (~neurocyte@IP-213188117211.dialin.heagmedianet.de) (Changing host) |
| 20:51:11 | → | neurocyte joins (~neurocyte@user/neurocyte) |
| 20:52:29 | <hololeap> | is there a standard way to convert UTF-8 characters to their closest ASCII equivalent (if there is one)? For instance, Ǘ would become U and ƈ would become c |
| 20:52:44 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 20:54:40 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds) |
| 20:54:52 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 252 seconds) |
| 20:55:07 | <hpc> | iconv's transliteration mode can do it |
| 20:55:15 | <hpc> | characters that can't translate become '?' |
| 20:55:19 | Lord_of_Life_ | is now known as Lord_of_Life |
| 20:55:27 | <hpc> | not sure what it would do for those specific characters |
| 20:55:44 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
| 20:56:00 | <hololeap> | ok, it might not even come up, but it was something I just thought of |
| 20:56:13 | <hpc> | ah, that works perfectly |
| 20:56:18 | <hpc> | $ iconv -t ascii//TRANSLIT |
| 20:56:18 | <hpc> | is there a standard way to convert UTF-8 characters to their closest ASCII equivalent (if there is one)? For instance, Ǘ would become U and ƈ would become c |
| 20:56:21 | <hpc> | is there a standard way to convert UTF-8 characters to their closest ASCII equivalent (if there is one)? For instance, U would become U and c would become c |
| 20:56:41 | <hpc> | https://hackage.haskell.org/package/iconv |
| 20:58:46 | → | o1lo01ol1o joins (~o1lo01ol1@bl13-86-242.dsl.telepac.pt) |
| 20:58:55 | <hololeap> | hpc, thanks |
| 20:58:58 | × | fendor quits (~fendor@77.119.200.43.wireless.dyn.drei.com) (Remote host closed the connection) |
| 20:58:59 | <Alex_test> | https://zen.yandex.ru/media/id/5c8f50adaedd2500b361ff31/liudi-ili-postliudi-kriterii-opredeleniia-postchelovechestva-v-fantastike-61344f2a3df852715d3bc812 |
| 20:59:22 | <stevenxl> | 👋 |
| 20:59:47 | <maerwald> | do I want to click that? |
| 21:01:33 | → | madjestic joins (~madjestic@88-159-247-120.fixed.kpn.net) |
| 21:01:49 | <hololeap> | it's some kind of russian blog post... |
| 21:02:00 | <shapr> | Alex_test: is that about Haskell? |
| 21:02:40 | × | Gurkenglas quits (~Gurkengla@dslb-088-075-022-191.088.075.pools.vodafone-ip.de) (Ping timeout: 250 seconds) |
| 21:03:04 | <hexeme> | I have a simple app that renders a circle animation using Gloss. I found the fsnotify library that allows you to execute a function when some files change. Can anyone help me integrate fsnotify into my small animation application, so that when any file changes, the animation stops and the program exits gracefully? |
| 21:03:06 | <hexeme> | https://gist.github.com/dustinlacewell/63953e45061087725388cc0b387c288f#file-gloss-hs |
| 21:03:53 | <hololeap> | shapr: no, it's about posthumanity in sci-fi writing... |
| 21:04:35 | <hexeme> | I'm brand new to haskell so I appologize ahead of time if I need some hand holding :X |
| 21:04:58 | <shapr> | Alex_test: please keep non-haskell discussions to a different channel |
| 21:05:15 | <AlexZenon> | <shapr> Alex_test: is that about Haskell? � missed the channel |
| 21:05:43 | <shapr> | AlexZenon: Is that a bot written in Haskell? If yes, is the source online? |
| 21:05:43 | <hexeme> | I included a snippet from the fsnotify library to demonstrate its use in the gist. |
| 21:06:40 | <Alex_test> | shapr: ����� ��� ���? � �� ���! |
| 21:07:28 | <AlexZenon> | shapr: my test user |
| 21:08:14 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:09:05 | <hololeap> | hexeme: you probably want to set up a `Chan Bool` to hold the state of whether or not anything has changed, then use that same Chan to stop the gloss loop |
| 21:09:15 | × | amitnjha quits (~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha) |
| 21:09:37 | → | amitnjha joins (~amit@024-216-124-116.res.spectrum.com) |
| 21:09:39 | <hexeme> | hololeap: Is it asking too much if maybe you could demonstrate with an edit? |
| 21:09:50 | <hexeme> | googling chans in the meantime |
| 21:10:06 | → | cafkafk joins (~cafkafk@user/cafkafk) |
| 21:11:16 | <hexeme> | fwiw, I think gloss has a `simulate` function as an alternative to `animate` which can take a state object |
| 21:11:18 | → | wroathe joins (~wroathe@96-88-30-181-static.hfc.comcastbusiness.net) |
| 21:11:18 | × | wroathe quits (~wroathe@96-88-30-181-static.hfc.comcastbusiness.net) (Changing host) |
| 21:11:18 | → | wroathe joins (~wroathe@user/wroathe) |
| 21:11:26 | <hexeme> | but i'm at the bleeding edge of my knowledge of gloss here :D |
| 21:12:02 | × | o1lo01ol1o quits (~o1lo01ol1@bl13-86-242.dsl.telepac.pt) (Remote host closed the connection) |
| 21:12:06 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 21:12:28 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
| 21:13:07 | <hexeme> | I'm thinking simulate may be needed to store/use the chan |
| 21:13:47 | × | ubert quits (~Thunderbi@178.115.47.210.wireless.dyn.drei.com) (Remote host closed the connection) |
| 21:14:05 | <hololeap> | you'll need to be in the IO monad to read the Chan, so the IO variations of the interface will be needed |
| 21:14:22 | → | o1lo01ol1o joins (~o1lo01ol1@bl13-86-242.dsl.telepac.pt) |
| 21:14:31 | <hololeap> | and you'll need a way to stop the loop, which I don't see in any of those interfaces |
| 21:14:42 | × | amitnjha quits (~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha) |
| 21:14:55 | → | amitnjha joins (~amit@024-216-124-116.res.spectrum.com) |
| 21:15:28 | × | MidAutumnMoon quits (~MidAutumn@user/midautumnmoon) (Ping timeout: 256 seconds) |
| 21:15:32 | <janus> | is there a bot for telling people things when they come back online? |
| 21:15:48 | <janus> | !later tell satan go to hell |
| 21:16:10 | × | slep quits (~slep@cpc150002-brnt4-2-0-cust437.4-2.cable.virginm.net) (Ping timeout: 240 seconds) |
| 21:16:24 | <shapr> | @tell janus hello there! |
| 21:16:24 | <lambdabot> | Consider it noted. |
| 21:17:19 | <shapr> | janus: now you say something in a channel lambdabot is also in, and you get a notification |
| 21:18:14 | × | kenran quits (~kenran@200116b82bb26900a953bf306bfc7506.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
| 21:18:44 | <enikar> | there is also memoserv: /msg memoserv help |
| 21:19:18 | <hexeme> | hololeap: I found a comment saying: "just call exitWith in input or step wherever you would check the condition, if all the chips have been eaten. exitWith is polymorphic in a an can be called in any IO a context, whatever a is. So IO world is ok." |
| 21:19:25 | <hexeme> | does that help? |
| 21:19:59 | <int-e> | :t System.Exit.exitWith |
| 21:20:01 | <lambdabot> | GHC.IO.Exception.ExitCode -> IO a |
| 21:20:26 | <janus> | shapr: very cool, thank you |
| 21:20:32 | <int-e> | :t System.Exit.ExitSuccess |
| 21:20:33 | <lambdabot> | GHC.IO.Exception.ExitCode |
| 21:20:53 | <int-e> | :t System.Exit.ExitFailure |
| 21:20:54 | <lambdabot> | Int -> GHC.IO.Exception.ExitCode |
| 21:22:07 | → | slep joins (~slep@cpc150002-brnt4-2-0-cust437.4-2.cable.virginm.net) |
| 21:22:27 | <int-e> | (A rather rare function to use IME, because exiting the whole program is not compositional.) |
| 21:22:55 | <hexeme> | i am trying to achieve a kind of "live coding" with gloss and ghcid |
| 21:23:05 | <int-e> | Though technically that just raises an exception that could be caught. |
| 21:23:08 | <hexeme> | but i need the app to gracefully die when a file changes |
| 21:24:22 | <janus> | enikar: ooh excellent! looks like an official service, i guess it is better suited for people who hang with lambdabot |
| 21:24:31 | <janus> | *who don't hang |
| 21:26:04 | <enikar> | indeed. But it works only on libera |
| 21:26:44 | <janus> | are there IRC networks other than libera with a FP community? |
| 21:27:20 | <enikar> | i don't know |
| 21:27:32 | <hololeap> | maybe OFTC |
| 21:28:55 | <enikar> | there is a #haskell on oftc. |
| 21:29:29 | <janus> | i never used oftc, but i am weird, i try to keep my channel count under 10 so the channels are easily accessible :P |
| 21:30:06 | <sm> | I wouldn't think so, really. Non-IRC chats ? Definitely (zulip, discord.. ?) |
| 21:30:16 | <enikar> | but it's not busy |
| 21:30:52 | <janus> | yeah there is also an FP slack and tapas mentioned it on the new Haskell Interlude |
| 21:31:01 | <janus> | irc wasn't even mentioned ;) |
| 21:31:13 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 21:31:24 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 21:32:05 | <hpc> | /r/haskell |
| 21:32:31 | <sm> | ouch! |
| 21:32:45 | <sm> | and of course, matrix |
| 21:34:35 | → | smarton joins (~smarton@gnu/webmaster/smarton) |
| 21:35:37 | × | mrus quits (~mrus@2001:19f0:5:1535:5400:3ff:fe7d:10ae) (Quit: Surfing the great wave off Kanagawa) |
| 21:37:46 | × | amahl quits (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 252 seconds) |
| 21:37:57 | → | mrus joins (~mrus@149.28.224.172) |
| 21:38:59 | ← | smarton parts (~smarton@gnu/webmaster/smarton) () |
| 21:40:41 | × | mcglk_ quits (~mcglk@131.191.49.120) (Remote host closed the connection) |
| 21:41:37 | → | mcglk joins (~mcglk@131.191.49.120) |
| 21:42:33 | <janus> | will stack try hackage if it can't find a package in stackage? |
| 21:43:46 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 21:44:10 | <EvanR> | what's Haskell Interlude |
| 21:44:28 | <cafkafk> | janus spitting sick bars |
| 21:44:46 | → | sim590 joins (~simon@modemcable090.207-203-24.mc.videotron.ca) |
| 21:48:26 | <janus> | EvanR: the podcast launched by the haskell.foundation : https://haskell.foundation/podcast/ |
| 21:51:07 | <geekosaur> | janus: stack is about reproducible builds and predefined snapshots. you ncan point to a package on hackage but it won't automatically look there |
| 21:52:06 | <janus> | geekosaur: hmm ok. i was trying to figure out what happened to Lambda_Lifter here: https://www.reddit.com/r/haskell/comments/phw8tf/implicithie_on_microsoft_windows_10/ |
| 21:52:37 | <janus> | i wonder if it is possible to use vscode with hie in wsl, maybe that works better? |
| 21:53:22 | <janus> | but if ghcup can install hie, maybe it can also do that on windows? maybe that is the path of least resistance for their students |
| 21:53:45 | <geekosaur> | my understanding is that a built-in implicit hie environment has been around for some hie versions, so implicit-hie was desupported |
| 21:53:57 | <geekosaur> | so my guess is they need to update their resolver |
| 21:54:18 | <janus> | right, so lts-16.27 is 8.8.4, too old for hls? |
| 21:55:11 | <geekosaur> | looks like it has hls, no idea if that hls has implicit cradles |
| 21:57:13 | <geekosaur> | hls was under pretty heavy development at that time |
| 21:57:19 | <janus> | argh, so many possibilities, it's impossible to recommend anything without trying it out myself... |
| 21:58:45 | <janus> | but 16.27 is just half a year ago... wasn't it under a similar amount of development as now? |
| 21:59:32 | × | max22- quits (~maxime@2a01cb08833598005a7785a489aeabb8.ipv6.abo.wanadoo.fr) (Quit: Leaving) |
| 22:00:32 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 245 seconds) |
| 22:04:03 | <janus> | i wrote them something about the lts version that they may consider upgrading from |
| 22:05:25 | → | acidjnk_new joins (~acidjnk@p5487d0ba.dip0.t-ipconnect.de) |
| 22:05:35 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 22:06:40 | × | o1lo01ol1o quits (~o1lo01ol1@bl13-86-242.dsl.telepac.pt) (Ping timeout: 240 seconds) |
| 22:07:41 | → | o1lo01ol1o joins (~o1lo01ol1@bl13-86-242.dsl.telepac.pt) |
| 22:08:44 | × | acidjnk_new3 quits (~acidjnk@p200300d0c720307835a2456c1104dd43.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
| 22:09:54 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 22:10:01 | → | MidAutumnMoon joins (~MidAutumn@user/midautumnmoon) |
| 22:10:02 | × | amitnjha quits (~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha) |
| 22:10:20 | → | amitnjha joins (~amit@024-216-124-116.res.spectrum.com) |
| 22:11:20 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 22:12:58 | × | madjestic quits (~madjestic@88-159-247-120.fixed.kpn.net) (Ping timeout: 252 seconds) |
| 22:28:26 | × | acidjnk_new quits (~acidjnk@p5487d0ba.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 22:29:28 | × | cafkafk quits (~cafkafk@user/cafkafk) (Quit: WeeChat 3.1) |
| 22:29:35 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 22:30:23 | × | amitnjha quits (~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha) |
| 22:30:40 | → | amitnjha joins (~amit@024-216-124-116.res.spectrum.com) |
| 22:32:17 | × | o1lo01ol1o quits (~o1lo01ol1@bl13-86-242.dsl.telepac.pt) (Remote host closed the connection) |
| 22:33:08 | → | craige[m] joins (~craigemcw@2001:470:69fc:105::35f1) |
| 22:33:52 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c1b9:a2b:77a8:fec7) (Remote host closed the connection) |
| 22:35:02 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c1b9:a2b:77a8:fec7) |
| 22:35:13 | × | Skyfire quits (~pyon@user/pyon) (Quit: WeeChat 3.2) |
| 22:39:22 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c1b9:a2b:77a8:fec7) (Ping timeout: 252 seconds) |
| 22:40:36 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 22:54:31 | → | striven joins (~striven@user/striven) |
| 22:55:15 | × | TranquilEcho quits (~grom@user/tranquilecho) (Quit: WeeChat 2.8) |
| 22:55:42 | → | frtdisdrv^ joins (~frtdisdrv@68.101.54.227) |
| 22:56:09 | × | benin0369323 quits (~benin@183.82.207.253) (Quit: Ping timeout (120 seconds)) |
| 22:56:10 | × | myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 240 seconds) |
| 22:56:31 | → | benin0369323 joins (~benin@183.82.207.253) |
| 22:59:37 | × | benin0369323 quits (~benin@183.82.207.253) (Client Quit) |
| 23:01:26 | × | striven quits (~striven@user/striven) (Ping timeout: 256 seconds) |
| 23:11:08 | → | cjb joins (~cjb@user/cjb) |
| 23:19:36 | <hexeme> | Got that haskell hot-reloading working with Gloss |
| 23:19:38 | <hexeme> | pretty cool |
| 23:19:57 | × | Natch quits (~natch@c-e070e255.014-297-73746f25.bbcust.telenor.se) (Remote host closed the connection) |
| 23:22:55 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c1b9:a2b:77a8:fec7) |
| 23:24:06 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
| 23:25:20 | → | Natch joins (~natch@c-e070e255.014-297-73746f25.bbcust.telenor.se) |
| 23:30:51 | <janus> | Lambda_Lifter on that Reddit thread wants to stick with 8.8.4 because they think that if 8.10.8 is released, HLS will switch to that, but it won't switch from 8.8.4. |
| 23:31:24 | → | zebrag joins (~chris@user/zebrag) |
| 23:31:26 | <janus> | does that make sense? it seems perverse to me that one would used an abandoned series just because HLS will continue to support its last release |
| 23:32:24 | <geekosaur> | I stuck to 8.10.4 which is still hls-supported… but then I don't actually use hls so I don't really care much |
| 23:33:01 | <janus> | i'm thinking, a new HLS is likely to drop 8.8.4 support. so by staying on HLS, you may be _unable_ to upgrade HLS |
| 23:33:07 | <janus> | *staying on 8.8 |
| 23:33:38 | <monochrom> | But GHC HQ is really trying to avoid having a 8.10.8. |
| 23:33:57 | <janus> | right, i know. right now, i just want to argue against staying with 8.8.4 because i don't think it makes sense |
| 23:34:07 | <int-e> | monochrom: easy, just release 8.10.9 next? |
| 23:34:29 | <janus> | if 8.10.8 were to come out, and a new HLS comes out, surely that new HLS would support both 8.10.7, 8.10.8 ? so there is no advangage with sticking to 8.8.4 |
| 23:34:52 | <janus> | there is actually a disadvantage, since the new HLS _more_ likely to not support 8.8.4 |
| 23:35:36 | → | myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net) |
| 23:35:40 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 23:35:40 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
| 23:35:40 | → | wroathe joins (~wroathe@user/wroathe) |
| 23:40:58 | × | myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 252 seconds) |
| 23:41:45 | → | [_] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:42:43 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Killed (NickServ (GHOST command used by [_]))) |
| 23:43:01 | [_] | is now known as [itchyjunk] |
| 23:43:10 | → | nicbk joins (~nicbk@user/nicbk) |
| 23:44:37 | × | ulvarrefr quits (~user@185.24.53.152) (Remote host closed the connection) |
| 23:45:46 | × | amitnjha quits (~amit@024-216-124-116.res.spectrum.com) (Quit: amitnjha) |
| 23:45:55 | <janus> | new HLS releases support multiple patch releases. I think the false assumption of Lambda_Lifter is that HLS somehow only supports the latest patch release. But that is not the case |
| 23:45:59 | → | amitnjha joins (~amit@024-216-124-116.res.spectrum.com) |
| 23:46:47 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 245 seconds) |
| 23:47:48 | <geekosaur> | maybe they're using ghcup and don't enable "show all versions" so they think only the latest release in each major version is supported at all? |
| 23:48:05 | <geekosaur> | except for those in the 3-major-versions window |
| 23:48:17 | <geekosaur> | er, 2-major-versions |
| 23:48:55 | → | ulvarrefr joins (~user@185.24.53.152) |
| 23:48:59 | <janus> | they mention a stack lts release and they mention VsCode. So I think the worry is really about VsCode autoupdating HLS. I don't know how the Stack version could be an issue since their Stack LTS should be fixed and would imply the exact GHC version used |
| 23:49:40 | → | lavaman joins (~lavaman@98.38.249.169) |
| 23:49:47 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 23:49:50 | <janus> | maybe the confusion is because you can probably write "lts-18" and you'll keep getting updated to patch GHC versions which HLS wouldn't support yet |
| 23:50:12 | <janus> | meanwhile, if you write "lts-16", you won't get that problem. |
| 23:50:21 | <janus> | is that correct? |
| 23:50:43 | <geekosaur> | dunno, I don't use stack |
| 23:51:54 | <janus> | it seems to be correct, search for "short-cut" here: https://docs.haskellstack.org/en/stable/GUIDE/ |
| 23:57:32 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 256 seconds) |
| 23:57:49 | × | Tuplanolla quits (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.) |
| 23:57:49 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 23:58:04 | <hololeap> | hexeme: https://github.com/hololeap/gloss-fsnotify |
| 23:58:14 | <hololeap> | this was actually a bit trickier than I expected |
| 23:59:45 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 23:59:48 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit) |
All times are in UTC on 2021-09-05.