2024-08-15 00:07:54 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-08-15 00:10:22 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2024-08-15 00:11:30 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2024-08-15 00:15:02 +0200 | <zzz> | yay --allow-newer |
2024-08-15 00:15:55 +0200 | terrorjack4 | (~terrorjac@static.163.82.63.178.clients.your-server.de) (Quit: The Lounge - https://thelounge.chat) |
2024-08-15 00:17:59 +0200 | terrorjack4 | (~terrorjac@static.163.82.63.178.clients.your-server.de) |
2024-08-15 00:21:09 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-08-15 00:21:26 +0200 | <zzz> | oh no :( |
2024-08-15 00:21:34 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds) |
2024-08-15 00:22:07 +0200 | euleritian | (~euleritia@dynamic-176-007-193-159.176.7.pool.telefonica.de) |
2024-08-15 00:22:13 +0200 | <zzz> | turns out i cant build lambdabot |
2024-08-15 00:23:03 +0200 | <EvanR> | lambdabot, there can be only one |
2024-08-15 00:33:47 +0200 | <geekosaur> | no, one of the deps needs a patchup |
2024-08-15 00:34:09 +0200 | <geekosaur> | iirc it's the semigroup/momoid change? might be monadfail though |
2024-08-15 00:35:06 +0200 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-08-15 00:35:32 +0200 | euleritian | (~euleritia@dynamic-176-007-193-159.176.7.pool.telefonica.de) (Ping timeout: 255 seconds) |
2024-08-15 00:36:03 +0200 | <zzz> | what semigroup/monoid change? |
2024-08-15 00:36:21 +0200 | <c_wraith> | making semigroup a superclass of monoid |
2024-08-15 00:36:29 +0200 | euleritian | (~euleritia@dynamic-176-007-194-184.176.7.pool.telefonica.de) |
2024-08-15 00:36:36 +0200 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Read error: Connection reset by peer) |
2024-08-15 00:37:16 +0200 | <zzz> | isn't that old news? |
2024-08-15 00:37:27 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-08-15 00:37:39 +0200 | <c_wraith> | not compared to the lifetime of lambdabot |
2024-08-15 00:37:43 +0200 | <geekosaur> | yes, but one of the deps predates a bunch of things |
2024-08-15 00:38:28 +0200 | <geekosaur> | I think someone's trying to take over various unmaintained deps and update them, but I would have thought it would have happened by now |
2024-08-15 00:39:42 +0200 | <zzz> | https://github.com/lambdabot/lambdabot/blob/6d69d59d4db796fa3a750ec01d90156ffee2c209/lambdabot/lam… |
2024-08-15 00:39:45 +0200 | <zzz> | what am i missing? |
2024-08-15 00:39:59 +0200 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-08-15 00:40:34 +0200 | <geekosaur> | _lambdabot_ was tested. it's a dep of one of the plugin packages that's broken |
2024-08-15 00:41:14 +0200 | <zzz> | i see |
2024-08-15 00:42:17 +0200 | <geekosaur> | iirc it's not even a library, it's an executable that lb calls for one of its plugins |
2024-08-15 00:42:33 +0200 | <geekosaur> | been a while since I last looked at it |
2024-08-15 00:43:39 +0200 | <zzz> | is there a way i get it to work in my machine? |
2024-08-15 00:43:59 +0200 | <zzz> | *is there a way i can get it to work on my machine? |
2024-08-15 00:51:19 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2024-08-15 00:55:27 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-08-15 00:57:43 +0200 | oo_miguel | (~Thunderbi@78.10.207.46) (Ping timeout: 264 seconds) |
2024-08-15 01:00:27 +0200 | <c_wraith> | Option a) find a sufficiently old version of ghc and make sure it builds against sufficiently old pacakges. Option b) fix the bug locally using a cabal.project file to specify the local version of the package instead of the hackage version |
2024-08-15 01:02:49 +0200 | <c_wraith> | I guess there's also option c) deactivate the broken plugin |
2024-08-15 01:03:15 +0200 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2024-08-15 01:03:26 +0200 | <c_wraith> | lambdabot enables a lot of plugins by default, and last time I built it I turned most of them off. |
2024-08-15 01:07:14 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
2024-08-15 01:07:30 +0200 | euleritian | (~euleritia@dynamic-176-007-194-184.176.7.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-08-15 01:08:43 +0200 | euleritian | (~euleritia@dynamic-176-003-009-126.176.3.pool.telefonica.de) |
2024-08-15 01:09:35 +0200 | sawilagar_ | (~sawilagar@user/sawilagar) (Ping timeout: 252 seconds) |
2024-08-15 01:11:14 +0200 | JuanDaugherty | (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
2024-08-15 01:15:16 +0200 | <geekosaur> | sadly, I'm pretty sure it's part of the haskell plugins |
2024-08-15 01:17:34 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-08-15 01:18:42 +0200 | acidjnk_new3 | (~acidjnk@p200300d6e72cfb11a59a794fa2bafb8b.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2024-08-15 01:21:15 +0200 | acidjnk_new3 | (~acidjnk@p200300d6e72cfb11a59a794fa2bafb8b.dip0.t-ipconnect.de) |
2024-08-15 01:24:25 +0200 | <haskellbridge> | <thirdofmay18081814goya> I've defined the following instance: |
2024-08-15 01:24:25 +0200 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_matrix/media/v3/download/kf8nh.com/EBZbVBQkWULjItmoFSDrrZYu (7 lines) |
2024-08-15 01:24:39 +0200 | <haskellbridge> | <thirdofmay18081814goya> * "Circuit a a" |
2024-08-15 01:24:48 +0200 | <haskellbridge> | <thirdofmay18081814goya> * a"? |
2024-08-15 01:25:19 +0200 | <haskellbridge> | <thirdofmay18081814goya> * a" instead of "(Arrow a) => a c c"? |
2024-08-15 01:25:37 +0200 | <haskellbridge> | <thirdofmay18081814goya> * b b" |
2024-08-15 01:27:53 +0200 | <EvanR> | the 7 lines seems to have been cut off |
2024-08-15 01:28:44 +0200 | <EvanR> | would be interesting to know what Circuit is |
2024-08-15 01:29:46 +0200 | troojg | (~troojg@user/troojg) |
2024-08-15 01:29:55 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: it's from https://en.wikibooks.org/wiki/Haskell/Arrow_tutorial |
2024-08-15 01:29:58 +0200 | <haskellbridge> | <thirdofmay18081814goya> i think I want "TypeApplications" |
2024-08-15 01:30:34 +0200 | <EvanR> | it just didn't understand most of your messages after |
2024-08-15 01:30:43 +0200 | <EvanR> | -- in the repl, how do I write "myCircuit = arr f" in such a way that ":t myCircuit" will return `Circui |
2024-08-15 01:31:48 +0200 | <EvanR> | maybe I deciphered it all and yes TypeApplications might do it |
2024-08-15 01:40:13 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 01:40:13 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 01:40:13 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 01:40:16 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: ah element updates don't appear in irc!! I meant: in such a way that :t myCircuit will return Circuit b b instead of (Arrow a) => a c c? |
2024-08-15 01:40:23 +0200 | <haskellbridge> | <thirdofmay18081814goya> * c |
2024-08-15 01:40:24 +0200 | wroathe | (~wroathe@user/wroathe) (Client Quit) |
2024-08-15 01:41:55 +0200 | <EvanR> | arr @Circuit f |
2024-08-15 01:42:11 +0200 | <EvanR> | :t (/) |
2024-08-15 01:42:13 +0200 | <lambdabot> | Fractional a => a -> a -> a |
2024-08-15 01:42:17 +0200 | <EvanR> | :t (/) @Double |
2024-08-15 01:42:19 +0200 | <lambdabot> | error: |
2024-08-15 01:42:19 +0200 | <lambdabot> | Pattern syntax in expression context: (/)@Double |
2024-08-15 01:42:19 +0200 | <lambdabot> | Did you mean to enable TypeApplications? |
2024-08-15 01:42:36 +0200 | <EvanR> | % :t (/) @Double |
2024-08-15 01:42:36 +0200 | <yahb2> | (/) @Double :: Double -> Double -> Double |
2024-08-15 01:43:06 +0200 | euleritian | (~euleritia@dynamic-176-003-009-126.176.3.pool.telefonica.de) (Ping timeout: 258 seconds) |
2024-08-15 01:44:14 +0200 | euleritian | (~euleritia@dynamic-176-003-079-024.176.3.pool.telefonica.de) |
2024-08-15 01:44:22 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 01:44:22 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 01:44:22 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 01:44:27 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: ty! |
2024-08-15 01:45:51 +0200 | wroathe | (~wroathe@user/wroathe) (Client Quit) |
2024-08-15 01:46:07 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-08-15 01:47:31 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 01:47:31 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 01:47:31 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 01:52:59 +0200 | talismanick | (~user@2601:644:937c:ed10::ae5) (Ping timeout: 260 seconds) |
2024-08-15 01:57:16 +0200 | troojg | (~troojg@user/troojg) (Ping timeout: 272 seconds) |
2024-08-15 02:04:12 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 276 seconds) |
2024-08-15 02:07:05 +0200 | acidjnk_new3 | (~acidjnk@p200300d6e72cfb11a59a794fa2bafb8b.dip0.t-ipconnect.de) (Read error: Connection reset by peer) |
2024-08-15 02:09:04 +0200 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2024-08-15 02:20:21 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Ping timeout: 260 seconds) |
2024-08-15 02:20:56 +0200 | chiselfuse | (~chiselfus@user/chiselfuse) (Ping timeout: 260 seconds) |
2024-08-15 02:22:26 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2024-08-15 02:23:09 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 02:23:09 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 02:23:09 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 02:23:19 +0200 | chiselfuse | (~chiselfus@user/chiselfuse) |
2024-08-15 02:26:03 +0200 | marcelospe | (~marcelosp@2804:1b3:a8c0:3bee:7232:17ff:fe19:2d5a) |
2024-08-15 02:26:21 +0200 | marcelospe | (~marcelosp@2804:1b3:a8c0:3bee:7232:17ff:fe19:2d5a) (Client Quit) |
2024-08-15 02:33:49 +0200 | euleritian | (~euleritia@dynamic-176-003-079-024.176.3.pool.telefonica.de) (Ping timeout: 260 seconds) |
2024-08-15 02:33:50 +0200 | Mateon2 | (~Thunderbi@user/meow/Mateon1) |
2024-08-15 02:33:57 +0200 | euleritian | (~euleritia@dynamic-176-003-012-207.176.3.pool.telefonica.de) |
2024-08-15 02:35:30 +0200 | Mateon1 | (~Thunderbi@user/meow/Mateon1) (Ping timeout: 252 seconds) |
2024-08-15 02:35:31 +0200 | Mateon2 | Mateon1 |
2024-08-15 02:40:18 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-08-15 02:52:39 +0200 | euleritian | (~euleritia@dynamic-176-003-012-207.176.3.pool.telefonica.de) (Ping timeout: 244 seconds) |
2024-08-15 02:55:23 +0200 | neuroevolutus | (~neuroevol@206.217.206.75) |
2024-08-15 02:58:37 +0200 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 258 seconds) |
2024-08-15 03:00:11 +0200 | neuroevolutus | (~neuroevol@206.217.206.75) (Ping timeout: 256 seconds) |
2024-08-15 03:00:52 +0200 | euleritian | (~euleritia@dynamic-176-003-077-029.176.3.pool.telefonica.de) |
2024-08-15 03:05:05 +0200 | euleritian | (~euleritia@dynamic-176-003-077-029.176.3.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-08-15 03:05:13 +0200 | euleritian | (~euleritia@dynamic-176-002-064-016.176.2.pool.telefonica.de) |
2024-08-15 03:12:06 +0200 | neuroevolutus | (~neuroevol@206.217.206.35) |
2024-08-15 03:13:50 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 244 seconds) |
2024-08-15 03:18:02 +0200 | troojg | (~troojg@user/troojg) |
2024-08-15 03:22:20 +0200 | dysthesis | (~dysthesis@user/dysthesis) |
2024-08-15 03:25:15 +0200 | euleritian | (~euleritia@dynamic-176-002-064-016.176.2.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-08-15 03:25:37 +0200 | euleritian | (~euleritia@dynamic-176-000-144-091.176.0.pool.telefonica.de) |
2024-08-15 03:25:47 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-08-15 03:26:21 +0200 | Square3 | (~Square4@user/square) (Ping timeout: 252 seconds) |
2024-08-15 03:28:18 +0200 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2024-08-15 03:29:48 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 03:29:48 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 03:29:48 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 03:38:09 +0200 | neuroevolutus | (~neuroevol@206.217.206.35) (Ping timeout: 256 seconds) |
2024-08-15 03:45:01 +0200 | rosco | (~rosco@175.136.158.234) |
2024-08-15 03:45:11 +0200 | ZharMeny | (~user@185.248.130.75) (Quit: |) |
2024-08-15 04:05:36 +0200 | euleritian | (~euleritia@dynamic-176-000-144-091.176.0.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-08-15 04:06:25 +0200 | euleritian | (~euleritia@dynamic-176-004-135-036.176.4.pool.telefonica.de) |
2024-08-15 04:18:49 +0200 | troojg | (~troojg@user/troojg) (Ping timeout: 260 seconds) |
2024-08-15 04:21:44 +0200 | euleritian | (~euleritia@dynamic-176-004-135-036.176.4.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-08-15 04:22:10 +0200 | euleritian | (~euleritia@dynamic-176-004-141-015.176.4.pool.telefonica.de) |
2024-08-15 04:22:19 +0200 | td_ | (~td@i53870918.versanet.de) (Ping timeout: 260 seconds) |
2024-08-15 04:23:49 +0200 | td_ | (~td@i53870931.versanet.de) |
2024-08-15 04:23:56 +0200 | pavonia | (~user@user/siracusa) |
2024-08-15 04:24:19 +0200 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2024-08-15 04:26:29 +0200 | euleritian | (~euleritia@dynamic-176-004-141-015.176.4.pool.telefonica.de) (Ping timeout: 248 seconds) |
2024-08-15 04:27:02 +0200 | euleritian | (~euleritia@dynamic-176-000-145-124.176.0.pool.telefonica.de) |
2024-08-15 04:28:04 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 04:28:04 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 04:28:04 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 04:29:04 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds) |
2024-08-15 04:30:48 +0200 | Chappie | (~Chappie@71.247.18.66) (Ping timeout: 245 seconds) |
2024-08-15 04:34:08 +0200 | xff0x | (~xff0x@2405:6580:b080:900:493f:3f7e:59db:90fc) (Ping timeout: 245 seconds) |
2024-08-15 04:40:07 +0200 | euleritian | (~euleritia@dynamic-176-000-145-124.176.0.pool.telefonica.de) (Ping timeout: 244 seconds) |
2024-08-15 04:40:28 +0200 | euleritian | (~euleritia@dynamic-176-001-222-099.176.1.pool.telefonica.de) |
2024-08-15 04:44:49 +0200 | euleritian | (~euleritia@dynamic-176-001-222-099.176.1.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-08-15 04:45:22 +0200 | ddellacosta | (~ddellacos@ool-44c73b99.dyn.optonline.net) |
2024-08-15 04:46:00 +0200 | euleritian | (~euleritia@dynamic-176-002-129-169.176.2.pool.telefonica.de) |
2024-08-15 04:49:49 +0200 | wroathe | (~wroathe@user/wroathe) (Quit: Lost terminal) |
2024-08-15 04:52:00 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 04:52:00 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 04:52:00 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 04:57:04 +0200 | xff0x | (~xff0x@2405:6580:b080:900:1d50:96ef:4cd0:fddc) |
2024-08-15 05:13:48 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds) |
2024-08-15 05:16:21 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2024-08-15 05:17:46 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-08-15 05:29:53 +0200 | rosco | (~rosco@175.136.158.234) (Quit: Lost terminal) |
2024-08-15 05:34:13 +0200 | rosco | (~rosco@175.136.158.234) |
2024-08-15 05:52:31 +0200 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2024-08-15 05:54:21 +0200 | aforemny | (~aforemny@i59F516CB.versanet.de) |
2024-08-15 05:56:02 +0200 | aforemny_ | (~aforemny@2001:9e8:6cf1:7e00:822:77ad:c8ef:d2e6) (Ping timeout: 272 seconds) |
2024-08-15 05:56:13 +0200 | motherfsck | (~motherfsc@user/motherfsck) (Quit: quit) |
2024-08-15 05:56:55 +0200 | neuroevolutus | (~neuroevol@206.217.206.35) |
2024-08-15 06:06:36 +0200 | arkeet | (~arkeet@moriya.ca) (Ping timeout: 252 seconds) |
2024-08-15 06:10:04 +0200 | motherfsck | (~motherfsc@user/motherfsck) |
2024-08-15 06:12:48 +0200 | arkeet | (~arkeet@moriya.ca) |
2024-08-15 06:23:33 +0200 | Guest87 | (~Guest87@50.21.75.66) |
2024-08-15 06:24:09 +0200 | Guest87 | (~Guest87@50.21.75.66) () |
2024-08-15 06:34:44 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds) |
2024-08-15 06:43:52 +0200 | rosco | (~rosco@175.136.158.234) (Quit: Lost terminal) |
2024-08-15 06:52:31 +0200 | neuroevolutus | (~neuroevol@206.217.206.35) (Ping timeout: 256 seconds) |
2024-08-15 06:52:37 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 248 seconds) |
2024-08-15 07:03:45 +0200 | TMA | (tma@twin.jikos.cz) (Ping timeout: 244 seconds) |
2024-08-15 07:08:33 +0200 | ddellacosta | (~ddellacos@ool-44c73b99.dyn.optonline.net) (Ping timeout: 252 seconds) |
2024-08-15 07:14:53 +0200 | euleritian | (~euleritia@dynamic-176-002-129-169.176.2.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-08-15 07:15:11 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-08-15 07:16:06 +0200 | neuroevolutus | (~neuroevol@206.217.206.35) |
2024-08-15 07:16:38 +0200 | ddellacosta | (~ddellacos@ool-44c73b99.dyn.optonline.net) |
2024-08-15 07:17:02 +0200 | TMA | (tma@twin.jikos.cz) |
2024-08-15 07:22:42 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 276 seconds) |
2024-08-15 07:23:27 +0200 | euleritian | (~euleritia@dynamic-176-002-129-169.176.2.pool.telefonica.de) |
2024-08-15 07:27:54 +0200 | TMA | (tma@twin.jikos.cz) (Ping timeout: 276 seconds) |
2024-08-15 07:30:10 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2024-08-15 07:33:10 +0200 | euleritian | (~euleritia@dynamic-176-002-129-169.176.2.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-08-15 07:33:28 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-08-15 07:34:39 +0200 | TMA | (tma@twin.jikos.cz) |
2024-08-15 07:44:36 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds) |
2024-08-15 07:46:21 +0200 | euleritian | (~euleritia@dynamic-176-002-129-169.176.2.pool.telefonica.de) |
2024-08-15 07:49:56 +0200 | dysthesis | (~dysthesis@user/dysthesis) (Ping timeout: 260 seconds) |
2024-08-15 07:54:57 +0200 | jle` | (~jle`@2603:8001:3b02:84d4:ef66:1aba:fea9:c83b) (Ping timeout: 248 seconds) |
2024-08-15 07:56:15 +0200 | jle` | (~jle`@2603:8001:3b02:84d4:b870:ffa:630b:cc32) |
2024-08-15 07:56:50 +0200 | dysthesis | (~dysthesis@user/dysthesis) |
2024-08-15 07:57:30 +0200 | Inst | (~Inst@user/Inst) |
2024-08-15 07:58:31 +0200 | julie_pilgrim | (~julie_pil@user/julie-pilgrim/x-1240752) |
2024-08-15 08:01:28 +0200 | dysthesis | (~dysthesis@user/dysthesis) (Remote host closed the connection) |
2024-08-15 08:04:38 +0200 | CrunchyFlakes | (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de) |
2024-08-15 08:05:38 +0200 | CrunchyFlakes_ | (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds) |
2024-08-15 08:13:51 +0200 | ubert | (~Thunderbi@91.141.68.38.wireless.dyn.drei.com) |
2024-08-15 08:19:09 +0200 | rosco | (~rosco@175.136.158.234) |
2024-08-15 08:22:18 +0200 | rosco | (~rosco@175.136.158.234) (Client Quit) |
2024-08-15 08:29:17 +0200 | neuroevolutus | (~neuroevol@206.217.206.35) (Quit: Client closed) |
2024-08-15 08:42:36 +0200 | euleritian | (~euleritia@dynamic-176-002-129-169.176.2.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-08-15 08:42:53 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-08-15 08:46:56 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2024-08-15 08:50:42 +0200 | CrunchyFlakes | (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-08-15 08:53:50 +0200 | CrunchyFlakes | (~CrunchyFl@146.52.130.128) |
2024-08-15 08:54:59 +0200 | sord937 | (~sord937@gateway/tor-sasl/sord937) |
2024-08-15 08:55:23 +0200 | ft | (~ft@p4fc2aa15.dip0.t-ipconnect.de) (Quit: leaving) |
2024-08-15 09:18:57 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-08-15 09:19:47 +0200 | acidjnk | (~acidjnk@p200300d6e72cfb233897a37840cbfb18.dip0.t-ipconnect.de) |
2024-08-15 09:30:30 +0200 | julie_pilgrim | (~julie_pil@user/julie-pilgrim/x-1240752) (Remote host closed the connection) |
2024-08-15 09:32:10 +0200 | <feetwind> | doing some work and have a big adt i need to make cases on. happens often enough i sometimes wonder: can haskell lsp expand a case-of for me? would be pretty handy |
2024-08-15 09:32:26 +0200 | <feetwind> | hls rather |
2024-08-15 09:39:43 +0200 | <probie> | It can tell you that patterns are non-exhaustive |
2024-08-15 09:45:11 +0200 | chele | (~chele@user/chele) |
2024-08-15 09:47:56 +0200 | <feetwind> | so it looks like hls-tactics-plugin did used to accomplish it quite well, but it is now abandonware due to ghc changes from 8.x to 9.x being too much to keep up with :') |
2024-08-15 10:03:42 +0200 | wagle | (~wagle@quassel.wagle.io) (Quit: No Ping reply in 180 seconds.) |
2024-08-15 10:05:23 +0200 | wagle | (~wagle@quassel.wagle.io) |
2024-08-15 10:08:26 +0200 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
2024-08-15 10:12:49 +0200 | Digitteknohippie | (~user@user/digit) |
2024-08-15 10:13:22 +0200 | Digit | (~user@user/digit) (Ping timeout: 252 seconds) |
2024-08-15 10:14:43 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) |
2024-08-15 10:15:35 +0200 | ThePenguin | (~ThePengui@cust-95-80-24-166.csbnet.se) (Remote host closed the connection) |
2024-08-15 10:16:07 +0200 | ThePenguin | (~ThePengui@cust-95-80-24-166.csbnet.se) |
2024-08-15 10:19:48 +0200 | Digitteknohippie | Digit |
2024-08-15 10:24:36 +0200 | weechat2 | dminuoso |
2024-08-15 10:27:56 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) |
2024-08-15 10:27:59 +0200 | swamp_ | (~zmt00@user/zmt00) |
2024-08-15 10:30:57 +0200 | zmt01 | (~zmt00@user/zmt00) (Ping timeout: 252 seconds) |
2024-08-15 10:41:42 +0200 | kalj | (~kalj@h-158-174-207-174.NA.cust.bahnhof.se) |
2024-08-15 10:44:21 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) (Quit: on the move) |
2024-08-15 10:52:46 +0200 | sawilagar_ | (~sawilagar@user/sawilagar) |
2024-08-15 10:53:37 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) |
2024-08-15 11:02:19 +0200 | dans69504 | (~danse-nr3@user/danse-nr3) |
2024-08-15 11:06:04 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) (Ping timeout: 244 seconds) |
2024-08-15 11:17:56 +0200 | misterfish | (~misterfis@87.215.131.102) |
2024-08-15 11:29:34 +0200 | gmg | (~user@user/gehmehgeh) |
2024-08-15 11:44:56 +0200 | dans69504 | (~danse-nr3@user/danse-nr3) (Remote host closed the connection) |
2024-08-15 11:45:10 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) |
2024-08-15 11:50:48 +0200 | _________ | (~nobody@user/noodly) (Ping timeout: 245 seconds) |
2024-08-15 11:55:17 +0200 | kaol | (~kaol@94-237-42-30.nl-ams1.upcloud.host) (Ping timeout: 265 seconds) |
2024-08-15 11:58:05 +0200 | _________ | (~nobody@user/noodly) |
2024-08-15 12:06:24 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds) |
2024-08-15 12:07:09 +0200 | euleritian | (~euleritia@dynamic-176-006-143-210.176.6.pool.telefonica.de) |
2024-08-15 12:08:30 +0200 | kalj | (~kalj@h-158-174-207-174.NA.cust.bahnhof.se) (Quit: Client closed) |
2024-08-15 12:09:07 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2) |
2024-08-15 12:11:10 +0200 | euleritian | (~euleritia@dynamic-176-006-143-210.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-08-15 12:11:29 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-08-15 12:11:48 +0200 | talukara | (~talukara@user/talukara) |
2024-08-15 12:13:13 +0200 | talukara | (~talukara@user/talukara) (Remote host closed the connection) |
2024-08-15 12:30:42 +0200 | rosco | (~rosco@175.136.158.234) |
2024-08-15 12:42:49 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
2024-08-15 12:43:26 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-08-15 12:45:32 +0200 | ZharMeny | (~user@user/ZharMeny) |
2024-08-15 12:56:32 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
2024-08-15 12:57:50 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-08-15 12:58:34 +0200 | cfricke | (~cfricke@user/cfricke) |
2024-08-15 13:05:36 +0200 | wlhn | (~wlhn@dl6-5j8gfh1n484fp87pt-3.rev.dnainternet.fi) |
2024-08-15 13:10:06 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2024-08-15 13:13:21 +0200 | Hecate_ | Hecate |
2024-08-15 13:25:09 +0200 | marcelospe | (~marcelosp@user/marcelospe) |
2024-08-15 13:38:44 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-08-15 13:39:53 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) (Quit: meal) |
2024-08-15 13:40:33 +0200 | marcelospe | (~marcelosp@user/marcelospe) (Quit: Leaving) |
2024-08-15 13:40:53 +0200 | marcelospe | (~marcelosp@143.107.45.1) |
2024-08-15 13:41:18 +0200 | marcelospe | (~marcelosp@143.107.45.1) (Changing host) |
2024-08-15 13:41:18 +0200 | marcelospe | (~marcelosp@user/marcelospe) |
2024-08-15 13:44:56 +0200 | euandreh1 | (~Thunderbi@189.6.18.26) |
2024-08-15 13:48:50 +0200 | billchenchina- | (~billchenc@103.152.35.21) |
2024-08-15 14:03:42 +0200 | marcelospe | (~marcelosp@user/marcelospe) (Ping timeout: 272 seconds) |
2024-08-15 14:29:45 +0200 | ddellacosta | (~ddellacos@ool-44c73b99.dyn.optonline.net) (Ping timeout: 276 seconds) |
2024-08-15 14:30:13 +0200 | marcelospe | (~marcelosp@143.107.45.1) |
2024-08-15 14:31:13 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) (Ping timeout: 245 seconds) |
2024-08-15 14:35:34 +0200 | euandreh1 | (~Thunderbi@189.6.18.26) (Remote host closed the connection) |
2024-08-15 14:36:22 +0200 | euandreh | (~Thunderbi@189.6.18.26) |
2024-08-15 14:39:09 +0200 | euandreh | (~Thunderbi@189.6.18.26) (Remote host closed the connection) |
2024-08-15 15:01:47 +0200 | ephilalethes | (~noumenon@113.51-175-156.customer.lyse.net) (Remote host closed the connection) |
2024-08-15 15:02:34 +0200 | ephilalethes | (~noumenon@113.51-175-156.customer.lyse.net) |
2024-08-15 15:06:51 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 260 seconds) |
2024-08-15 15:10:43 +0200 | marcelospe | (~marcelosp@143.107.45.1) (Ping timeout: 252 seconds) |
2024-08-15 15:18:30 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2024-08-15 15:38:01 +0200 | Square3 | (~Square4@user/square) |
2024-08-15 15:49:12 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) |
2024-08-15 15:56:23 +0200 | <fr33domlover> | Is mpsGeneric still supposed to work in persistent? Using stackage latest LTS (22.32), I'm getting these errors on this (quite trivial) code that used to work: http://paste.debian.net/1326476/ |
2024-08-15 15:57:16 +0200 | <fr33domlover> | I'm considering to just drop the mpsGeneric since it's deprecated, but it would be nice to know if I can update my code to build without changing the semantics/types |
2024-08-15 15:59:57 +0200 | YoungFrog | (~youngfrog@2a02:a03f:c9db:fc00:b4ad:7d6f:2694:3c32) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in) |
2024-08-15 16:00:17 +0200 | YoungFrog | (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) |
2024-08-15 16:03:49 +0200 | <SrPx> | hey guys I'm considering porting the Kind2 project from Rust to Haskell today. main reason I used Rust instead of Haskell is due to trauma with Cabal/Stack/etc.; so for you using it today, how better are things when it comes to making and using Haskell packages? do we still suffer from problems where installing a lib breaks others etc.? do things just work now, or not really? |
2024-08-15 16:04:27 +0200 | <Franciman> | no, it is quite ok |
2024-08-15 16:04:48 +0200 | <Franciman> | i personally use cabal, and have had no such issue lately |
2024-08-15 16:05:12 +0200 | <Franciman> | lib breaking other libs i think was solved a lot of time ago, with nix-style local builds |
2024-08-15 16:05:16 +0200 | <Cale> | But also: don't install libs globally, just set up your project. |
2024-08-15 16:05:16 +0200 | <Franciman> | if i understand what you mean |
2024-08-15 16:05:46 +0200 | <EvanR> | libs don't break libs, people do |
2024-08-15 16:05:52 +0200 | <Cale> | I bet you would still have issues if you tried to do things that way over any appreciable period of time |
2024-08-15 16:06:15 +0200 | <EvanR> | but having multiple incompatible versions of the same package installed globally can't be good |
2024-08-15 16:06:34 +0200 | Guest60 | (~Guest60@2a01:11:420:5f20:c1d7:ca6f:df6a:24ef) |
2024-08-15 16:07:18 +0200 | <Franciman> | but you don't need that if you are writing a package. Just declare your local dependencies, as Cale said |
2024-08-15 16:08:33 +0200 | Guest60 | (~Guest60@2a01:11:420:5f20:c1d7:ca6f:df6a:24ef) (Client Quit) |
2024-08-15 16:08:54 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2024-08-15 16:12:22 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2024-08-15 16:13:34 +0200 | traxex | (traxex@user/traxex) |
2024-08-15 16:16:53 +0200 | <SrPx> | Cale: got it, ty |
2024-08-15 16:17:02 +0200 | <SrPx> | so I have two options right? just cabal, and cabal+stack? |
2024-08-15 16:17:27 +0200 | <SrPx> | can I completely disable any kind of global package installing? |
2024-08-15 16:17:40 +0200 | <SrPx> | i just want it to work like npm/cargo, just install things locally |
2024-08-15 16:22:44 +0200 | <Cale> | There is a third option of using nix along with those things which would really guarantee it. |
2024-08-15 16:23:07 +0200 | <Cale> | But I believe the default is now to use "nix-style local builds" |
2024-08-15 16:23:13 +0200 | <Cale> | https://cabal.readthedocs.io/en/3.4/nix-local-build-overview.html |
2024-08-15 16:26:03 +0200 | <Cale> | The only global thing is a cache of build outputs, and that only gets used when it actually contains the exact build outputs that would have been produced for your project anyway (i.e. with the same transitive dependencies) |
2024-08-15 16:29:59 +0200 | <haskellbridge> | <sm> SrPx: three options: cabal, stack, or some flavour of nix+haskell |
2024-08-15 16:30:42 +0200 | <haskellbridge> | <sm> stack is the most reliable if you don't want to become expert in tooling |
2024-08-15 16:30:55 +0200 | <haskellbridge> | <sm> * a tools expert |
2024-08-15 16:33:40 +0200 | <EvanR> | cabal seems pretty reliable |
2024-08-15 16:33:55 +0200 | <EvanR> | I had issues with stack! |
2024-08-15 16:34:05 +0200 | <EvanR> | rumor rumor fear uncertainty and doubt |
2024-08-15 16:37:19 +0200 | <SrPx> | omg |
2024-08-15 16:38:30 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 16:38:30 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 16:38:30 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 16:39:20 +0200 | <SrPx> | just how do I start a haskell project and start installing libraries in a way that is simple and will avoid headache in the future? |
2024-08-15 16:39:28 +0200 | <EvanR> | cabal init |
2024-08-15 16:39:38 +0200 | <EvanR> | and the cabal manual |
2024-08-15 16:40:23 +0200 | <SrPx> | okay |
2024-08-15 16:40:32 +0200 | <haskellbridge> | <bdub> Cabal is the way!!! |
2024-08-15 16:40:35 +0200 | <SrPx> | also where do I browse haskell libs? |
2024-08-15 16:40:41 +0200 | <EvanR> | hackage |
2024-08-15 16:40:42 +0200 | <haskellbridge> | <bdub> hoogle |
2024-08-15 16:40:55 +0200 | <SrPx> | got it |
2024-08-15 16:41:17 +0200 | <haskellbridge> | <bdub> Gooooood morning Haskellers! How we doing today |
2024-08-15 16:42:49 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) |
2024-08-15 16:43:53 +0200 | spikhoff | (~spikhoff@8ab7-fe8e-44ff-127b-4d80-8525-07d0-2001.dyn.estpak.ee) |
2024-08-15 16:44:44 +0200 | marcelospe | (~marcelosp@143.107.45.1) |
2024-08-15 16:45:17 +0200 | <SrPx> | haskell2010 or GHC2021? |
2024-08-15 16:45:48 +0200 | <haskellbridge> | <sm> your call, doesn't matter much |
2024-08-15 16:46:21 +0200 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
2024-08-15 16:46:29 +0200 | rvalue | (~rvalue@user/rvalue) (Read error: Connection reset by peer) |
2024-08-15 16:47:07 +0200 | rvalue | (~rvalue@user/rvalue) |
2024-08-15 16:48:33 +0200 | Square3 | (~Square4@user/square) (Ping timeout: 252 seconds) |
2024-08-15 16:54:19 +0200 | JuanDaugherty | (~juan@user/JuanDaugherty) |
2024-08-15 16:59:16 +0200 | misterfish | (~misterfis@87.215.131.102) (Ping timeout: 258 seconds) |
2024-08-15 17:00:19 +0200 | metabulation | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2024-08-15 17:00:57 +0200 | metabulation | (~wootehfoo@user/wootehfoot) |
2024-08-15 17:01:54 +0200 | Square | (~Square@user/square) |
2024-08-15 17:03:02 +0200 | spikhoff | (~spikhoff@8ab7-fe8e-44ff-127b-4d80-8525-07d0-2001.dyn.estpak.ee) (Remote host closed the connection) |
2024-08-15 17:03:43 +0200 | <SrPx> | got it |
2024-08-15 17:03:51 +0200 | <SrPx> | how is haskell->web nowadays? |
2024-08-15 17:06:51 +0200 | <haskellbridge> | <thirdofmay18081814goya> what's the usecase for "Dynamic"? |
2024-08-15 17:07:35 +0200 | chele | (~chele@user/chele) (Remote host closed the connection) |
2024-08-15 17:08:03 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
2024-08-15 17:08:49 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-08-15 17:11:17 +0200 | <Cale> | thirdofmay18081814goya: you mean in Reflex? |
2024-08-15 17:11:37 +0200 | <Cale> | Or Dynamic as in the thing involving Typeable? |
2024-08-15 17:12:12 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
2024-08-15 17:12:17 +0200 | <haskellbridge> | <thirdofmay18081814goya> "data Dynamic" from "base" |
2024-08-15 17:12:22 +0200 | euleritian | (~euleritia@dynamic-176-006-147-135.176.6.pool.telefonica.de) |
2024-08-15 17:13:19 +0200 | <Cale> | Mostly I think of Data.Dynamic as an example of how it's possible to use Typeable to do dynamic typing, but not as something that I'd typically use. You usually get a better result using Typeable more directly. |
2024-08-15 17:13:51 +0200 | <haskellbridge> | <sm> SrPx: the most-used web frameworks are yesod, servant, IHP, maybe miso, maybe this new wasp thing that generates js web apps |
2024-08-15 17:13:52 +0200 | <Cale> | (If you need Typeable at all and not just something like a GADT) |
2024-08-15 17:13:58 +0200 | euleritian | (~euleritia@dynamic-176-006-147-135.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-08-15 17:14:08 +0200 | <haskellbridge> | <sm> they do the job |
2024-08-15 17:14:09 +0200 | <SrPx> | sorry I mean generating a front-end HTML app with Haskell |
2024-08-15 17:14:17 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-08-15 17:14:23 +0200 | <SrPx> | seems like ghcjs isn't maintained? |
2024-08-15 17:14:49 +0200 | <haskellbridge> | <thirdofmay18081814goya> Cale: hm. and which problems are better tackled using Typeable? |
2024-08-15 17:15:03 +0200 | <Cale> | ghcjs indeed is hanging on by a thread, but javascript support in GHC itself is getting there. |
2024-08-15 17:15:31 +0200 | <haskellbridge> | <thirdofmay18081814goya> * handled |
2024-08-15 17:15:31 +0200 | <Cale> | For now though, I would still recommend using ghcjs via something like reflex-platform. |
2024-08-15 17:15:40 +0200 | <danse-nr3> | what's "this new wasp thing" sm? |
2024-08-15 17:15:47 +0200 | <haskellbridge> | <sm> #haskell-wasm:matrix.terrorjack.com (https://matrix.to/#/#haskell-wasm:matrix.terrorjack.com) room may be helpful |
2024-08-15 17:16:13 +0200 | <danse-nr3> | oh you probably meant "wasm" |
2024-08-15 17:16:14 +0200 | <haskellbridge> | <sm> https://wasp-lang.dev, danse-nr3 |
2024-08-15 17:16:22 +0200 | <danse-nr3> | nope you meant wasp |
2024-08-15 17:16:24 +0200 | <danse-nr3> | cheers |
2024-08-15 17:17:14 +0200 | marcelospe | (~marcelosp@143.107.45.1) (Ping timeout: 252 seconds) |
2024-08-15 17:17:14 +0200 | <danse-nr3> | oh yeah i recall now, never bought the idea |
2024-08-15 17:17:29 +0200 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
2024-08-15 17:17:38 +0200 | <haskellbridge> | <sm> Looking at the github repo, I don't know how haskell is involved, but it was mentioned in a recent HN discussion as haskell based |
2024-08-15 17:17:57 +0200 | marcelospe | (~marcelosp@143.107.45.1) |
2024-08-15 17:17:58 +0200 | <danse-nr3> | yeah but too rigid and opinionated for my taste |
2024-08-15 17:19:19 +0200 | <SrPx> | hmm just wondering, I want to organize my project so that each file has only one definition. but it seems like every Haskell file needs a module declaration, and needs to be included inside .cabal. can I avoid that bureaucracy? |
2024-08-15 17:19:24 +0200 | <Cale> | goya: It's somewhat rare, but basically cases where you want to be able to handle many types of data in your application (as in, in a user-facing way), and want to sort of hijack Haskell's type system for your own use. Typeable gives you runtime information about the types of things, and a way to take something of an unknown type t, such that there's an instance of Typeable t, and recover whether t was some particular type like |
2024-08-15 17:19:24 +0200 | <Cale> | Integer, and if so, cast it, obtaining an Integer value. |
2024-08-15 17:20:10 +0200 | itaipu | (~itaipu@168.121.98.107) (Ping timeout: 252 seconds) |
2024-08-15 17:20:17 +0200 | <Cale> | cast :: (Typeable a, Typeable b) => a -> Maybe b |
2024-08-15 17:20:30 +0200 | <Cale> | This gives Nothing whenever a and b are not actually the same type |
2024-08-15 17:20:34 +0200 | <haskellbridge> | <sm> ok there's the haskell in https://github.com/wasp-lang/wasp/tree/main/waspc . I guess in github's bar chart it is obscured by vast quantities of ts/js/css/tex/shel/... ? |
2024-08-15 17:22:02 +0200 | <haskellbridge> | <sm> SrPx: I think there's a way to avoid declaring every file in a .cabal file these days, if you use newer cabal-install |
2024-08-15 17:22:26 +0200 | <haskellbridge> | <sm> or you can use a package.yaml file, and generate the .cabal from that |
2024-08-15 17:22:31 +0200 | <SrPx> | newer cabal-install? thought I was using the latest version (3.1) |
2024-08-15 17:23:06 +0200 | <haskellbridge> | <sm> I meant "newish" |
2024-08-15 17:25:09 +0200 | <SrPx> | I just don't know what you're talking about:( |
2024-08-15 17:28:01 +0200 | <haskellbridge> | <sm> You want to avoid declaring every .hs file in your project - I believe recent versions of "cabal" allow that (but I can't find the doc) |
2024-08-15 17:28:13 +0200 | <SrPx> | ah, got it |
2024-08-15 17:28:18 +0200 | <SrPx> | misunderstood the question |
2024-08-15 17:28:25 +0200 | <SrPx> | message* |
2024-08-15 17:28:46 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) |
2024-08-15 17:32:54 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds) |
2024-08-15 17:34:29 +0200 | itaipu | (~itaipu@168.121.98.107) |
2024-08-15 17:34:46 +0200 | <SrPx> | seems like I do need to declare it on cabal though, otherwise I get "Could not find module ‘Kind.Core’." |
2024-08-15 17:35:53 +0200 | <haskellbridge> | <sm> I was trying to say you have to use some special syntax, it's not default |
2024-08-15 17:37:28 +0200 | <haskellbridge> | <sm> with stack, it is the default |
2024-08-15 17:37:43 +0200 | JuanDaugherty | (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
2024-08-15 17:37:46 +0200 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 252 seconds) |
2024-08-15 17:38:42 +0200 | euleritian | (~euleritia@dynamic-176-006-147-135.176.6.pool.telefonica.de) |
2024-08-15 17:40:59 +0200 | <haskellbridge> | <sm> well, here's a https://github.com/haskell/cabal/issues/5343 discussion of it, still open.. I really thought I'd seen it somewhere |
2024-08-15 17:45:26 +0200 | <haskellbridge> | <sm> no, it's not supported yet |
2024-08-15 17:46:41 +0200 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
2024-08-15 17:47:17 +0200 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2024-08-15 17:47:30 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) (Quit: on the move) |
2024-08-15 17:49:28 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 17:49:28 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 17:49:28 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 17:50:57 +0200 | cfricke | (~cfricke@user/cfricke) (Ping timeout: 252 seconds) |
2024-08-15 17:55:56 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) |
2024-08-15 17:57:59 +0200 | marcelospe | (~marcelosp@143.107.45.1) (Ping timeout: 260 seconds) |
2024-08-15 17:58:35 +0200 | <haskellbridge> | <thirdofmay18081814goya> "class Category a => Arrow (a :: Type -> Type -> Type) where", here "(a :: Type -> Type -> Type)" means the type constructor for "Arrow" takes two types, right? |
2024-08-15 18:00:05 +0200 | <c_wraith> | it takes two fully-saturate types |
2024-08-15 18:01:23 +0200 | <haskellbridge> | <thirdofmay18081814goya> c_wraith: I see ty! |
2024-08-15 18:01:34 +0200 | <c_wraith> | Foo can be an instance of Arrow when (Foo Int Int) is well-kinded. Less so if (Foo Either Maybe) is required. |
2024-08-15 18:04:08 +0200 | JuanDaugherty | (~juan@user/JuanDaugherty) |
2024-08-15 18:04:30 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2) |
2024-08-15 18:09:49 +0200 | <SrPx> | sm: I see ty |
2024-08-15 18:11:01 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) (Ping timeout: 248 seconds) |
2024-08-15 18:12:53 +0200 | billchenchina- | (~billchenc@103.152.35.21) (Ping timeout: 245 seconds) |
2024-08-15 18:12:56 +0200 | cfricke | (~cfricke@user/cfricke) |
2024-08-15 18:13:05 +0200 | billchenchina- | (~billchenc@103.118.42.229) |
2024-08-15 18:14:47 +0200 | <haskellbridge> | <thirdofmay18081814goya> hm, then how do I read a type like: " Generic1 (Kleisli m a :: Type -> Type)"? I would have expected "Generic1 (Kleisli (x :: Type -> Type -> Type)" or "Generic1 (Kleisli x y)" |
2024-08-15 18:15:57 +0200 | JuanDaugherty | (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
2024-08-15 18:16:17 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) |
2024-08-15 18:17:07 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer) |
2024-08-15 18:17:54 +0200 | euleritian | (~euleritia@dynamic-176-006-147-135.176.6.pool.telefonica.de) (Ping timeout: 276 seconds) |
2024-08-15 18:21:21 +0200 | <ncf> | ? |
2024-08-15 18:21:43 +0200 | <ncf> | Generic1 applied to (Kleisli m a), which has kind Type -> Type |
2024-08-15 18:27:12 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-08-15 18:28:23 +0200 | califax | (~califax@user/califx) |
2024-08-15 18:29:10 +0200 | <haskellbridge> | <thirdofmay18081814goya> ncf: got it ty |
2024-08-15 18:30:52 +0200 | <haskellbridge> | <thirdofmay18081814goya> so if the kind of "Kleisli m a" is "Type -> Type", that means "m a" is a single type right? |
2024-08-15 18:31:39 +0200 | euleritian | (~euleritia@dynamic-176-002-138-045.176.2.pool.telefonica.de) |
2024-08-15 18:42:08 +0200 | kaol | (~kaol@94-237-42-30.nl-ams1.upcloud.host) |
2024-08-15 18:42:48 +0200 | <ncf> | Kleisli m a means (Kleisli m) a |
2024-08-15 18:42:55 +0200 | <ncf> | application is left-associative |
2024-08-15 18:45:19 +0200 | <haskellbridge> | <thirdofmay18081814goya> ncf: thanks a lot for the help! |
2024-08-15 18:50:03 +0200 | Me-me | (~me-me@kc.randomserver.name) (Read error: Connection reset by peer) |
2024-08-15 18:51:34 +0200 | Me-me | (~me-me@kc.randomserver.name) |
2024-08-15 18:57:18 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-08-15 18:59:44 +0200 | smalltalkman | (uid545680@id-545680.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2024-08-15 19:00:34 +0200 | econo_ | (uid147250@id-147250.tinside.irccloud.com) |
2024-08-15 19:00:38 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) (Ping timeout: 252 seconds) |
2024-08-15 19:03:28 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) (Read error: Connection reset by peer) |
2024-08-15 19:03:56 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) |
2024-08-15 19:08:20 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds) |
2024-08-15 19:10:36 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
2024-08-15 19:13:01 +0200 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2024-08-15 19:14:28 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 19:18:42 +0200 | euleritian | (~euleritia@dynamic-176-002-138-045.176.2.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-08-15 19:24:11 +0200 | euleritian | (~euleritia@dynamic-176-006-147-189.176.6.pool.telefonica.de) |
2024-08-15 19:34:21 +0200 | euleritian | (~euleritia@dynamic-176-006-147-189.176.6.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-08-15 19:36:20 +0200 | euleritian | (~euleritia@dynamic-176-006-147-189.176.6.pool.telefonica.de) |
2024-08-15 19:36:25 +0200 | Pixi | (~Pixi@user/pixi) (Quit: Leaving) |
2024-08-15 19:37:10 +0200 | <absence> | I'm sure there are multiple problems with this first attempt at something HList-related, but can someone point me in the right direction? https://play.haskell.org/saved/dopna6xm |
2024-08-15 19:38:42 +0200 | <absence> | I'm trying to take a type-level list of type-level strings, and a HList of values, and convert it into a HList of values Tagged with the respective type-level strings. |
2024-08-15 19:40:36 +0200 | euleritian | (~euleritia@dynamic-176-006-147-189.176.6.pool.telefonica.de) (Ping timeout: 252 seconds) |
2024-08-15 19:40:55 +0200 | euleritian | (~euleritia@dynamic-176-002-081-241.176.2.pool.telefonica.de) |
2024-08-15 19:48:07 +0200 | ubert | (~Thunderbi@91.141.68.38.wireless.dyn.drei.com) (Quit: ubert) |
2024-08-15 19:48:22 +0200 | ubert | (~Thunderbi@91.141.68.38.wireless.dyn.drei.com) |
2024-08-15 19:48:45 +0200 | pkal | (~pkal@2a01:4f8:1c1b:a321::1) (Killed buffer) |
2024-08-15 19:56:31 +0200 | rosco | (~rosco@175.136.158.234) (Quit: Lost terminal) |
2024-08-15 19:59:01 +0200 | <haskellbridge> | <thirdofmay18081814goya> "newtype Term f = In {out :: f (Term f)}" what's the proper way to pattern match this type? "In ??" |
2024-08-15 19:59:02 +0200 | <EvanR> | so you want to zip two HLists |
2024-08-15 19:59:59 +0200 | <EvanR> | do you know what f is, if not, In x ? |
2024-08-15 20:00:36 +0200 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 276 seconds) |
2024-08-15 20:00:46 +0200 | danse-nr3 | (~danse-nr3@user/danse-nr3) (Ping timeout: 252 seconds) |
2024-08-15 20:01:01 +0200 | <absence> | EvanR: Not quite, but it's zip-like, just with one HList and one type-level list. |
2024-08-15 20:01:09 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: ah it thought it should have a single answer, will play around with the compiler a bit more ty for input |
2024-08-15 20:01:17 +0200 | <haskellbridge> | <thirdofmay18081814goya> * would |
2024-08-15 20:01:33 +0200 | <int-e> | Both In f and In { out = f } work for pattern matching. |
2024-08-15 20:01:50 +0200 | <haskellbridge> | <thirdofmay18081814goya> int-e: ah I see! ty |
2024-08-15 20:02:26 +0200 | <int-e> | But most of the time I'd just apply `out` to a value in this specific case (a newtype) |
2024-08-15 20:03:37 +0200 | ThePenguin | (~ThePengui@cust-95-80-24-166.csbnet.se) (Remote host closed the connection) |
2024-08-15 20:04:07 +0200 | <EvanR> | well an HList is a value at runtime and a type-level list doesn't exist at runtime |
2024-08-15 20:04:11 +0200 | ThePenguin | (~ThePengui@cust-95-80-24-166.csbnet.se) |
2024-08-15 20:04:44 +0200 | <EvanR> | zipping will be tricky |
2024-08-15 20:05:13 +0200 | <EvanR> | maybe you want to convert the type level list into a normal list of strings |
2024-08-15 20:06:46 +0200 | <EvanR> | maybe write down the type signature of what you think you want |
2024-08-15 20:08:38 +0200 | ft | (~ft@p4fc2aa15.dip0.t-ipconnect.de) |
2024-08-15 20:10:29 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 255 seconds) |
2024-08-15 20:13:22 +0200 | marcelospe | (~marcelosp@143.107.45.1) |
2024-08-15 20:16:28 +0200 | <absence> | EvanR: I think I figured it out. This ZipTagged type family seems to calculate the correct type: https://play.haskell.org/saved/ewv9Yuer |
2024-08-15 20:17:01 +0200 | <EvanR> | ok it zips at the type level |
2024-08-15 20:17:48 +0200 | wroathe_ | (~wroathe@mobile-166-175-60-99.mycingular.net) |
2024-08-15 20:17:58 +0200 | wroathe | (~wroathe@user/wroathe) (Killed (NickServ (GHOST command used by wroathe_!~wroathe@mobile-166-175-60-99.mycingular.net))) |
2024-08-15 20:18:00 +0200 | wroathe_ | wroathe |
2024-08-15 20:19:02 +0200 | <EvanR> | data family used for HList is interesting |
2024-08-15 20:19:13 +0200 | <EvanR> | woulda thought it would be a GADT |
2024-08-15 20:19:24 +0200 | <absence> | EvanR: Oops, I messed up the data family syntax there, but you got the idea. Map at the value-level and zip at the type-level. |
2024-08-15 20:19:48 +0200 | <absence> | EvanR: I just copied it from the HList package. |
2024-08-15 20:19:55 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) |
2024-08-15 20:22:34 +0200 | wroathe | (~wroathe@mobile-166-175-60-99.mycingular.net) (Changing host) |
2024-08-15 20:22:34 +0200 | wroathe | (~wroathe@user/wroathe) |
2024-08-15 20:23:27 +0200 | <absence> | EvanR: GADT works as well, I like it better: https://play.haskell.org/saved/N11PcFZS |
2024-08-15 20:25:59 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-08-15 20:31:12 +0200 | marcelospe | (~marcelosp@143.107.45.1) (Ping timeout: 252 seconds) |
2024-08-15 20:31:51 +0200 | CrunchyFlakes | (~CrunchyFl@146.52.130.128) (Quit: ZNC 1.8.2 - https://znc.in) |
2024-08-15 20:33:18 +0200 | marcelospe | (~marcelosp@143.107.45.1) |
2024-08-15 20:34:58 +0200 | CrunchyFlakes | (~CrunchyFl@146.52.130.128) |
2024-08-15 20:41:38 +0200 | euleritian | (~euleritia@dynamic-176-002-081-241.176.2.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-08-15 20:41:56 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-08-15 20:42:14 +0200 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2024-08-15 20:46:17 +0200 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
2024-08-15 20:49:19 +0200 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
2024-08-15 20:52:26 +0200 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection) |
2024-08-15 20:53:24 +0200 | neuroevolutus | (~neuroevol@206.217.206.35) |
2024-08-15 20:54:18 +0200 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) |
2024-08-15 20:54:18 +0200 | ChanServ | +v haskellbridge |
2024-08-15 21:06:42 +0200 | target_i | (~target_i@user/target-i/x-6023099) |
2024-08-15 21:16:58 +0200 | marcelospe | (~marcelosp@143.107.45.1) (Remote host closed the connection) |
2024-08-15 21:17:19 +0200 | marcelospe | (~marcelosp@143.107.45.1) |
2024-08-15 21:26:43 +0200 | john3 | (~john@203.94.52.182) (Quit: WeeChat 4.0.5) |
2024-08-15 21:30:58 +0200 | marcelospe | (~marcelosp@143.107.45.1) (Ping timeout: 252 seconds) |
2024-08-15 21:35:54 +0200 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 272 seconds) |
2024-08-15 21:37:41 +0200 | <haskellbridge> | <thirdofmay18081814goya> author defines a syntax where literals are given by ```haskell |
2024-08-15 21:37:41 +0200 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_matrix/media/v3/download/kf8nh.com/aGtRMHzRbZuRhnklhVCXkPZZ (6 lines) |
2024-08-15 21:37:55 +0200 | <haskellbridge> | <thirdofmay18081814goya> author defines a syntax where literals are given by |
2024-08-15 21:37:55 +0200 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_matrix/media/v3/download/kf8nh.com/iVYpGxhMzIIqOFKovfwKlDIt (6 lines) |
2024-08-15 21:38:01 +0200 | <haskellbridge> | <thirdofmay18081814goya> what might they mean by "Ident String"? |
2024-08-15 21:39:09 +0200 | <EvanR> | define a type for literals of which there are 3 kinds: string literals, integer literals, or identifiers |
2024-08-15 21:39:38 +0200 | <mauke> | variables have names |
2024-08-15 21:39:40 +0200 | <EvanR> | though normally identifiers alone would be variables and not a literal |
2024-08-15 21:39:58 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: ah, identifiers! ty |
2024-08-15 21:40:52 +0200 | <EvanR> | in some languages you have keywords or symbols distinct from strings |
2024-08-15 21:41:06 +0200 | <EvanR> | which have literal values |
2024-08-15 21:42:29 +0200 | <zzz> | what would be the equivalent of a symbol in haskell? data SymbolX = SymbolX ? |
2024-08-15 21:42:46 +0200 | <zzz> | just make a bunch of those |
2024-08-15 21:43:28 +0200 | <zzz> | can't think of a situation where they would be useful though |
2024-08-15 21:44:04 +0200 | <EvanR> | you could use any haskell type with an Enum instance to get the same effect |
2024-08-15 21:44:46 +0200 | <EvanR> | not the same, since there is a runtime global optimization interning the integers for any chosen string |
2024-08-15 21:44:56 +0200 | <EvanR> | so you'd have to cook something like that up |
2024-08-15 21:45:20 +0200 | <EvanR> | the approximate it you could use ShortByteString |
2024-08-15 21:45:38 +0200 | <zzz> | i guess there's Data.Unique in base also for that effect |
2024-08-15 21:45:42 +0200 | <EvanR> | if the shortbytestring is short enough, it's smaller than the Int xD |
2024-08-15 21:46:56 +0200 | <EvanR> | Unique requires IO... |
2024-08-15 21:47:04 +0200 | <zzz> | and it uses Integer |
2024-08-15 21:47:19 +0200 | <EvanR> | and doesn't have a way to assign a name to a value |
2024-08-15 21:47:53 +0200 | <EvanR> | basically just use String |
2024-08-15 21:48:10 +0200 | <zzz> | String? |
2024-08-15 21:48:15 +0200 | <zzz> | as in [Char] ? |
2024-08-15 21:50:33 +0200 | foul_owl_ | (~kerry@185.219.141.164) |
2024-08-15 21:50:33 +0200 | <EvanR> | it's basically how keywords/symbols/whatever are used in dynamically typed language of week |
2024-08-15 21:50:44 +0200 | foul_owl | (~kerry@185.216.231.180) (Ping timeout: 260 seconds) |
2024-08-15 21:50:46 +0200 | <EvanR> | accelerated short strings |
2024-08-15 21:51:11 +0200 | <EvanR> | you're not given access to the internal numeric codes |
2024-08-15 21:51:48 +0200 | marcelospe | (~marcelosp@143.107.45.1) |
2024-08-15 21:52:12 +0200 | <EvanR> | when they are used to basically hack together a sum type, like {:just, 3} or {:nothing}... well that's better done with a sum type |
2024-08-15 21:53:20 +0200 | ubert | (~Thunderbi@91.141.68.38.wireless.dyn.drei.com) (Quit: ubert) |
2024-08-15 21:53:50 +0200 | <zzz> | we could use newtype Symbol = Symbol Word |
2024-08-15 21:53:55 +0200 | <zzz> | if we don't mind the limit |
2024-08-15 21:54:47 +0200 | <EvanR> | smh |
2024-08-15 21:54:53 +0200 | <zzz> | no? :p |
2024-08-15 21:55:16 +0200 | neuroevolutus9 | (~neuroevol@37.19.200.148) |
2024-08-15 21:55:28 +0200 | neuroevolutus9 | (~neuroevol@37.19.200.148) (Client Quit) |
2024-08-15 21:56:13 +0200 | <EvanR> | apple :: Word, scissors :: Word, while frobnobdicate :: Word is a type error |
2024-08-15 21:56:50 +0200 | <zzz> | you lost me there |
2024-08-15 21:57:13 +0200 | <EvanR> | implementing keyword as words.... lol |
2024-08-15 21:57:42 +0200 | <EvanR> | anyway if you want to use numbers... use Int |
2024-08-15 21:57:53 +0200 | <EvanR> | if you want to use words... use String |
2024-08-15 21:58:01 +0200 | <zzz> | what about retroencabulator :: Word? |
2024-08-15 21:58:09 +0200 | <haskellbridge> | <thirdofmay18081814goya> data Lit |
2024-08-15 21:58:10 +0200 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_matrix/media/v3/download/kf8nh.com/CnNKCHExacGlsViCKhDOYFta (12 lines) |
2024-08-15 21:58:52 +0200 | <EvanR> | thirdofmay18081814goya, did you try it |
2024-08-15 21:59:11 +0200 | neuroevolutus | (~neuroevol@206.217.206.35) (Ping timeout: 256 seconds) |
2024-08-15 21:59:18 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: definitely, have been stuck on this for the last hour or so |
2024-08-15 21:59:26 +0200 | <EvanR> | and what was the result |
2024-08-15 21:59:29 +0200 | <haskellbridge> | <thirdofmay18081814goya> I don't know how to make a final term |
2024-08-15 21:59:40 +0200 | <haskellbridge> | <thirdofmay18081814goya> because the typechecking fails by requiring it to recurse again |
2024-08-15 22:00:16 +0200 | <EvanR> | you didn't try In (Expr (StrLit "hello")) ? |
2024-08-15 22:00:29 +0200 | <EvanR> | ok you did get an error |
2024-08-15 22:01:04 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: "Expr" isn't an available data constructor in this case (i think) |
2024-08-15 22:01:24 +0200 | <EvanR> | In (StrLet "hello") |
2024-08-15 22:03:18 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: this fails on account of "StrLit "hello"" not being of type "f (Term f)" |
2024-08-15 22:03:41 +0200 | <EvanR> | what type is it |
2024-08-15 22:03:48 +0200 | <haskellbridge> | <thirdofmay18081814goya> "Lit" |
2024-08-15 22:03:57 +0200 | <EvanR> | ok |
2024-08-15 22:04:05 +0200 | <EvanR> | In (Literal (StrLit "hello")) |
2024-08-15 22:04:18 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-08-15 22:06:10 +0200 | <haskellbridge> | <thirdofmay18081814goya> that typechecked |
2024-08-15 22:06:16 +0200 | <haskellbridge> | <thirdofmay18081814goya> i don't understand how |
2024-08-15 22:06:26 +0200 | <haskellbridge> | <thirdofmay18081814goya> will contemplate it, thanks a lot for the help |
2024-08-15 22:06:35 +0200 | <EvanR> | meditation is required |
2024-08-15 22:07:29 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) |
2024-08-15 22:08:22 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) (Ping timeout: 252 seconds) |
2024-08-15 22:08:36 +0200 | <EvanR> | Literal :: forall a . Lit -> Expr a |
2024-08-15 22:08:53 +0200 | <EvanR> | a is whatever type you want |
2024-08-15 22:12:43 +0200 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 4.2.2) |
2024-08-15 22:25:14 +0200 | <haskellbridge> | <thirdofmay18081814goya> hm |
2024-08-15 22:26:29 +0200 | <haskellbridge> | <thirdofmay18081814goya> does this work because we first of all suppose "In (Literal (StrLit "hello"))" to be of type "Term Expr", which restricts "Literal" from "Lit -> Expr a" to "Lit -> Expr Term"? |
2024-08-15 22:27:46 +0200 | <haskellbridge> | <thirdofmay18081814goya> i.e., the compiler supposes first that the expression is well-typed? |
2024-08-15 22:30:03 +0200 | alethkit | kitaleth |
2024-08-15 22:31:23 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-08-15 22:31:31 +0200 | mauke | writes down some types |
2024-08-15 22:32:39 +0200 | <mauke> | StrLit :: String -> Lit; Literal :: Lit -> Expr a; In :: f (Term f) -> Term f |
2024-08-15 22:33:08 +0200 | <mauke> | thus: Literal (StrLit "hello") :: Expr a |
2024-08-15 22:33:22 +0200 | <mauke> | where 'a' is completely free, i.e. arbitrary |
2024-08-15 22:34:44 +0200 | <mauke> | meanwhile, to typecheck `In (Literal (StrLit "hello"))` we have to match up f (Term f) (what In expects the argument type to be) with Expr a (the intrinsic type of the argument) |
2024-08-15 22:35:00 +0200 | <mauke> | f (Term f) ~ Expr a |
2024-08-15 22:36:00 +0200 | <mauke> | on both sides we have something of the shape SomeTypeConstructor SomeArgument, so on both sides the type constructors must match and the argument types must match |
2024-08-15 22:36:12 +0200 | <mauke> | f ~ Expr, (Term f) ~ a |
2024-08-15 22:37:05 +0200 | <mauke> | solving these equations, we get: f = Expr; a = Term Expr |
2024-08-15 22:38:23 +0200 | <haskellbridge> | <thirdofmay18081814goya> mauke: perfectly clear now, thanks a lot! |
2024-08-15 22:38:30 +0200 | <mauke> | thus we can assign `Literal (StrLit "hello") :: Expr (Term Expr)` and `In :: Expr (Term Expr) -> Term Expr` |
2024-08-15 22:39:56 +0200 | Pixi | (~Pixi@user/pixi) |
2024-08-15 22:41:19 +0200 | Inst | wagahai |
2024-08-15 22:42:50 +0200 | marcelospe | (~marcelosp@143.107.45.1) (Ping timeout: 252 seconds) |
2024-08-15 22:47:52 +0200 | wagahai | Inst |
2024-08-15 22:56:48 +0200 | marcelospe | (~marcelosp@143.107.45.1) |
2024-08-15 23:11:32 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-08-15 23:14:33 +0200 | marcelospe | (~marcelosp@143.107.45.1) (Ping timeout: 258 seconds) |
2024-08-15 23:15:26 +0200 | <haskellbridge> | <thirdofmay18081814goya> in neovim is there a way to hover over an expression and get its type? |
2024-08-15 23:19:18 +0200 | <haskellbridge> | <thirdofmay18081814goya> yep default behaviour of the lsp |
2024-08-15 23:19:25 +0200 | <haskellbridge> | <thirdofmay18081814goya> how did i not know this lol |
2024-08-15 23:24:58 +0200 | wlhn | (~wlhn@dl6-5j8gfh1n484fp87pt-3.rev.dnainternet.fi) (Remote host closed the connection) |
2024-08-15 23:25:15 +0200 | wlhn | (~wlhn@dl6-5j8gfh1n484fp87pt-3.rev.dnainternet.fi) |
2024-08-15 23:28:53 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 248 seconds) |
2024-08-15 23:33:36 +0200 | ephilalethes | (~noumenon@113.51-175-156.customer.lyse.net) (Quit: Leaving) |
2024-08-15 23:38:00 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) () |
2024-08-15 23:41:48 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) |
2024-08-15 23:41:56 +0200 | gmg | (~user@user/gehmehgeh) (Ping timeout: 260 seconds) |
2024-08-15 23:42:42 +0200 | gmg | (~user@user/gehmehgeh) |
2024-08-15 23:45:26 +0200 | nek0 | (~nek0@user/nek0) (Quit: The Lounge - https://thelounge.chat) |
2024-08-15 23:52:42 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 272 seconds) |
2024-08-15 23:54:18 +0200 | target_i | (~target_i@user/target-i/x-6023099) (Quit: leaving) |
2024-08-15 23:54:55 +0200 | sord937 | (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |