2022-03-27 00:03:34 +0100 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 272 seconds) |
2022-03-27 00:04:31 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) |
2022-03-27 00:07:17 +0100 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 00:13:02 +0100 | deadmarshal_ | (~deadmarsh@95.38.230.121) |
2022-03-27 00:13:04 +0100 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 272 seconds) |
2022-03-27 00:17:17 +0100 | deadmarshal_ | (~deadmarsh@95.38.230.121) (Ping timeout: 240 seconds) |
2022-03-27 00:18:12 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 240 seconds) |
2022-03-27 00:29:45 +0100 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2022-03-27 00:31:14 +0100 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-03-27 00:32:11 +0100 | Unicorn_Princess | (~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Ping timeout: 256 seconds) |
2022-03-27 00:32:19 +0100 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) |
2022-03-27 00:33:07 +0100 | Unicorn_Princess | (~Unicorn_P@93-103-228-248.dynamic.t-2.net) |
2022-03-27 00:34:37 +0100 | acidjnk | (~acidjnk@p200300d0c7049f68c1d0bc0d753b520f.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2022-03-27 00:35:16 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2022-03-27 00:42:26 +0100 | alp | (~alp@user/alp) (Ping timeout: 245 seconds) |
2022-03-27 00:47:36 +0100 | mvk | (~mvk@2607:fea8:5cc3:7e00::7980) |
2022-03-27 00:52:56 +0100 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) |
2022-03-27 00:57:11 +0100 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Read error: Connection reset by peer) |
2022-03-27 00:57:23 +0100 | machinedgod | (~machinedg@24.105.81.50) |
2022-03-27 00:59:20 +0100 | DNH | (~DNH@8.44.0.63) |
2022-03-27 01:01:29 +0100 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) |
2022-03-27 01:05:05 +0100 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-03-27 01:14:12 +0100 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Ping timeout: 240 seconds) |
2022-03-27 01:14:26 +0100 | azimut_ | (~azimut@gateway/tor-sasl/azimut) |
2022-03-27 01:14:38 +0100 | raehik | (~raehik@82.21.176.157) |
2022-03-27 01:16:15 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
2022-03-27 01:17:35 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds) |
2022-03-27 01:19:48 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-03-27 01:20:45 +0100 | kaph_ | (~kaph@net-109-116-124-149.cust.vodafonedsl.it) (Read error: Connection reset by peer) |
2022-03-27 01:24:15 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds) |
2022-03-27 01:26:40 +0100 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
2022-03-27 01:27:02 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-03-27 01:27:46 +0100 | AlexNoo_ | (~AlexNoo@178.34.150.116) |
2022-03-27 01:27:57 +0100 | AlexNoo | (~AlexNoo@178.34.150.116) (Read error: Connection reset by peer) |
2022-03-27 01:30:28 +0100 | wroathe | (~wroathe@ee4.ips.PaulBunyan.net) |
2022-03-27 01:30:28 +0100 | wroathe | (~wroathe@ee4.ips.PaulBunyan.net) (Changing host) |
2022-03-27 01:30:28 +0100 | wroathe | (~wroathe@user/wroathe) |
2022-03-27 01:31:55 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) (Ping timeout: 260 seconds) |
2022-03-27 01:32:15 +0100 | raehik | (~raehik@82.21.176.157) (Ping timeout: 256 seconds) |
2022-03-27 01:32:19 +0100 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 01:33:57 +0100 | zyklotomic | (~ethan@res388d-128-61-91-192.res.gatech.edu) (Ping timeout: 256 seconds) |
2022-03-27 01:35:36 +0100 | zyklotomic | (~ethan@r4-128-61-94-5.res.gatech.edu) |
2022-03-27 01:35:42 +0100 | epolanski | (uid312403@id-312403.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
2022-03-27 01:37:24 +0100 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) (Read error: Connection reset by peer) |
2022-03-27 01:37:33 +0100 | rawley_ | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) |
2022-03-27 01:38:17 +0100 | rawley_ | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) (Remote host closed the connection) |
2022-03-27 01:38:42 +0100 | rawley_ | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) |
2022-03-27 01:39:02 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-03-27 01:40:19 +0100 | pnotequalnp | (~kevin@user/pnotequalnp) (Ping timeout: 260 seconds) |
2022-03-27 01:42:56 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-98.elisa-laajakaista.fi) (Quit: Leaving.) |
2022-03-27 01:47:44 +0100 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-03-27 01:48:06 +0100 | chenqisu1 | (~chenqisu1@183.217.201.88) |
2022-03-27 01:50:13 +0100 | cyphase | (~cyphase@user/cyphase) (Ping timeout: 268 seconds) |
2022-03-27 01:54:36 +0100 | cyphase | (~cyphase@user/cyphase) |
2022-03-27 01:55:51 +0100 | DNH | (~DNH@8.44.0.63) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-03-27 03:06:32 +0200 | Jeanne-Kamikaze | (~Jeanne-Ka@142.147.89.202) |
2022-03-27 03:15:47 +0200 | aliosablack | (~chomwitt@2a02:587:dc18:da00:eb71:868b:3400:4636) (Ping timeout: 260 seconds) |
2022-03-27 03:17:25 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 240 seconds) |
2022-03-27 03:22:07 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
2022-03-27 03:26:42 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 272 seconds) |
2022-03-27 03:27:19 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2022-03-27 03:28:37 +0200 | rawley_ | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) (Quit: Leaving) |
2022-03-27 03:28:56 +0200 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) |
2022-03-27 03:29:50 +0200 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) (Client Quit) |
2022-03-27 03:30:03 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 03:30:06 +0200 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) |
2022-03-27 03:31:00 +0200 | mvk | (~mvk@2607:fea8:5cc3:7e00::7980) (Ping timeout: 240 seconds) |
2022-03-27 03:33:10 +0200 | rustacean | (~quassel@117.254.34.143) |
2022-03-27 03:33:29 +0200 | rustacean | (~quassel@117.254.34.143) (Client Quit) |
2022-03-27 03:33:43 +0200 | razetime | (~quassel@117.254.34.143) |
2022-03-27 03:34:26 +0200 | alp | (~alp@user/alp) |
2022-03-27 03:34:37 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
2022-03-27 03:37:09 +0200 | vglfr | (~vglfr@37.73.58.115) |
2022-03-27 03:38:35 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
2022-03-27 03:40:08 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2022-03-27 03:40:14 +0200 | rekahsoft | (~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) |
2022-03-27 03:41:13 +0200 | rekahsoft | (~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection) |
2022-03-27 03:41:18 +0200 | xkuru | (~xkuru@user/xkuru) (Read error: Connection reset by peer) |
2022-03-27 03:41:33 +0200 | rekahsoft | (~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) |
2022-03-27 03:43:10 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Ping timeout: 272 seconds) |
2022-03-27 03:45:10 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 03:47:52 +0200 | rekahsoft | (~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection) |
2022-03-27 03:47:57 +0200 | xff0x | (~xff0x@i121-117-52-147.s41.a013.ap.plala.or.jp) (Ping timeout: 256 seconds) |
2022-03-27 03:50:26 +0200 | zaquest | (~notzaques@5.130.79.72) (Remote host closed the connection) |
2022-03-27 03:51:05 +0200 | rekahsoft | (~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) |
2022-03-27 03:51:19 +0200 | rekahsoft | (~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection) |
2022-03-27 03:51:44 +0200 | rekahsoft | (~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) |
2022-03-27 03:52:24 +0200 | zaquest | (~notzaques@5.130.79.72) |
2022-03-27 03:55:57 +0200 | joo-_ | (~joo-_@fsf/member/joo--) (Ping timeout: 252 seconds) |
2022-03-27 03:57:34 +0200 | joo-_ | (~joo-_@80-62-117-54-mobile.dk.customer.tdc.net) |
2022-03-27 03:57:34 +0200 | joo-_ | (~joo-_@80-62-117-54-mobile.dk.customer.tdc.net) (Changing host) |
2022-03-27 03:57:34 +0200 | joo-_ | (~joo-_@fsf/member/joo--) |
2022-03-27 04:02:13 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2022-03-27 04:04:06 +0200 | wroathe | (~wroathe@ee4.ips.PaulBunyan.net) |
2022-03-27 04:04:06 +0200 | wroathe | (~wroathe@ee4.ips.PaulBunyan.net) (Changing host) |
2022-03-27 04:04:06 +0200 | wroathe | (~wroathe@user/wroathe) |
2022-03-27 04:04:13 +0200 | vglfr | (~vglfr@37.73.58.115) (Ping timeout: 268 seconds) |
2022-03-27 04:10:14 +0200 | vglfr | (~vglfr@37.73.58.115) |
2022-03-27 04:10:57 +0200 | <razetime> | hi, i'm trying to install a package with cabal but get this weird error: |
2022-03-27 04:10:57 +0200 | <razetime> | cabal: Error: some packages failed to install: |
2022-03-27 04:10:57 +0200 | <razetime> | ghc-lib-parser-8.10.7.20220219-7xoqX1liclfEDk8lJQn5pT failed during the |
2022-03-27 04:10:57 +0200 | <razetime> | configure step. The exception was: |
2022-03-27 04:10:57 +0200 | <razetime> | ExitFailure 1 |
2022-03-27 04:10:57 +0200 | <razetime> | ormolu-0.1.4.1-IQBEtLLThqGE3isZmjbrfL depends on ormolu-0.1.4.1 which failed |
2022-03-27 04:10:59 +0200 | <razetime> | to install. |
2022-03-27 04:18:01 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Read error: Connection reset by peer) |
2022-03-27 04:18:07 +0200 | awschnap | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 04:20:36 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection) |
2022-03-27 04:24:49 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2022-03-27 04:25:06 +0200 | AlexNoo__ | (~AlexNoo@94.233.240.35) |
2022-03-27 04:25:13 +0200 | xff0x | (~xff0x@i121-117-52-147.s41.a013.ap.plala.or.jp) |
2022-03-27 04:25:17 +0200 | Katarushisu | (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (Read error: Connection reset by peer) |
2022-03-27 04:26:12 +0200 | razetime | (~quassel@117.254.34.143) (Ping timeout: 240 seconds) |
2022-03-27 04:26:37 +0200 | AlexZenon | (~alzenon@178.34.150.116) (Ping timeout: 240 seconds) |
2022-03-27 04:26:56 +0200 | razetime | (~quassel@117.254.34.170) |
2022-03-27 04:27:34 +0200 | Katarushisu | (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) |
2022-03-27 04:27:39 +0200 | Alex_test | (~al_test@178.34.150.116) (Ping timeout: 250 seconds) |
2022-03-27 04:28:17 +0200 | vglfr | (~vglfr@37.73.58.115) (Ping timeout: 240 seconds) |
2022-03-27 04:28:17 +0200 | AlexNoo_ | (~AlexNoo@178.34.150.116) (Ping timeout: 240 seconds) |
2022-03-27 04:30:28 +0200 | AlexZenon | (~alzenon@94.233.240.35) |
2022-03-27 04:31:34 +0200 | Alex_test | (~al_test@94.233.240.35) |
2022-03-27 04:39:14 +0200 | harveypwca | (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
2022-03-27 04:40:24 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 04:41:41 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2022-03-27 04:41:42 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2022-03-27 04:41:42 +0200 | finn_elija | FinnElija |
2022-03-27 04:42:36 +0200 | wyrd | (~wyrd@gateway/tor-sasl/wyrd) (Quit: Lost terminal) |
2022-03-27 04:44:36 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
2022-03-27 04:54:47 +0200 | alp | (~alp@user/alp) (Ping timeout: 268 seconds) |
2022-03-27 04:55:57 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
2022-03-27 04:58:53 +0200 | wroathe | (~wroathe@user/wroathe) |
2022-03-27 05:01:17 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
2022-03-27 05:01:23 +0200 | deadmarshal_ | (~deadmarsh@95.38.230.121) |
2022-03-27 05:02:36 +0200 | kaph | (~kaph@net-109-116-124-149.cust.vodafonedsl.it) |
2022-03-27 05:06:46 +0200 | <DigitalKiwi> | razetime: is ormolu the package you want to install or something else |
2022-03-27 05:07:00 +0200 | <razetime> | it is the package i want to install |
2022-03-27 05:08:14 +0200 | cdman | (~dcm@user/dmc/x-4369397) |
2022-03-27 05:08:27 +0200 | <DigitalKiwi> | nix-shell -p ormolu |
2022-03-27 05:08:28 +0200 | <DigitalKiwi> | [nix-shell:~]$ ormolu --version |
2022-03-27 05:08:30 +0200 | <DigitalKiwi> | ormolu 0.1.4.1 UNKNOWN UNKNOWN |
2022-03-27 05:08:32 +0200 | <DigitalKiwi> | using ghc-lib-parser 8.10.7.20210828 |
2022-03-27 05:09:54 +0200 | _dmc_ | (~dcm@27.2.216.148) |
2022-03-27 05:13:11 +0200 | cdman | (~dcm@user/dmc/x-4369397) (Ping timeout: 256 seconds) |
2022-03-27 05:17:37 +0200 | Hash | (~Hash@hey.howstoned.ru) (Ping timeout: 240 seconds) |
2022-03-27 05:18:14 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-03-27 05:23:01 +0200 | rekahsoft | (~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Ping timeout: 240 seconds) |
2022-03-27 05:24:21 +0200 | wyrd | (~wyrd@gateway/tor-sasl/wyrd) |
2022-03-27 05:25:05 +0200 | Jeanne-Kamikaze | (~Jeanne-Ka@142.147.89.202) (Quit: Leaving) |
2022-03-27 05:26:12 +0200 | <DigitalKiwi> | razetime: when was your last `cabal update`? |
2022-03-27 05:26:32 +0200 | <razetime> | about a minute before i ran cabal install ormolu |
2022-03-27 05:27:42 +0200 | <ProfSimm> | How does Haskell disambiguate these: a -b as in "apply -b to function a" vs "subtract b from a" |
2022-03-27 05:36:29 +0200 | <dsal> | `a -b` is "call the function (-) on `a` and `b`" |
2022-03-27 05:37:35 +0200 | <ProfSimm> | dsal: what about the other case, where I was trying to pass -b to a |
2022-03-27 05:37:47 +0200 | <dsal> | That's not what that does, though. |
2022-03-27 05:37:47 +0200 | <ProfSimm> | dsal: for example print -5 |
2022-03-27 05:37:56 +0200 | <dsal> | > print (-5) |
2022-03-27 05:37:57 +0200 | <lambdabot> | <IO ()> |
2022-03-27 05:38:00 +0200 | <ProfSimm> | Sure but |
2022-03-27 05:38:03 +0200 | <dsal> | % print (-5) |
2022-03-27 05:38:03 +0200 | <yahb> | dsal: -5 |
2022-03-27 05:38:04 +0200 | <ProfSimm> | Isn't this error prone |
2022-03-27 05:38:06 +0200 | <DigitalKiwi> | lol weird i get ormolu-0.4.0.0 with cabal |
2022-03-27 05:38:26 +0200 | <dsal> | It's not error prone in the sense that it'll cause runtime problems. It's not ambiguous. |
2022-03-27 05:38:30 +0200 | <ProfSimm> | %print -5 |
2022-03-27 05:38:51 +0200 | <dsal> | There's a GHC extension to make it work a little more like you'd expect, but then that'd break some other things. |
2022-03-27 05:38:55 +0200 | <dsal> | % print -5 |
2022-03-27 05:38:55 +0200 | <yahb> | dsal: ; <interactive>:28:1: error:; * No instance for (Num (() -> IO ())) arising from a use of `it'; (maybe you haven't applied a function to enough arguments?); * In the first argument of `print', namely `it'; In a stmt of an interactive GHCi command: print it |
2022-03-27 05:39:09 +0200 | <ProfSimm> | Hm |
2022-03-27 05:39:31 +0200 | <ProfSimm> | dsal: why have such an extension |
2022-03-27 05:39:47 +0200 | <dsal> | Because people keep trying to do the syntactic thing that you're trying to do and it can work in many cases. |
2022-03-27 05:40:08 +0200 | <ProfSimm> | dsal: in that case how do they do the other variant |
2022-03-27 05:40:12 +0200 | <ProfSimm> | a - b |
2022-03-27 05:40:53 +0200 | <dsal> | When do you want to call `(-) a b` ? That's almost every time I use `(-)`. I'm having a little trouble relating. |
2022-03-27 05:41:14 +0200 | <ProfSimm> | OK |
2022-03-27 05:41:16 +0200 | <ProfSimm> | thanks |
2022-03-27 05:41:46 +0200 | <dsal> | This is the extension: https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/negative_literals.html |
2022-03-27 05:43:07 +0200 | <boxscape_> | ProfSimm: be clear (though maybe it is already), even with the extension, `a - b` is still parsed as `(-) a b`, just `a -b` is parsed as `a (-b)` |
2022-03-27 05:43:12 +0200 | <boxscape_> | s/be/to be |
2022-03-27 05:43:34 +0200 | <dsal> | It's OK to demand clarity of me. |
2022-03-27 05:45:35 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 05:46:58 +0200 | Topsi | (~Tobias@dyndsl-095-033-022-251.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
2022-03-27 05:48:55 +0200 | ProfSimm | (~ProfSimm@87.227.196.109) (Remote host closed the connection) |
2022-03-27 05:49:43 +0200 | <abastro[m]> | Tbh quite ambiguous with `a-b` |
2022-03-27 05:50:04 +0200 | <boxscape_> | that's parsed as `(-) a b` also |
2022-03-27 05:50:13 +0200 | <abastro[m]> | Oh thats nice |
2022-03-27 05:50:20 +0200 | <abastro[m]> | At cost of parsing overhead |
2022-03-27 05:50:29 +0200 | <abastro[m]> | Hm actually, haskell is hard to parse right |
2022-03-27 05:50:40 +0200 | <boxscape_> | I think so yeah |
2022-03-27 05:50:42 +0200 | <abastro[m]> | I think it is one of problems of haskell |
2022-03-27 05:52:07 +0200 | <dsal> | > 1+5 |
2022-03-27 05:52:09 +0200 | <lambdabot> | 6 |
2022-03-27 05:52:21 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 250 seconds) |
2022-03-27 05:52:25 +0200 | <dsal> | > "a"<>"b" |
2022-03-27 05:52:27 +0200 | <lambdabot> | "ab" |
2022-03-27 05:53:00 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
2022-03-27 05:56:34 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-03-27 06:01:14 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds) |
2022-03-27 06:01:21 +0200 | vglfr | (~vglfr@46.96.151.207) |
2022-03-27 06:02:45 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) |
2022-03-27 06:04:35 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds) |
2022-03-27 06:06:57 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2022-03-27 06:07:02 +0200 | <abastro[m]> | That parsing error message is rather poor |
2022-03-27 06:08:57 +0200 | <boxscape_> | % % (proc a -> (| id (\x -> returnA -< x) |) 4 5 6) "foo" -- update, I asked yesterday whether this is a bug, because the command seems to be getting more arguments than it requires - I now think it isn't, turns out commands just get a stack of arguments, and I suppose more values can be added onto that stack |
2022-03-27 06:08:57 +0200 | <yahb> | boxscape_: ; <interactive>:34:1: error: parse error on input `%' |
2022-03-27 06:09:00 +0200 | <boxscape_> | whoops |
2022-03-27 06:09:04 +0200 | <boxscape_> | % (proc a -> (| id (\x -> returnA -< x) |) 4 5 6) "foo" |
2022-03-27 06:09:04 +0200 | <yahb> | boxscape_: 4 |
2022-03-27 06:12:25 +0200 | vysn | (~vysn@user/vysn) |
2022-03-27 06:14:05 +0200 | nicbk | (~nicbk@user/nicbk) |
2022-03-27 06:15:27 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 260 seconds) |
2022-03-27 06:15:55 +0200 | deadmarshal_ | (~deadmarsh@95.38.230.121) (Ping timeout: 260 seconds) |
2022-03-27 06:16:26 +0200 | vglfr | (~vglfr@46.96.151.207) (Ping timeout: 272 seconds) |
2022-03-27 06:19:07 +0200 | _dmc_ | (~dcm@27.2.216.148) (Changing host) |
2022-03-27 06:19:07 +0200 | _dmc_ | (~dcm@user/dmc/x-4369397) |
2022-03-27 06:19:22 +0200 | _dmc_ | (~dcm@user/dmc/x-4369397) (Quit: Leaving) |
2022-03-27 06:19:49 +0200 | cdman | (~dcm@user/dmc/x-4369397) |
2022-03-27 06:20:39 +0200 | lambdap2 | (~lambdap@static.167.190.119.168.clients.your-server.de) (Quit: lambdap2) |
2022-03-27 06:21:15 +0200 | lambdap2 | (~lambdap@static.167.190.119.168.clients.your-server.de) |
2022-03-27 06:22:08 +0200 | nate1 | (~nate@98.45.167.61) |
2022-03-27 06:22:31 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 06:22:35 +0200 | pnotequalnp | (~kevin@user/pnotequalnp) |
2022-03-27 06:25:34 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 06:28:07 +0200 | dyeplexer | (~dyeplexer@user/dyeplexer) |
2022-03-27 06:29:28 +0200 | _dmc_ | (~dcm@27.2.216.148) |
2022-03-27 06:29:28 +0200 | _dmc_ | (~dcm@27.2.216.148) (Changing host) |
2022-03-27 06:29:28 +0200 | _dmc_ | (~dcm@user/dmc/x-4369397) |
2022-03-27 06:30:22 +0200 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) (Remote host closed the connection) |
2022-03-27 06:30:25 +0200 | _dmc_ | (~dcm@user/dmc/x-4369397) (Remote host closed the connection) |
2022-03-27 06:36:35 +0200 | lumberjack123 | (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
2022-03-27 06:39:57 +0200 | chenqisu1 | (~chenqisu1@183.217.201.88) (Ping timeout: 240 seconds) |
2022-03-27 06:42:45 +0200 | HotblackDesiato_ | (~HotblackD@gateway/tor-sasl/hotblackdesiato) (Remote host closed the connection) |
2022-03-27 06:43:00 +0200 | HotblackDesiato | (~HotblackD@gateway/tor-sasl/hotblackdesiato) |
2022-03-27 06:48:01 +0200 | lumberjack123 | (~alMalsamo@gateway/tor-sasl/almalsamo) |
2022-03-27 06:51:15 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2022-03-27 06:54:06 +0200 | pgib | (~textual@173.38.117.75) (Ping timeout: 245 seconds) |
2022-03-27 06:59:30 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 272 seconds) |
2022-03-27 07:00:57 +0200 | Guest2747 | (~Guest27@2601:281:d47f:1590::6b90) |
2022-03-27 07:09:15 +0200 | nicbk | (~nicbk@user/nicbk) (Quit: nicbk) |
2022-03-27 07:15:58 +0200 | nate1 | (~nate@98.45.167.61) (Ping timeout: 272 seconds) |
2022-03-27 07:16:34 +0200 | sloorush | (~sloorush@136.233.9.99) |
2022-03-27 07:26:55 +0200 | sloorush | (~sloorush@136.233.9.99) (Ping timeout: 256 seconds) |
2022-03-27 07:28:21 +0200 | Unicorn_Princess | (~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Remote host closed the connection) |
2022-03-27 07:29:48 +0200 | vysn | (~vysn@user/vysn) (Ping timeout: 240 seconds) |
2022-03-27 07:29:59 +0200 | Guest2747 | (~Guest27@2601:281:d47f:1590::6b90) (Quit: Client closed) |
2022-03-27 07:32:39 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 252 seconds) |
2022-03-27 07:33:30 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 07:35:29 +0200 | Everything | (~Everythin@37.115.210.35) |
2022-03-27 07:41:53 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-03-27 07:45:02 +0200 | jdm | (jesse@c-68-62-216-212.hsd1.al.comcast.net) |
2022-03-27 07:47:23 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 260 seconds) |
2022-03-27 07:48:15 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 07:49:24 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-03-27 07:50:15 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-03-27 07:51:48 +0200 | awschnap | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 07:53:54 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 07:54:28 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 07:57:30 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 07:59:13 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-03-27 08:00:16 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 08:05:37 +0200 | pnotequalnp | (~kevin@user/pnotequalnp) (Ping timeout: 240 seconds) |
2022-03-27 08:06:19 +0200 | YoungFrog | (~youngfrog@2a02:a03f:c21b:f900:d813:4914:1c90:9409) (Remote host closed the connection) |
2022-03-27 08:06:38 +0200 | YoungFrog | (~youngfrog@2a02:a03f:c21b:f900:84e3:4a12:bce1:8082) |
2022-03-27 08:09:19 +0200 | kaph | (~kaph@net-109-116-124-149.cust.vodafonedsl.it) (Ping timeout: 260 seconds) |
2022-03-27 08:11:15 +0200 | Pickchea | (~private@user/pickchea) |
2022-03-27 08:13:48 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-03-27 08:14:05 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 08:19:23 +0200 | vglfr | (~vglfr@46.96.151.207) |
2022-03-27 08:22:51 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
2022-03-27 08:23:19 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 260 seconds) |
2022-03-27 08:24:23 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 08:36:07 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 08:36:54 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 08:37:27 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 08:40:17 +0200 | leah2 | (~leah@vuxu.org) (Ping timeout: 252 seconds) |
2022-03-27 08:41:43 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-03-27 08:45:00 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-03-27 08:45:14 +0200 | lagash | (lagash@lagash.shelltalk.net) (Ping timeout: 252 seconds) |
2022-03-27 08:48:03 +0200 | lagooned | (~lagooned@108-208-149-42.lightspeed.hstntx.sbcglobal.net) |
2022-03-27 08:49:15 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 08:52:01 +0200 | mtjm | (~mutantmel@2604:a880:2:d0::208b:d001) (Remote host closed the connection) |
2022-03-27 08:53:05 +0200 | mtjm | (~mutantmel@2604:a880:2:d0::208b:d001) |
2022-03-27 08:53:40 +0200 | kaph | (~kaph@net-109-116-124-149.cust.vodafonedsl.it) |
2022-03-27 09:04:02 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2022-03-27 09:04:43 +0200 | dextaa_ | (~dextaa@user/dextaa) |
2022-03-27 09:07:50 +0200 | AlexZenon_2 | (~alzenon@94.233.240.35) |
2022-03-27 09:09:29 +0200 | AlexZenon | (~alzenon@94.233.240.35) (Ping timeout: 256 seconds) |
2022-03-27 09:10:50 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Remote host closed the connection) |
2022-03-27 09:10:57 +0200 | pacc | (~dylan@c-98-212-49-222.hsd1.il.comcast.net) |
2022-03-27 09:11:16 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 09:11:59 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 09:12:13 +0200 | vysn | (~vysn@user/vysn) |
2022-03-27 09:15:49 +0200 | Midjak | (~Midjak@82.66.147.146) |
2022-03-27 09:17:17 +0200 | pacc | (~dylan@c-98-212-49-222.hsd1.il.comcast.net) (Quit: WeeChat 3.0) |
2022-03-27 09:21:48 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2022-03-27 09:23:31 +0200 | acidjnk | (~acidjnk@pd9e0b763.dip0.t-ipconnect.de) |
2022-03-27 09:23:52 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 09:25:57 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2022-03-27 09:27:15 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 260 seconds) |
2022-03-27 09:27:53 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 09:28:58 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 272 seconds) |
2022-03-27 09:40:34 +0200 | chenqisu1 | (~chenqisu1@183.217.201.88) |
2022-03-27 09:42:36 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 240 seconds) |
2022-03-27 09:43:47 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 09:47:20 +0200 | <joel135> | do you know some unexpected way of implementing division with remainder in pure lambda calculus? |
2022-03-27 09:47:20 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:47:35 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:47:36 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:47:50 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:47:51 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:48:05 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:48:06 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:48:19 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:48:19 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:48:32 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:48:33 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:48:46 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:48:46 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:48:55 +0200 | lumberjack123 | (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
2022-03-27 09:48:59 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:49:00 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:49:13 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:49:13 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:49:26 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:49:26 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:49:39 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:49:39 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:49:53 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:49:54 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:50:08 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:50:09 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:50:23 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:50:24 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:50:28 +0200 | <joel135> | (mostly interested in the remainder part, but i figure the quotient shouldn't be much harder) |
2022-03-27 09:50:36 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:50:37 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:50:50 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:50:50 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:51:03 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:51:03 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:51:04 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-98.elisa-laajakaista.fi) |
2022-03-27 09:51:16 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:51:17 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:51:31 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:51:32 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:51:45 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:51:46 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:52:04 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:52:04 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:52:18 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:52:19 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:52:32 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:52:33 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:52:46 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:52:46 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:52:59 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:52:59 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:53:13 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:53:14 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:53:28 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:53:29 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:53:42 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:53:42 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:53:55 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:53:55 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:54:08 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:54:09 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:54:21 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:54:21 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:54:34 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:54:34 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:54:42 +0200 | <joel135> | maybe i should give mendler encoding another go |
2022-03-27 09:54:47 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:54:48 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:54:58 +0200 | <boxscape_> | % :t \f xs ys z -> foldr (uncurry f) z $ zip xs ys |
2022-03-27 09:54:58 +0200 | <yahb> | boxscape_: (a -> b1 -> b2 -> b2) -> [a] -> [b1] -> b2 -> b2 |
2022-03-27 09:55:00 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:55:01 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:55:02 +0200 | <boxscape_> | is there a function like this in hackage? |
2022-03-27 09:55:14 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:55:14 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:55:19 +0200 | deadmarshal_ | (~deadmarsh@95.38.230.121) |
2022-03-27 09:55:32 +0200 | <boxscape_> | I guess it might not cross the Fairbairn threshold |
2022-03-27 09:55:33 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:55:33 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:55:47 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:55:48 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:56:01 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:56:02 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:56:16 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:56:17 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:56:30 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:56:30 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:56:43 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:56:43 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:56:56 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:56:57 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:57:10 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:57:11 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:57:14 +0200 | gabriel_sevecek | (~gabriel@188-167-229-200.dynamic.chello.sk) |
2022-03-27 09:57:25 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:57:26 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:57:39 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:57:40 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:57:53 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:57:54 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:58:07 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:58:07 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:58:21 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:58:21 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:58:34 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:58:34 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:58:47 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:58:47 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:59:00 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:59:00 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:59:13 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:59:13 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 09:59:27 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:59:28 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:59:41 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:59:42 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 09:59:55 +0200 | deadmarshal_ | (~deadmarsh@95.38.230.121) (Ping timeout: 260 seconds) |
2022-03-27 09:59:56 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 09:59:57 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 10:00:11 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:00:12 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 10:00:26 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:00:27 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 10:00:41 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:00:41 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 10:00:54 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:00:55 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:01:16 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:01:16 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:01:29 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:01:30 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:01:42 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:01:43 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:01:56 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-03-27 10:01:57 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:01:58 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 10:02:12 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:02:13 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:02:26 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:02:27 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:02:45 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:02:45 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:03:00 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:03:01 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:03:13 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:03:13 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 10:03:27 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:03:27 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:03:39 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:03:39 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:03:52 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:03:53 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:04:06 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:04:06 +0200 | Dorkside | (~dorkside@208.190.197.222) (Read error: Connection reset by peer) |
2022-03-27 10:04:19 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:04:19 +0200 | Dorkside | (~dorkside@208.190.197.222) (Remote host closed the connection) |
2022-03-27 10:04:32 +0200 | Dorkside | (~dorkside@208.190.197.222) |
2022-03-27 10:05:39 +0200 | leah2 | (~leah@vuxu.org) |
2022-03-27 10:07:34 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 10:10:22 +0200 | aliosablack | (~chomwitt@2a02:587:dc18:da00:e2ec:eb52:4039:9bfe) |
2022-03-27 10:12:31 +0200 | <tomsmeding> | periodic reminder that ghcup is great, just updated my haskell installation on a machine I haven't touched in a while, `ghcup tui` and we roll |
2022-03-27 10:14:25 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 256 seconds) |
2022-03-27 10:15:15 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 10:19:54 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-03-27 10:20:00 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-03-27 10:21:48 +0200 | leah2 | (~leah@vuxu.org) (Ping timeout: 240 seconds) |
2022-03-27 10:24:59 +0200 | Batzy | (~quassel@user/batzy) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2022-03-27 10:27:23 +0200 | Batzy | (~quassel@user/batzy) |
2022-03-27 10:27:27 +0200 | vglfr | (~vglfr@46.96.151.207) (Ping timeout: 260 seconds) |
2022-03-27 10:34:08 +0200 | <energizer> | if a,b are types then "either a or b" is another type. sometimes people say that's "addition", i guess because the cardinalities match up or something |
2022-03-27 10:35:13 +0200 | <energizer> | but types are kinda like sets too, so isn't it more like "union"; and also types are supposedly like propositions so isn't it more like "or" |
2022-03-27 10:35:25 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 240 seconds) |
2022-03-27 10:36:31 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 10:36:46 +0200 | <energizer> | so why is it + instead of ∪ or | |
2022-03-27 10:36:48 +0200 | <abastro[m]> | Which is why ppl use the term `Tagged union` as well |
2022-03-27 10:37:25 +0200 | <abastro[m]> | Btw iirc in boolean logic, OR was using notation `+` |
2022-03-27 10:38:01 +0200 | leah2 | (~leah@vuxu.org) |
2022-03-27 10:38:25 +0200 | <energizer> | can i take two types and add them together? |
2022-03-27 10:39:29 +0200 | <tomsmeding> | energizer: what's "either Int or In" |
2022-03-27 10:39:35 +0200 | <tomsmeding> | *Int |
2022-03-27 10:39:41 +0200 | <tomsmeding> | That's Int + Int, not Int, right? |
2022-03-27 10:39:41 +0200 | <energizer> | that's just Int |
2022-03-27 10:39:50 +0200 | <tomsmeding> | Which is why it is the disjoint union, not the union |
2022-03-27 10:40:08 +0200 | <tomsmeding> | Ah, if you say that's Int, then indeed you're talking about union, but then those are not sum types |
2022-03-27 10:40:15 +0200 | <energizer> | + is disjoint union and | is regular union? |
2022-03-27 10:40:27 +0200 | <tomsmeding> | Sum types do a disjoint union, also (in imperative programming land) a tagged union |
2022-03-27 10:40:49 +0200 | <tomsmeding> | + in type theory is disjoint union, | in boolean logic is union :p |
2022-03-27 10:41:07 +0200 | <energizer> | is there a plain union in type theory? |
2022-03-27 10:41:14 +0200 | <tomsmeding> | Some languages, e.g. python and typescript, have actual union types |
2022-03-27 10:41:41 +0200 | <tomsmeding> | Not the basic type theory I know, but I wouldn't be surprised if someone found an encoding for union in TT |
2022-03-27 10:42:35 +0200 | <tomsmeding> | If union is \cup, then the cardinalities are weird though; #(a \cup b) is not really expressible in terms of #a and #b |
2022-03-27 10:42:51 +0200 | <tomsmeding> | So the "algebraic" data types analogy doesn't hold for them |
2022-03-27 10:44:01 +0200 | <tomsmeding> | (c.f. abastro[m]'s remark: in boolean logic, union (OR) is saturating addition: 1+1=1) |
2022-03-27 10:44:36 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 252 seconds) |
2022-03-27 10:44:58 +0200 | <energizer> | isnt it just #a + #b - #(a∩b) |
2022-03-27 10:45:11 +0200 | acidjnk | (~acidjnk@pd9e0b763.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2022-03-27 10:45:17 +0200 | <abastro[m]> | Yes, saturating addition |
2022-03-27 10:45:20 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 10:47:02 +0200 | <abastro[m]> | Anyway notation usage of math is quite liberal |
2022-03-27 10:47:09 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 10:48:28 +0200 | <tomsmeding> | energizer: yes indeed, but #(a \cap b) is not a really simple operation |
2022-03-27 10:49:10 +0200 | <boxscape_> | the main problem with union types AFAIK is that type inference is hard |
2022-03-27 10:49:20 +0200 | <boxscape_> | ...as with all forms of subtyping |
2022-03-27 10:49:25 +0200 | <boxscape_> | (okay maybe not literally all) |
2022-03-27 10:49:37 +0200 | <energizer> | does that refer to global type inference? |
2022-03-27 10:50:28 +0200 | <boxscape_> | I haven't actually heard the term "global type inference" before but I suspect if global and local type inference exist it's hard for both of them, I don't see a reason why they would be different here |
2022-03-27 10:51:22 +0200 | <energizer> | iirc mypy only cares about one function at a time |
2022-03-27 10:52:06 +0200 | <energizer> | tomsmeding: is #a + #b - #(a∩b) somehow a representation of saturating addition? |
2022-03-27 10:52:57 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
2022-03-27 10:53:39 +0200 | <abastro[m]> | Apparently many ppl do not care much about type inference |
2022-03-27 10:53:41 +0200 | <tomsmeding> | energizer: yes |
2022-03-27 10:53:52 +0200 | <tomsmeding> | Thing is that saturating addition of integers is easy |
2022-03-27 10:53:58 +0200 | <abastro[m]> | I've heard many ppl saying that it is better to be enforced to specify types |
2022-03-27 10:54:02 +0200 | <tomsmeding> | But saturating addition of sets is... kinda weird |
2022-03-27 10:54:10 +0200 | <boxscape_> | energizer judging by https://stackoverflow.com/questions/4304003/what-does-no-global-type-inference-mean-regarding-scala it does sound like local inference might be fine with subtyping, though I guess there probably isn't a single definition of "local" inference |
2022-03-27 10:54:17 +0200 | <tomsmeding> | You can define it, and it works, but it's not super simple to work with |
2022-03-27 10:54:52 +0200 | <abastro[m]> | Local inference is possible with subtyping but hard and also limited iirc |
2022-03-27 10:55:02 +0200 | <abastro[m]> | Got bitten a lot by that |
2022-03-27 10:55:06 +0200 | <boxscape_> | I see |
2022-03-27 10:55:56 +0200 | <tomsmeding> | Also union types are, in some sense, not really compositional: where a * b and a + b are defined in terms of a and b, a \cup b is defined in terms of a, b _and_ a \cap b |
2022-03-27 10:56:02 +0200 | <abastro[m]> | `((_.foo) compose (bar))` and type errors go broke |
2022-03-27 10:56:26 +0200 | <tomsmeding> | And type theory is otherwise very compositional |
2022-03-27 10:57:02 +0200 | <boxscape_> | tomsmeding doesn't that depend on how you define your primitives? As in, you could say union is primitive, and sum types are union + a \cap b |
2022-03-27 10:57:41 +0200 | <tomsmeding> | Of course |
2022-03-27 10:58:10 +0200 | <tomsmeding> | But disjoint union is very nice, and in fact not even primitive in TT: it's a sigma type over a boolean |
2022-03-27 10:58:20 +0200 | <boxscape_> | hm that's fair |
2022-03-27 10:58:53 +0200 | <abastro[m]> | But then more complex one is primitive |
2022-03-27 10:59:01 +0200 | <abastro[m]> | Namely, sigma and pi |
2022-03-27 10:59:04 +0200 | <boxscape_> | what is "complexity" |
2022-03-27 10:59:26 +0200 | <abastro[m]> | Idk, more symbols |
2022-03-27 10:59:35 +0200 | <abastro[m]> | You need to introduce a binding |
2022-03-27 10:59:36 +0200 | <tomsmeding> | abastro[m]: more complex maybe, but also a very small set |
2022-03-27 10:59:37 +0200 | <boxscape_> | though in any case that doesn't matter if you need sigma and pi anyway for other reasons |
2022-03-27 10:59:48 +0200 | <abastro[m]> | Well yea |
2022-03-27 11:00:33 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-03-27 11:00:35 +0200 | <boxscape_> | your compiler will be less complex overall if you have fewer primitives |
2022-03-27 11:01:27 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 256 seconds) |
2022-03-27 11:01:31 +0200 | <abastro[m]> | That was my illusion but type checking and inference of dependent languages told me otherwise |
2022-03-27 11:01:47 +0200 | <tomsmeding> | Type theory is, in basis, math |
2022-03-27 11:02:13 +0200 | <tomsmeding> | It's math chosen such that it has a nice correspondence with programming, but it's still math |
2022-03-27 11:02:22 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 11:02:31 +0200 | <boxscape_> | abastro[m] yeah I was being unclear in that - I didn't mean if you have a smaller set of primitives, I meant if you have a strict subset of primitives |
2022-03-27 11:02:43 +0200 | <tomsmeding> | Your compiler will be simpler if it only supports * and +, but then it wouldn't support dependently typed languages |
2022-03-27 11:03:21 +0200 | <tomsmeding> | Your compiler will be simpler with fewer prinitives _assuming that you must implement a dependently typed language_ |
2022-03-27 11:03:39 +0200 | <tomsmeding> | Also what boxscape_ just said lol |
2022-03-27 11:04:44 +0200 | yushyin | (NwWjaFh18p@mail.karif.server-speed.net) (Quit: WeeChat 3.4) |
2022-03-27 11:04:44 +0200 | noctuks | (pS9vLLhgiV@user/noctux) (Quit: WeeChat 3.4) |
2022-03-27 11:04:44 +0200 | sviermsung | (owJr4HCxlX@user/s4msung) (Quit: sviermsung) |
2022-03-27 11:05:37 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) |
2022-03-27 11:07:05 +0200 | noctuks | (9wxBRvrIcP@user/noctux) |
2022-03-27 11:07:06 +0200 | s4msung | (iMiZICJOVw@user/s4msung) |
2022-03-27 11:07:07 +0200 | yushyin | (klVu03SvEu@mail.karif.server-speed.net) |
2022-03-27 11:08:12 +0200 | <energizer> | found a paper that says untagged union is denoted \vee b |
2022-03-27 11:08:21 +0200 | <energizer> | s/b// |
2022-03-27 11:11:01 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 11:11:05 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 11:11:09 +0200 | <abastro[m]> | Oh, I see |
2022-03-27 11:11:32 +0200 | <abastro[m]> | Indeed strict subset is easier to implement |
2022-03-27 11:11:35 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 11:12:26 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 11:12:36 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Remote host closed the connection) |
2022-03-27 11:13:01 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 11:15:16 +0200 | <abastro[m]> | I wonder how type theory survived in programming where set theory became dominant in math |
2022-03-27 11:16:48 +0200 | <Maxdamantus> | Presumably by being computable. |
2022-03-27 11:16:53 +0200 | <Maxdamantus> | Which is important for computers. |
2022-03-27 11:16:53 +0200 | <[exa]> | +1 ^ |
2022-03-27 11:17:19 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-03-27 11:17:39 +0200 | <Maxdamantus> | "became dominant in math", it already was dominant. |
2022-03-27 11:17:58 +0200 | <Maxdamantus> | type theory arose as an alternative solution to problems in type theory. |
2022-03-27 11:18:19 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 11:18:35 +0200 | <Maxdamantus> | the non-alternative solution was ZFC, which is still set theory. |
2022-03-27 11:18:57 +0200 | <tomsmeding> | Disjoint union is also much more useful in programming than union I think: think of tree structures. Almost all of programming is dealing with tree structures, and trees are necessarily inductive disjoint unions, not set-theory unions |
2022-03-27 11:19:14 +0200 | <Maxdamantus> | (in particular, problems raised by Bertrand Russell in the early 1900s. he was the one that started "type theory") |
2022-03-27 11:19:33 +0200 | <abastro[m]> | <del>Type theory to solve problems in type theory</del> |
2022-03-27 11:19:46 +0200 | <Maxdamantus> | er, meant to say "problems in set theory" |
2022-03-27 11:20:01 +0200 | <energizer> | tomsmeding: ehh hammer/nail |
2022-03-27 11:20:03 +0200 | <abastro[m]> | sorry.. |
2022-03-27 11:20:19 +0200 | <abastro[m]> | Sometimes I be that pedant |
2022-03-27 11:21:15 +0200 | <Maxdamantus> | In programming, using "sets" is something extra. Related to what tomsmeding is saying, in programming you would normally go for an array/list as the computationally simple thing. |
2022-03-27 11:21:37 +0200 | <Maxdamantus> | It's only in special cases that you actually want set behaviour, where you want your members to be deduplicated. |
2022-03-27 11:22:36 +0200 | <Maxdamantus> | (naturally in Haskell, you can have a list of values of any type, but if you want a set, you need to demand a constraint, `Ord a`) |
2022-03-27 11:22:51 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-03-27 11:23:11 +0200 | <energizer> | what does it have to do with ordering? |
2022-03-27 11:23:20 +0200 | <boxscape_> | technically Eq a is enough |
2022-03-27 11:23:25 +0200 | <boxscape_> | but Ord a allows you to make it more efficient |
2022-03-27 11:23:43 +0200 | ProfSimm | (~ProfSimm@87.227.196.109) |
2022-03-27 11:24:05 +0200 | <abastro[m]> | So Russel was not great enough in his reputation to turn entire mathematics towards TT |
2022-03-27 11:24:10 +0200 | <boxscape_> | (easier to search for duplicate values if you can make a binary search tree) |
2022-03-27 11:24:11 +0200 | <Maxdamantus> | Sure, there could be different sorts of constraints, but you're always going to have an extra constraint that is not required for lists. |
2022-03-27 11:24:47 +0200 | <energizer> | lists are in an order, which is odd |
2022-03-27 11:24:52 +0200 | <Maxdamantus> | abastro[m]: well, I don't think Russell is the only one involved in the push for TT. |
2022-03-27 11:25:07 +0200 | <[exa]> | why would entire mathematics need type theory? |
2022-03-27 11:25:10 +0200 | <abastro[m]> | (Java has hashCode for every classes - hm) |
2022-03-27 11:25:39 +0200 | <[exa]> | that would be just grossly impractical |
2022-03-27 11:25:48 +0200 | <abastro[m]> | Precision |
2022-03-27 11:25:54 +0200 | <Maxdamantus> | Because it's computable. |
2022-03-27 11:26:01 +0200 | <abastro[m]> | That as well |
2022-03-27 11:26:09 +0200 | <tomsmeding> | energizer: reminder that programming existed before type theory got any significant influence there :p |
2022-03-27 11:26:14 +0200 | <[exa]> | good luck expressing basic calculus with that :D |
2022-03-27 11:26:19 +0200 | <Maxdamantus> | You don't have to rely as much on people carefully reviewing proofs. |
2022-03-27 11:26:29 +0200 | <abastro[m]> | (I think you could still deal with uncomputable objects in TT but anyway) |
2022-03-27 11:26:51 +0200 | <abastro[m]> | Idk, basic calculus does not seem that hard to express |
2022-03-27 11:26:56 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 252 seconds) |
2022-03-27 11:27:22 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 11:27:23 +0200 | <abastro[m]> | Possibly you could use concepts from manifolds |
2022-03-27 11:27:23 +0200 | <[exa]> | abastro[m]: even the most basic theorems there require reaching to infinity and assuming whatever happens there |
2022-03-27 11:27:28 +0200 | <abastro[m]> | Manifold analysis* |
2022-03-27 11:27:30 +0200 | <tomsmeding> | I mean, the `union` keyword in C is a bloody disjoint union |
2022-03-27 11:27:47 +0200 | <tomsmeding> | It just misses a tag to be a proper sum type |
2022-03-27 11:28:13 +0200 | <abastro[m]> | Reaching to infinity? Im quite sure it is doable |
2022-03-27 11:28:21 +0200 | <energizer> | forall (e : real), exists (d : real), forall x ... this isnt hard |
2022-03-27 11:28:30 +0200 | <Maxdamantus> | tomsmeding: `union` in C would usually be considered a non-disjoint union. |
2022-03-27 11:28:33 +0200 | <abastro[m]> | Ye |
2022-03-27 11:28:36 +0200 | <Maxdamantus> | tomsmeding: since it doesn't include a tag. |
2022-03-27 11:28:41 +0200 | chenqisu1 | (~chenqisu1@183.217.201.88) (Quit: Leaving) |
2022-03-27 11:28:46 +0200 | <abastro[m]> | Problem is with topology, rather. |
2022-03-27 11:29:00 +0200 | <Maxdamantus> | tomsmeding: `union { int a; int b; }` is not very useful. |
2022-03-27 11:29:03 +0200 | <[exa]> | abastro[m]: what's the type of a real that is a product of 2 such limits? |
2022-03-27 11:29:18 +0200 | <[exa]> | (-> can you then type reals?) |
2022-03-27 11:29:24 +0200 | <abastro[m]> | You have "extended reals" |
2022-03-27 11:29:31 +0200 | <abastro[m]> | Which includes infinity |
2022-03-27 11:29:37 +0200 | <tomsmeding> | Hm, good point, I messed up there |
2022-03-27 11:29:58 +0200 | <abastro[m]> | Instead compromises product and such |
2022-03-27 11:30:43 +0200 | <abastro[m]> | IIRC quite huge parts of math is formalized in Coq and Lean |
2022-03-27 11:30:45 +0200 | <[exa]> | abastro[m]: I expect you will find many surprising truths about the computability of real numbers |
2022-03-27 11:31:32 +0200 | <abastro[m]> | I mean, you can either represent computable real numbers or deal with uncomputables |
2022-03-27 11:31:41 +0200 | <abastro[m]> | Which is quite doable actually |
2022-03-27 11:31:51 +0200 | <abastro[m]> | Just restrict evaluating the term |
2022-03-27 11:32:04 +0200 | DNH | (~DNH@2a09:bac0:48::82b:7a48) |
2022-03-27 11:33:29 +0200 | <[exa]> | that sounds much like "let's take rational numbers and pretend they are real" |
2022-03-27 11:33:48 +0200 | <joel135> | does someone have a copy of "mendler 1987 recursive types and type constraints in second-order lambda calculus" ? |
2022-03-27 11:34:43 +0200 | <[exa]> | joel135: you mean this? https://core.ac.uk/download/pdf/81989173.pdf |
2022-03-27 11:34:44 +0200 | <abastro[m]> | Well you do know how real number is defined from quotients right? |
2022-03-27 11:35:03 +0200 | <abastro[m]> | You can do that and sacrifice a bit of compitability |
2022-03-27 11:35:16 +0200 | <[exa]> | wait what |
2022-03-27 11:35:49 +0200 | <boxscape_> | you can define computable real numbers in terms of limits of rational numbers, i.e. Cauchy sequences |
2022-03-27 11:35:55 +0200 | <joel135> | it is not the same article but maybe it will do :) |
2022-03-27 11:36:01 +0200 | <abastro[m]> | Acrually I found this |
2022-03-27 11:36:03 +0200 | <abastro[m]> | https://www.cs.umd.edu/~rrand/vqc/Real.html |
2022-03-27 11:36:21 +0200 | <abastro[m]> | They found that cauchy seq is not good enough, so gone for axiomatic formulation |
2022-03-27 11:37:02 +0200 | <boxscape_> | fair enough |
2022-03-27 11:37:23 +0200 | zer0bitz_ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) |
2022-03-27 11:37:26 +0200 | <abastro[m]> | Yea I mean they could use cauchy seq ofc |
2022-03-27 11:37:37 +0200 | <abastro[m]> | But it was slightly cumbersome they say |
2022-03-27 11:37:49 +0200 | <boxscape_> | riht |
2022-03-27 11:37:57 +0200 | <boxscape_> | s/h/gh/ |
2022-03-27 11:38:17 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 240 seconds) |
2022-03-27 11:38:30 +0200 | <energizer> | in the big theorem provers they use much more abstract math that has undergraduate-level material as a very very very special case |
2022-03-27 11:38:33 +0200 | <abastro[m]> | Can I ask what is s/h/gh |
2022-03-27 11:38:52 +0200 | <energizer> | it means substitute, in place of h, gh |
2022-03-27 11:39:05 +0200 | <abastro[m]> | Oh, interesting |
2022-03-27 11:39:07 +0200 | <energizer> | because boxscape_ did a typo |
2022-03-27 11:39:19 +0200 | <abastro[m]> | I learned a new chat expression |
2022-03-27 11:39:23 +0200 | <energizer> | it's the syntax from sed |
2022-03-27 11:39:38 +0200 | <boxscape_> | fun fact discord even supports it |
2022-03-27 11:39:45 +0200 | <boxscape_> | i.e. will actually edit your last message |
2022-03-27 11:40:02 +0200 | <joel135> | you can try this in your terminal "echo foobar| sed 's/foo/chocolate /'" |
2022-03-27 11:40:10 +0200 | <abastro[m]> | Oh wow |
2022-03-27 11:40:44 +0200 | <abastro[m]> | I hope it's not regex |
2022-03-27 11:41:06 +0200 | <boxscape_> | I haven't seen people use regex in IRC for that |
2022-03-27 11:41:10 +0200 | <boxscape_> | but they sure do in sed |
2022-03-27 11:41:20 +0200 | <abastro[m]> | Oh nooooooo |
2022-03-27 11:41:42 +0200 | <[exa]> | luckily people here interpret regex flawlessly right? :D |
2022-03-27 11:41:56 +0200 | <boxscape_> | of course |
2022-03-27 11:42:03 +0200 | <[exa]> | abastro[m]: you're invited to try proving the bolzano-weierstrass theorem on that structure |
2022-03-27 11:42:54 +0200 | <abastro[m]> | I don't think B-W would be hard even |
2022-03-27 11:42:57 +0200 | <joel135> | see also http://www.paultaylor.eu/ASD/analysis |
2022-03-27 11:43:20 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2022-03-27 11:44:12 +0200 | <ProfSimm> | dsal: thanks for the link. It's odd Haskell overlooked this problem when making their syntax |
2022-03-27 11:44:36 +0200 | <abastro[m]> | Okay it does take some space in coq stdlib |
2022-03-27 11:45:35 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) |
2022-03-27 11:45:43 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 11:46:43 +0200 | <Maxdamantus> | I usually treat my s/// lines as actual regex. |
2022-03-27 11:47:00 +0200 | <Maxdamantus> | eg, I'll often use \< and \> as word delimeters. |
2022-03-27 11:47:15 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 260 seconds) |
2022-03-27 11:47:58 +0200 | <abastro[m]> | https://github.com/coq/coq/blob/master/theories/Reals/Rtopology.v |
2022-03-27 11:48:09 +0200 | <Maxdamantus> | $ grep 's/.*\(\\<\|\\>\)' ~/irclogs/Libera/#haskell.log |
2022-03-27 11:48:09 +0200 | <Maxdamantus> | 17:19 < Maxdamantus> s/\<their\>/they're/ |
2022-03-27 11:48:10 +0200 | zer0bitz__ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) |
2022-03-27 11:48:14 +0200 | <Maxdamantus> | Maybe I'm the only one. |
2022-03-27 11:49:07 +0200 | zer0bitz_ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 260 seconds) |
2022-03-27 11:49:16 +0200 | <boxscape_> | you even bother to escape the <>s |
2022-03-27 11:49:44 +0200 | <Maxdamantus> | Of course, otherwise it would require a literal less than and greater than sign. |
2022-03-27 11:50:16 +0200 | <Maxdamantus> | s/\<a //; s/\<sign\>/signs/ |
2022-03-27 11:50:30 +0200 | _ht | (~quassel@231-169-21-31.ftth.glasoperator.nl) |
2022-03-27 11:50:40 +0200 | <boxscape_> | I usually set up my tools to make me escape literals when I want to search for them |
2022-03-27 11:50:42 +0200 | deadmarshal_ | (~deadmarsh@95.38.230.121) |
2022-03-27 11:50:58 +0200 | <Maxdamantus> | Wait, you mean in my grep command? |
2022-03-27 11:51:16 +0200 | <boxscape_> | no |
2022-03-27 11:51:33 +0200 | <boxscape_> | but I would just assume other people's brains are set up the way I set up my tools when convenient |
2022-03-27 11:51:37 +0200 | <boxscape_> | to save myself some characters |
2022-03-27 11:51:55 +0200 | <Maxdamantus> | `s/<a//` and `s/\<a//` mean something quite different in sed. |
2022-03-27 11:51:55 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 260 seconds) |
2022-03-27 11:52:06 +0200 | <Maxdamantus> | \< is a leading word delimeter. |
2022-03-27 11:52:10 +0200 | <Maxdamantus> | < is just a less than sign. |
2022-03-27 11:52:28 +0200 | <boxscape_> | right I don't know that you can change it in sed but e.g. in vim I have it the other way around |
2022-03-27 11:52:54 +0200 | <Maxdamantus> | Oh, so you've selected ereg or PCRE or something. |
2022-03-27 11:53:16 +0200 | <boxscape_> | alas, there's no setting for it, it requires a plugin |
2022-03-27 11:53:41 +0200 | <Maxdamantus> | Personally, I find it annoying that some tools (eg, `less`) use different syntaxes. |
2022-03-27 11:53:58 +0200 | <boxscape_> | understandable |
2022-03-27 11:54:26 +0200 | <abastro[m]> | Price to pay with composability |
2022-03-27 11:55:14 +0200 | <Maxdamantus> | imo the breg syntax is more logical anyway. |
2022-03-27 11:56:07 +0200 | <abastro[m]> | Hm I guess I am weird for not using these utilities |
2022-03-27 11:56:43 +0200 | <Maxdamantus> | I've always suspected that if people prefer the symbols to be treated as special by default (ie, without requiring a backslash), it's just because they initially used regexes that did that, eg, ones in popular programming languages like JS. |
2022-03-27 11:57:30 +0200 | DNH | (~DNH@2a09:bac0:48::82b:7a48) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-03-27 11:57:41 +0200 | <Maxdamantus> | I would even like it if breg went further and made it so '.' matches a literal dot while '\.' matches any byte. similarly, '*' should match an asterisk. |
2022-03-27 11:58:15 +0200 | <Maxdamantus> | but too late for that, and those are the only exceptions you need to remember afaict. |
2022-03-27 11:58:51 +0200 | <abastro[m]> | Well I don't see difference of the characters by rendering |
2022-03-27 11:59:10 +0200 | <boxscape_> | does matrix remove backslashes? |
2022-03-27 11:59:24 +0200 | <boxscape_> | \. . <- this is two dots without a backslash? |
2022-03-27 11:59:24 +0200 | <Maxdamantus> | Oh, there's also ^ $ [] |
2022-03-27 11:59:39 +0200 | <Maxdamantus> | 22:59:24 < boxscape_> \. . <- this is two dots without a backslash? |
2022-03-27 11:59:50 +0200 | <Maxdamantus> | Oh, nvm. I'm not on Matrix. |
2022-03-27 12:00:07 +0200 | <Maxdamantus> | (I thought you were wondering if your Matrix connection did something) |
2022-03-27 12:00:23 +0200 | <abastro[m]> | Yes, matrix removes backslash |
2022-03-27 12:00:28 +0200 | <boxscape_> | interesting |
2022-03-27 12:00:46 +0200 | <abastro[m]> | Can't blame matrix, right |
2022-03-27 12:03:35 +0200 | dsrt^ | (~dsrt@96-91-136-49-static.hfc.comcastbusiness.net) |
2022-03-27 12:05:35 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds) |
2022-03-27 12:08:00 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-03-27 12:09:42 +0200 | <[exa]> | is there some nice haskell library one could use for syntax highlighting? (i.e., it tells me some meta information about what each piece of a given source code string is, and has support for at least some languages so that I don't need to write the definitions myself) |
2022-03-27 12:10:02 +0200 | DNH | (~DNH@8.43.122.72) |
2022-03-27 12:12:50 +0200 | bcoppens_ | bcoppens |
2022-03-27 12:13:59 +0200 | <[exa]> | whew, there's skylighting |
2022-03-27 12:16:39 +0200 | rustacean | (~quassel@117.254.34.170) |
2022-03-27 12:16:48 +0200 | razetime | (~quassel@117.254.34.170) (Ping timeout: 272 seconds) |
2022-03-27 12:18:25 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2022-03-27 12:19:28 +0200 | califax | (~califax@user/califx) |
2022-03-27 12:21:06 +0200 | dsrt^ | (~dsrt@96-91-136-49-static.hfc.comcastbusiness.net) (Remote host closed the connection) |
2022-03-27 12:21:31 +0200 | dsrt^ | (~dsrt@96-91-136-49-static.hfc.comcastbusiness.net) |
2022-03-27 12:21:37 +0200 | dsrt^ | (~dsrt@96-91-136-49-static.hfc.comcastbusiness.net) (Remote host closed the connection) |
2022-03-27 12:22:32 +0200 | <Franciman> | [exa]: there are also tree-sitter bindings |
2022-03-27 12:23:26 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-03-27 12:26:36 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
2022-03-27 12:27:51 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
2022-03-27 12:27:52 +0200 | <sshine> | [exa], I'd go with tree-sitter just because it seems like a great project. |
2022-03-27 12:31:18 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 252 seconds) |
2022-03-27 12:31:20 +0200 | <[exa]> | hm yeah that looks cool |
2022-03-27 12:31:35 +0200 | <[exa]> | is it somehow easily accessible from hackage? |
2022-03-27 12:32:35 +0200 | <sshine> | except for the tree-sitter package saying "We strongly recommend against depending on this library at this time", hmm... ;) |
2022-03-27 12:32:47 +0200 | <sshine> | and hasn't been updated in two years. |
2022-03-27 12:33:12 +0200 | xkuru | (~xkuru@user/xkuru) |
2022-03-27 12:33:20 +0200 | <sshine> | it feels like a group of people had a hope two years ago, but abandoned it. |
2022-03-27 12:33:45 +0200 | <sshine> | where/how do you plan to display syntax-highlighted code? |
2022-03-27 12:34:52 +0200 | <sshine> | my guess is that most syntax-highlighting happens in javascript nowadays. |
2022-03-27 12:34:55 +0200 | <[exa]> | I'm not really after syntax highlighting, just trying to get a decent set of code tokenizers for free |
2022-03-27 12:35:00 +0200 | <sshine> | ah! |
2022-03-27 12:35:16 +0200 | <[exa]> | (related to a problem that I was trying to solve here repeatedly several times already, haha) |
2022-03-27 12:35:31 +0200 | <sshine> | ah, didn't catch the general problem. |
2022-03-27 12:35:46 +0200 | <[exa]> | technically I'm just trying to cut the code (and possibly other stuff) into separate tokens and whitespace |
2022-03-27 12:36:13 +0200 | <sshine> | is it a variable set of syntaxes you want to tokenize? |
2022-03-27 12:36:32 +0200 | <sshine> | it's possible that writing your own crude tokenizers is cheap if you don't need the syntax trees. |
2022-03-27 12:37:31 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2022-03-27 12:38:26 +0200 | <sshine> | I like the approach of tree-sitter because it tries to solve a problem across languages and provide FFI, so there's one place to put a parser, rather than to write a parser in each language for each language. |
2022-03-27 12:38:48 +0200 | <sshine> | I'm surprised the tree-sitter package isn't in use. |
2022-03-27 12:39:05 +0200 | <sshine> | it might be, and the warning is just a scare tactic. ;) |
2022-03-27 12:39:13 +0200 | <abastro[m]> | Wouldn't writing own tokenizer be quite a burden |
2022-03-27 12:39:31 +0200 | <[exa]> | the higher-level goal is that I have a nice diff&patch&diff3 tool here that is able to reasonably merge diffs with messed up whitespace and tokenization (think an effortless git merge of source formatted by hindent into source formatted by ormolu), and I'm struggling to get a generic way of parsing many interesting text formats easily (ranging from .txt to markdown, latex, CSVs all the way to normal |
2022-03-27 12:39:37 +0200 | <[exa]> | programming) |
2022-03-27 12:39:54 +0200 | <sshine> | also, eh, the tree-sitter package is littered with 'Ptr' types... seems very shallowly embedded. |
2022-03-27 12:41:03 +0200 | <[exa]> | I was trying to come up with some kinda user-specifiable regex tokenizer but it's not as easy as one would expect, notably given the opinions hardcoded in current regex libraries |
2022-03-27 12:41:52 +0200 | <sshine> | so... a whitespace remover that doesn't break programs for arbitrary syntaxes? |
2022-03-27 12:41:56 +0200 | <[exa]> | then I thought it would be nice to have a runtime lexer library, literally flex that you can load directly into haskell |
2022-03-27 12:42:16 +0200 | <[exa]> | and today I woke up remembering about them syntax highlighters |
2022-03-27 12:42:56 +0200 | <[exa]> | unfortunately apparently this is okay for syntax highlighters: tokenize ... "int a = 5;" ==> [[(DataTypeTok,"int"),(NormalTok," a "),(OperatorTok,"="), ...] |
2022-03-27 12:43:04 +0200 | <sshine> | so... I played around a lot with syntax highlighting in gedit and vim many years ago, and I remember that most syntax-highlighting libraries do things with regex and simple state machines, not lexing. |
2022-03-27 12:43:08 +0200 | <[exa]> | so yeah the search continues! |
2022-03-27 12:45:25 +0200 | <[exa]> | I mostly wanted to avoid problems from e.g. not recognizing the spaces in strings as actual content, and recognizing "actually required" spacing like the haskell "function application space" |
2022-03-27 12:47:16 +0200 | <[exa]> | like, I guess most people would probably do with a simple C-like tokenizer, but that's a highly simplifying assumption (similar to the assumption of current difftools, "code is just lines") |
2022-03-27 12:48:04 +0200 | <[exa]> | actually would it be possible to use vim as a library for this? |
2022-03-27 12:51:43 +0200 | <[exa]> | tree-sitter has no distinction for whitespace either I see :( |
2022-03-27 12:52:06 +0200 | <sshine> | sounds like it wouldn't be able to construct syntax tree for whitespace-sensitive languages then... |
2022-03-27 12:52:36 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Ping timeout: 240 seconds) |
2022-03-27 12:52:54 +0200 | <[exa]> | it does (it can do python) but the whitespace is marked very implicitly |
2022-03-27 12:53:23 +0200 | <[exa]> | "1 + 2" seems to parse into: operator expression "1 + 2" that contains left operand "1" and right operand "2" |
2022-03-27 12:54:07 +0200 | <sshine> | ah, and you want whitespace tokens. |
2022-03-27 12:54:13 +0200 | <[exa]> | the " + " in the middle can be kinda deduced but man, is the whitespace significant? |
2022-03-27 12:54:22 +0200 | <[exa]> | (is it even whitespace there?) |
2022-03-27 12:54:38 +0200 | <[exa]> | ok nvm as I said, The Search Continues! :] |
2022-03-27 12:55:56 +0200 | <sshine> | any interest in adding a reference to #haskell-beginners in #haskell's topic again? it was removed some years ago because the channel's topic was consistently used for advertising for a particular book, I believe. but it isn't any more. |
2022-03-27 12:58:40 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 12:59:09 +0200 | <abastro[m]> | Used for advertising?? |
2022-03-27 13:00:32 +0200 | eotdlt^ | (~eotdlt@96-91-136-49-static.hfc.comcastbusiness.net) |
2022-03-27 13:00:48 +0200 | <[exa]> | sshine: I thought it is here mainly as a spillover for "ok let's move this to -beginners" for longer conversations here |
2022-03-27 13:00:56 +0200 | <sshine> | so on freenode, I think #haskell-beginners was registered by bitemyapp, and he put a link to buy his book in the topic. I remember the day when the reference to the channel was removed because it seemed partisan, or something. |
2022-03-27 13:01:33 +0200 | <sshine> | [exa], it is here for whatever :) I see some pretty advanced stuff going on in #haskell-beginners, since it's mostly a self-assessment thing whether you're a beginner. |
2022-03-27 13:02:09 +0200 | <sshine> | [exa], but I think the one thing that the channel does is let people ask how to get the nth element of a list, because the name implies all questions are allowed. |
2022-03-27 13:02:44 +0200 | <sshine> | [exa], nobody would frown at such questions here, but psychology, meh. :) |
2022-03-27 13:02:54 +0200 | <[exa]> | yeah |
2022-03-27 13:03:07 +0200 | <[exa]> | like, there's still plenty of space in the topic right? |
2022-03-27 13:03:08 +0200 | <sshine> | the reference used to be there |
2022-03-27 13:06:22 +0200 | AlexZenon | (~alzenon@94.233.240.35) |
2022-03-27 13:08:03 +0200 | AlexZenon_2 | (~alzenon@94.233.240.35) (Ping timeout: 256 seconds) |
2022-03-27 13:08:42 +0200 | acidjnk | (~acidjnk@p200300d0c7049f825551b1368b4030e6.dip0.t-ipconnect.de) |
2022-03-27 13:13:09 +0200 | benin | (~benin@183.82.24.110) (Quit: The Lounge - https://thelounge.chat) |
2022-03-27 13:22:02 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2022-03-27 13:24:03 +0200 | ProfSimm | (~ProfSimm@87.227.196.109) (Remote host closed the connection) |
2022-03-27 13:25:19 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) |
2022-03-27 13:30:12 +0200 | <abastro[m]> | Sometimes `!! n` is useful tho |
2022-03-27 13:36:27 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 260 seconds) |
2022-03-27 13:39:00 +0200 | <sm> | a good article on [Infinite] Category Theory: https://news.ycombinator.com/item?id=30809385 |
2022-03-27 13:40:50 +0200 | DNH | (~DNH@8.43.122.72) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2022-03-27 13:42:35 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
2022-03-27 13:42:48 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Ping timeout: 252 seconds) |
2022-03-27 13:43:13 +0200 | <sm> | AFAIK #haskell-beginners never managed to separate itself from #haskell - there was no real difference in content - so it just created fragmentation. The concept seems good but I think to succeed it would need a clear scope different from #haskell's and some strong leadership/curation. |
2022-03-27 13:43:49 +0200 | <sm> | (I haven't been hanging out there, so if things have changed let us know) |
2022-03-27 13:44:30 +0200 | acidjnk | (~acidjnk@p200300d0c7049f825551b1368b4030e6.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2022-03-27 13:45:17 +0200 | ProfSimm | (~ProfSimm@87.227.196.109) |
2022-03-27 13:45:36 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2022-03-27 13:46:23 +0200 | <DigitalKiwi> | that's the great part about #haskell is you never know if it's a beginner or advanced phd thesis level question you're going to get sniped by |
2022-03-27 13:47:06 +0200 | AlexNoo__ | AlexNoo |
2022-03-27 13:47:18 +0200 | <hpc> | yeah, i like having everything in one place |
2022-03-27 13:47:30 +0200 | <hpc> | you're getting the whole community that way too |
2022-03-27 13:47:56 +0200 | <DigitalKiwi> | and then you never have to be like "is this a beginner question or not" |
2022-03-27 13:48:10 +0200 | <DigitalKiwi> | and you don't have to move lol |
2022-03-27 13:48:23 +0200 | <hpc> | and more people answer questions |
2022-03-27 13:48:42 +0200 | <hpc> | sometimes the best answers come from the people who don't normally answer "beginner questions" |
2022-03-27 13:49:03 +0200 | <hpc> | because the question might accidentally touch on some really neat more advanced concept |
2022-03-27 13:49:35 +0200 | <sm> | I often wished for a channel more... focussed on my needs as a haskell learner/new practitioner. Trouble is there's a wide variety of haskellers and typs of "beginner" |
2022-03-27 13:49:59 +0200 | <DigitalKiwi> | and a lot of times something's out of left field or something like the answerer might have some knowledge about the topic but be beginner in haskell |
2022-03-27 13:50:50 +0200 | <sm> | is someone wanting to chat about category theory a beginner ? in a sense, yes |
2022-03-27 13:52:02 +0200 | <DigitalKiwi> | sm: you have to make #haskell the channel you want! what i mean is you have to ask questions. learning by osmosis isn't so good here. i've tried lol. i think that's probably partly because of the wide variety of topics that everyone asks. if you try to learn from their questions you will get lost |
2022-03-27 13:52:45 +0200 | <sm> | maybe several beginner channels could work |
2022-03-27 13:52:58 +0200 | <sm> | but, that requires organisation |
2022-03-27 13:54:02 +0200 | <sm> | and really it would require chasing beginners out of here, which won't happen |
2022-03-27 13:54:25 +0200 | <DigitalKiwi> | don't the scary phd questions do that enough ;D |
2022-03-27 13:55:17 +0200 | <sm> | apparently not :) |
2022-03-27 13:57:18 +0200 | sm | thinks a better next step would be a clearer overview/roadmap to existing channels |
2022-03-27 13:57:51 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) |
2022-03-27 13:58:44 +0200 | <sm> | that would help folks wanting a more focussed chat find the right place |
2022-03-27 14:00:41 +0200 | zer0bitz__ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 272 seconds) |
2022-03-27 14:02:10 +0200 | <sm> | in matrix, the #haskell-space:matrix.org helps. In IRC I expect there's a wiki page, but out of date |
2022-03-27 14:10:38 +0200 | <sm> | some current matrix "members" counts, for what they're worth: #haskell:libera.chat 2487, #haskell:matrix.org 1791, #haskell-space:matrix.org 255 |
2022-03-27 14:15:02 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2022-03-27 14:16:04 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2022-03-27 14:23:37 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 240 seconds) |
2022-03-27 14:23:58 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-03-27 14:24:15 +0200 | rustacean | razetime |
2022-03-27 14:25:07 +0200 | razetime | (~quassel@117.254.34.170) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2022-03-27 14:25:22 +0200 | razetime | (~quassel@117.254.34.170) |
2022-03-27 14:26:30 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) |
2022-03-27 14:30:08 +0200 | zer0bitz_ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) |
2022-03-27 14:32:56 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 260 seconds) |
2022-03-27 14:33:01 +0200 | zer0bitz__ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) |
2022-03-27 14:34:11 +0200 | Digit | (~user@user/digit) (Ping timeout: 256 seconds) |
2022-03-27 14:36:46 +0200 | zer0bitz_ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 272 seconds) |
2022-03-27 14:36:48 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2022-03-27 14:37:10 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 14:37:42 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 14:38:39 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2022-03-27 14:40:04 +0200 | cdman | (~dcm@user/dmc/x-4369397) (Quit: Leaving) |
2022-03-27 14:42:27 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-03-27 14:49:59 +0200 | razetime | (~quassel@117.254.34.170) (Read error: Connection reset by peer) |
2022-03-27 14:50:33 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) |
2022-03-27 14:52:16 +0200 | Digit | (~user@user/digit) |
2022-03-27 14:52:36 +0200 | zer0bitz__ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 272 seconds) |
2022-03-27 14:52:38 +0200 | CiaoSen | (~Jura@p200300c95735b0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2022-03-27 14:52:39 +0200 | joo-_ | (~joo-_@fsf/member/joo--) (Ping timeout: 252 seconds) |
2022-03-27 14:53:23 +0200 | CATS | (apic@brezn3.muc.ccc.de) |
2022-03-27 14:54:25 +0200 | joo-_ | (~joo-_@87-49-146-72-mobile.dk.customer.tdc.net) |
2022-03-27 14:54:25 +0200 | joo-_ | (~joo-_@87-49-146-72-mobile.dk.customer.tdc.net) (Changing host) |
2022-03-27 14:54:25 +0200 | joo-_ | (~joo-_@fsf/member/joo--) |
2022-03-27 14:58:09 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds) |
2022-03-27 15:05:55 +0200 | razetime | (~quassel@117.254.34.170) |
2022-03-27 15:09:48 +0200 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
2022-03-27 15:11:26 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 15:13:22 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-03-27 15:16:10 +0200 | Everything | (~Everythin@37.115.210.35) (Quit: leaving) |
2022-03-27 15:19:00 +0200 | joo-_ | (~joo-_@fsf/member/joo--) (Ping timeout: 240 seconds) |
2022-03-27 15:20:56 +0200 | joo-_ | (~joo-_@87-49-146-56-mobile.dk.customer.tdc.net) |
2022-03-27 15:20:56 +0200 | joo-_ | (~joo-_@87-49-146-56-mobile.dk.customer.tdc.net) (Changing host) |
2022-03-27 15:20:56 +0200 | joo-_ | (~joo-_@fsf/member/joo--) |
2022-03-27 15:21:46 +0200 | hololeap | (~hololeap@user/hololeap) (Remote host closed the connection) |
2022-03-27 15:23:14 +0200 | hololeap | (~hololeap@user/hololeap) |
2022-03-27 15:34:22 +0200 | zer0bitz_ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) |
2022-03-27 15:35:55 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 260 seconds) |
2022-03-27 15:43:08 +0200 | cdman | (~dcm@user/dmc/x-4369397) |
2022-03-27 15:54:47 +0200 | DNH | (~DNH@8.43.122.72) |
2022-03-27 16:01:06 +0200 | mikoto-chan | (~mikoto-ch@213.177.151.239) |
2022-03-27 16:11:05 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 256 seconds) |
2022-03-27 16:16:03 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-03-27 16:16:14 +0200 | CiaoSen | (~Jura@p200300c95735b0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2022-03-27 16:18:57 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2022-03-27 16:23:50 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) |
2022-03-27 16:38:43 +0200 | <janus> | sm: i think lower volume channels like #haskell-in-depth may be better for beginners, since you'd only get one answer |
2022-03-27 16:39:33 +0200 | <[exa]> | b...b...but |
2022-03-27 16:39:38 +0200 | <[exa]> | answer polymorphism! |
2022-03-27 16:47:49 +0200 | <abastro[m]> | Ad-hoc polymorphic answers? |
2022-03-27 16:50:34 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-03-27 16:53:25 +0200 | DNH | (~DNH@8.43.122.72) (Ping timeout: 240 seconds) |
2022-03-27 16:54:17 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-03-27 16:57:00 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 240 seconds) |
2022-03-27 17:04:57 +0200 | AlexZenon_2 | (~alzenon@94.233.240.35) |
2022-03-27 17:06:37 +0200 | AlexZenon | (~alzenon@94.233.240.35) (Ping timeout: 256 seconds) |
2022-03-27 17:10:15 +0200 | DigitalKiwi | (~kiwi@2604:a880:400:d0::12fc:5001) (Quit: quite.) |
2022-03-27 17:12:55 +0200 | <dsal> | ProfSimm: it's odd that you think it was overlooked and not a conscious decision. |
2022-03-27 17:13:39 +0200 | cdman | (~dcm@user/dmc/x-4369397) (Quit: Leaving) |
2022-03-27 17:18:18 +0200 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2022-03-27 17:20:28 +0200 | <ProfSimm> | dsal: I'm writing a language which has very similar application chain to haskell's, so I have the same problem with unary minus |
2022-03-27 17:20:41 +0200 | <ProfSimm> | dsal: and frankly it's making me rethink my entire life. |
2022-03-27 17:20:54 +0200 | <ProfSimm> | dsal: but that's just me being perfectionist. |
2022-03-27 17:20:59 +0200 | <geekosaur> | unary minus has always been a problem |
2022-03-27 17:21:09 +0200 | <ProfSimm> | dsal: but this is why I wonder about Haskell |
2022-03-27 17:21:17 +0200 | <geekosaur> | different languages have different solutions, and they all have weird pain points |
2022-03-27 17:21:19 +0200 | <abastro[m]> | Whh |
2022-03-27 17:21:33 +0200 | <dsal> | It depends on what you consider perfect. Special cases are blemishes. |
2022-03-27 17:21:48 +0200 | <ProfSimm> | geekosaur: unary minus is not a problem when you have no application chain like Haskell I think. |
2022-03-27 17:21:49 +0200 | <geekosaur> | makes me wish everyone had gone with the solutionof just choosing a different operator character (at least one uses ~ instead of -) |
2022-03-27 17:21:57 +0200 | <ProfSimm> | geekosaur: for example in most language you need () around params, so |
2022-03-27 17:22:02 +0200 | <ProfSimm> | foo (-5) is not an issue |
2022-03-27 17:22:14 +0200 | <ProfSimm> | In haskell though foo -5 vs foo - 5 is a problem |
2022-03-27 17:22:42 +0200 | <geekosaur> | it makesit more obvious, but there are still weird corner cases, they're just less common in many languages |
2022-03-27 17:22:43 +0200 | <ProfSimm> | geekosaur: math notation sucks |
2022-03-27 17:22:47 +0200 | img | (~img@user/img) |
2022-03-27 17:23:25 +0200 | <ProfSimm> | dsal: I'm thinking of maybe only allowing bare identifiers outside parens in the chain |
2022-03-27 17:23:38 +0200 | <dsal> | Adding lots of punctuation all the time just so you don't have to add punctuation that one rare time doesn't seem like a good trade-off. |
2022-03-27 17:23:44 +0200 | <ProfSimm> | dsal: so you need to write: foo bar (12) baz ("text") something somethin qux |
2022-03-27 17:24:17 +0200 | <ProfSimm> | dsal: well |
2022-03-27 17:25:14 +0200 | <ProfSimm> | dsal: I implemented the 'no space' trick from the plugin you linked me to, try this (no quotes): foo - 5, foo -5 here: https://www.coltram.com/proto/ |
2022-03-27 17:25:21 +0200 | <ProfSimm> | dsal: it seems too subtle doesn't it |
2022-03-27 17:26:35 +0200 | <ProfSimm> | dsal: I can also cover the case of foo-5 being binary minus (currently parsed as unary) |
2022-03-27 17:26:44 +0200 | <ProfSimm> | But I don't like 'blemishes' |
2022-03-27 17:27:05 +0200 | <dsal> | I've never used it because it's never mattered to me. I don't have enough negative literals in my code to justify such a special case. |
2022-03-27 17:27:21 +0200 | <ProfSimm> | dsal curious |
2022-03-27 17:27:40 +0200 | <dsal> | I'm a somewhat positive person. |
2022-03-27 17:27:42 +0200 | <ProfSimm> | dsal: you don't recall sometimes writing "something -1" and then cursing why it doesn't work like you expected? |
2022-03-27 17:27:51 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-03-27 17:28:19 +0200 | <dsal> | Sure. Part of every day I write code the compiler tells me something stupid I did. |
2022-03-27 17:28:31 +0200 | <hpc> | i am more of the "i don't care if it works, don't write 'something -1'" kind of person |
2022-03-27 17:28:59 +0200 | <ProfSimm> | hpc: I'm curious why. Isn't it a pretty common think to pass a number to a function |
2022-03-27 17:29:02 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
2022-03-27 17:29:04 +0200 | <ProfSimm> | thing* |
2022-03-27 17:29:20 +0200 | <ProfSimm> | hpc: how do you write it |
2022-03-27 17:30:36 +0200 | <hpc> | with parens, or i try to dodge the use of negative literals |
2022-03-27 17:30:56 +0200 | eddiemundo | (~eddiemund@2001:470:69fc:105::a80) |
2022-03-27 17:31:05 +0200 | <hpc> | this isn't a problem unique to haskell, haskell is just one of the few languages that doesn't try to guess what you mean |
2022-03-27 17:31:10 +0200 | <ProfSimm> | hpc: it makes it sound like it's consciously on your mind to avoid the situation |
2022-03-27 17:31:17 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4) |
2022-03-27 17:31:18 +0200 | <hpc> | C also has this issue with * |
2022-03-27 17:31:27 +0200 | <hpc> | C++ has this issue with all sorts of operators |
2022-03-27 17:31:32 +0200 | <hpc> | it's a pretty common thing |
2022-03-27 17:31:34 +0200 | <ProfSimm> | hpc: oh what's the issue with C |
2022-03-27 17:31:48 +0200 | <hpc> | are you multiplying, or are you dereferencing |
2022-03-27 17:32:10 +0200 | <hpc> | the ambiguity happens when you're also doing a type cast at the same time |
2022-03-27 17:32:15 +0200 | <hpc> | (abc) *def |
2022-03-27 17:32:32 +0200 | <ProfSimm> | hpc: I was thinking about introducing the concept of left/right "bias" on the operator, depending on surrounding whitespace: foo-5 (no bias) foo - 5 (no bias) foo- 5 (left bias) foo -5 (right bias), and using the bias to resolve conflicts. What do you think? |
2022-03-27 17:32:35 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
2022-03-27 17:33:24 +0200 | <ProfSimm> | hpc: it plays with whitespace which feels dangerous, but it's very intuitive to a human being |
2022-03-27 17:33:29 +0200 | <hpc> | it's reasonable, i think |
2022-03-27 17:33:42 +0200 | <hpc> | or for extra fun, what if you always needed spaces |
2022-03-27 17:33:53 +0200 | <hpc> | foo-5 isn't subtraction, it's a single name |
2022-03-27 17:34:12 +0200 | <ProfSimm> | hpc: I've considered it, especially since I wanted dash in names. But I suspect it'll be annoying to people |
2022-03-27 17:34:12 +0200 | <hpc> | now you can be like powershell :P |
2022-03-27 17:35:20 +0200 | <ProfSimm> | hpc: my decision against it was consistency. I require space around - and +, fine, but what about / and * ? What about exponentiation ^? And finally, what about operators like comma, semicolon, colon and so on |
2022-03-27 17:35:41 +0200 | <abastro[m]> | `let n = -1 in f n` |
2022-03-27 17:35:43 +0200 | <ProfSimm> | hpc: if there'll be rule I prefer it be one rule for all operators |
2022-03-27 17:36:53 +0200 | <ProfSimm> | hpc: interestingly, whitespace "bias" would resolve the C example you gave me: foo* bar vs foo *bar |
2022-03-27 17:37:05 +0200 | <ProfSimm> | hpc: thanks for the feedback I might actually do it |
2022-03-27 17:37:13 +0200 | zyklotomic | (~ethan@r4-128-61-94-5.res.gatech.edu) (Ping timeout: 256 seconds) |
2022-03-27 17:37:43 +0200 | <abastro[m]> | I wonder what happens in C if you do `i---j` |
2022-03-27 17:37:44 +0200 | <geekosaur> | whitespace bias is already a thing in ghc9.x |
2022-03-27 17:38:03 +0200 | <ProfSimm> | geekosaur: oh is it. Where can I read about it/ |
2022-03-27 17:38:13 +0200 | <geekosaur> | C uses LTM so it should be i-- - j |
2022-03-27 17:38:39 +0200 | <abastro[m]> | Confuusssing |
2022-03-27 17:38:58 +0200 | <ProfSimm> | My parser would resolve this to subtract(i, neg(neg(j))) |
2022-03-27 17:39:06 +0200 | zyklotomic | (~ethan@res380d-128-61-83-1.res.gatech.edu) |
2022-03-27 17:39:15 +0200 | <geekosaur> | GHC is now more sensitive to whitespace between infix operators and their arguments, requiring it in some cases where it was not previously necessary as the result of the whitespace-sensitive operator parsing proposal. It also affects the usage of !,``~`` and @ as BangPatterns, irrefutable patterns and type applications respectively. This means that expressions that were parsed as visible type applications in previous versions when the @ was |
2022-03-27 17:39:15 +0200 | <geekosaur> | surrounded by whitespace will now be parsed as an operator application. For more details see the migration guide on the wiki. |
2022-03-27 17:39:22 +0200 | <geekosaur> | per the release notes |
2022-03-27 17:39:45 +0200 | <geekosaur> | this subsumes a bunch of ad hoc rules used by various other extensions |
2022-03-27 17:40:04 +0200 | <ProfSimm> | geekosaur: niccccee, this kinda supports me going in this direction myself |
2022-03-27 17:40:26 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-03-27 17:42:01 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-03-27 17:42:25 +0200 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) |
2022-03-27 17:44:42 +0200 | <ProfSimm> | Long live significant whitespace i guess |
2022-03-27 17:46:03 +0200 | eldritch | (~eldritch@user/eldritch) (Quit: bye) |
2022-03-27 17:46:03 +0200 | glider | (~glider@user/glider) (Quit: ZNC - https://znc.in) |
2022-03-27 17:46:03 +0200 | anderson | (~ande@user/anderson) (Quit: bye) |
2022-03-27 17:47:25 +0200 | alp | (~alp@user/alp) |
2022-03-27 17:49:52 +0200 | <maerwald> | yeah, I love it when a whitespaces changes the meaning of my program :D |
2022-03-27 17:50:10 +0200 | <maerwald> | it's the dark matter of programming |
2022-03-27 17:50:34 +0200 | lagash | (lagash@lagash.shelltalk.net) |
2022-03-27 17:50:57 +0200 | tromp | (~textual@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds) |
2022-03-27 17:51:25 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2022-03-27 17:55:55 +0200 | boxscape_ | (~boxscape_@p4ff0b60b.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2022-03-27 17:56:24 +0200 | anderson | (~ande@user/anderson) |
2022-03-27 17:56:46 +0200 | <ProfSimm> | maerwald: butletsfaceiteverylanguagereliesonwhitespaceinsomeway |
2022-03-27 17:57:40 +0200 | <dsal> | This is not a perl channel. |
2022-03-27 17:58:23 +0200 | <hpc> | hey, even perl has acme::bleach |
2022-03-27 17:58:34 +0200 | <geekosaur> | that's an empty program in Whitespace }:> |
2022-03-27 17:58:42 +0200 | <dsal> | haha. all comments |
2022-03-27 17:59:06 +0200 | <dsal> | The best thing about programming is that any statement about programming is false. |
2022-03-27 18:00:22 +0200 | <ProfSimm> | dsal: why |
2022-03-27 18:00:30 +0200 | <ProfSimm> | dsal: all my statements are true :P |
2022-03-27 18:01:15 +0200 | <dsal> | My language only supports unary logic. |
2022-03-27 18:01:30 +0200 | eldritch_ | (~eldritch@user/eldritch) |
2022-03-27 18:01:53 +0200 | <ProfSimm> | dsal: in my language every single value can be true or false independently of its contents |
2022-03-27 18:02:10 +0200 | <ProfSimm> | you can have true 0 false 0, true "true", false "true" and so on |
2022-03-27 18:02:21 +0200 | <ProfSimm> | lots of fun |
2022-03-27 18:02:48 +0200 | <geekosaur> | snobol |
2022-03-27 18:03:00 +0200 | <geekosaur> | where it's success/failure instead of true/false |
2022-03-27 18:03:07 +0200 | glider | (~glider@user/glider) |
2022-03-27 18:03:43 +0200 | <ProfSimm> | geekosaur: oh it does that what i described? |
2022-03-27 18:04:20 +0200 | <dsal> | But for the most part, when someone says "programming languages do X", there's a counterexample of a programming language that does not do X. |
2022-03-27 18:04:59 +0200 | <dsal> | I like languages that go all-in on boolean blindness by making it so that you can treat everything as a boolean. |
2022-03-27 18:05:38 +0200 | <ProfSimm> | dsal: that;s what I did, but maybe not as typically done |
2022-03-27 18:05:51 +0200 | <ProfSimm> | dsal: everything is a boolean. |
2022-03-27 18:06:13 +0200 | <ProfSimm> | dsal: but it's more of a replacement for returning result or throwing exception. |
2022-03-27 18:06:18 +0200 | <ProfSimm> | It calls one of two continuations |
2022-03-27 18:06:22 +0200 | <ProfSimm> | then or else |
2022-03-27 18:08:05 +0200 | <dsal> | So, Either? |
2022-03-27 18:08:13 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 18:08:49 +0200 | <ProfSimm> | dsal: in a way yes, but the integration with the syntax and every value makes it take on a different flavor |
2022-03-27 18:08:55 +0200 | <dsal> | Either is much less of a problem for boolean blindness |
2022-03-27 18:08:57 +0200 | <monochrom> | Haha that reminds me. Robert Harper critiqued boolean blindness, right? And then in his textbook, he went on to explain parametricity in System F by adding only one type: boolean. >:) |
2022-03-27 18:09:23 +0200 | <ProfSimm> | dsal: for example this is if/then/else and ternary, no need for dedicated operators: if & then | else |
2022-03-27 18:09:49 +0200 | <ProfSimm> | dsal: this is also chaining actions and handling errors: do1 & do2 & do3 & do4 | handleError |
2022-03-27 18:10:21 +0200 | <ProfSimm> | dsal: basicaly an entire method is a single expression, like Haskell, but booleans do the flow control |
2022-03-27 18:11:02 +0200 | <ProfSimm> | It gets very interesting honestly |
2022-03-27 18:11:17 +0200 | <ProfSimm> | I like when things fit together and 5 things end up being 1 thing |
2022-03-27 18:11:21 +0200 | <ProfSimm> | simplification |
2022-03-27 18:14:00 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds) |
2022-03-27 18:14:24 +0200 | <ProfSimm> | I think having booleans as distinct values may be an error |
2022-03-27 18:14:54 +0200 | <ProfSimm> | in machine code you almost never use such values. Sometimes you "jump if zero" or "not zero" |
2022-03-27 18:15:04 +0200 | <ProfSimm> | But way more often you directly jump from a comparison operation etc. |
2022-03-27 18:15:07 +0200 | <ProfSimm> | No boolean values |
2022-03-27 18:15:26 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) |
2022-03-27 18:16:28 +0200 | `2jt | (~jtomas@210.red-88-24-179.staticip.rima-tde.net) |
2022-03-27 18:16:32 +0200 | <ProfSimm> | if (x > 0 && x < 10) print("x in range"); else print("x not in range"); ----> x > 0 & x < 10 & print("x in range") | print ("x not in range") |
2022-03-27 18:16:47 +0200 | <geekosaur> | looks like bash scripting |
2022-03-27 18:16:54 +0200 | <ProfSimm> | Probably |
2022-03-27 18:17:17 +0200 | <geekosaur> | [ x > 0 && x < 10] && echo x in range || echo x not in range |
2022-03-27 18:17:36 +0200 | <ProfSimm> | geekosaur: yeah. In Lua they also use && and || as ternary |
2022-03-27 18:18:00 +0200 | <ProfSimm> | geekosaur: there's a gotcha though, if "echo x in range" returns falsy value, your "else" will run |
2022-03-27 18:18:09 +0200 | <geekosaur> | that's not ternary, it's just how && and || associate |
2022-03-27 18:18:14 +0200 | <ProfSimm> | geekosaur: in my case there's no such danger because all values are true by default |
2022-03-27 18:18:47 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 250 seconds) |
2022-03-27 18:18:50 +0200 | <ProfSimm> | geekosaur: I knot it's not ternary, but my point is it's used as such |
2022-03-27 18:19:03 +0200 | <ProfSimm> | geekosaur: but consider: 1 && 0 || 2 |
2022-03-27 18:19:14 +0200 | <ProfSimm> | Here you may hope to see 0 as a result, but you'll see 2 |
2022-03-27 18:19:41 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 18:19:43 +0200 | <ProfSimm> | In my lang, 1 & 0 | 2 will produce 0 |
2022-03-27 18:19:49 +0200 | <ProfSimm> | Because 0 is not "falsey" |
2022-03-27 18:20:09 +0200 | <ProfSimm> | You have to explicitly write "x != 0" |
2022-03-27 18:21:11 +0200 | <ProfSimm> | You can turn any value at all into false with not: !"something" ---> becomes a falsey string "something" |
2022-03-27 18:21:35 +0200 | <hpc> | so every value has a completely independent truthiness attached to it? |
2022-03-27 18:21:48 +0200 | <ProfSimm> | hpc: yes, and it's true for all by default |
2022-03-27 18:21:50 +0200 | <hpc> | neat |
2022-03-27 18:21:52 +0200 | <geekosaur> | again this sounds like snobol/icon |
2022-03-27 18:21:59 +0200 | infinity0 | (~infinity0@occupy.ecodis.net) (Ping timeout: 256 seconds) |
2022-03-27 18:22:03 +0200 | <ProfSimm> | geekosaur: where can I see examples of snobo |
2022-03-27 18:22:06 +0200 | <ProfSimm> | Sounds curious |
2022-03-27 18:22:10 +0200 | <geekosaur> | success/failure is distinct from boolean false/true |
2022-03-27 18:22:17 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-03-27 18:22:41 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 250 seconds) |
2022-03-27 18:22:43 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-03-27 18:22:43 +0200 | <geekosaur> | you might find icon more approachable as snobol was from the punched card days |
2022-03-27 18:23:03 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2022-03-27 18:23:04 +0200 | <geekosaur> | https://en.wikipedia.org/wiki/Icon_(programming_language) |
2022-03-27 18:24:21 +0200 | vysn | (~vysn@user/vysn) (Remote host closed the connection) |
2022-03-27 18:24:37 +0200 | Teacup | (~teacup@user/teacup) (Quit: Teacup) |
2022-03-27 18:24:37 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2022-03-27 18:24:49 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) |
2022-03-27 18:25:27 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 18:25:30 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Ping timeout: 252 seconds) |
2022-03-27 18:25:50 +0200 | <ProfSimm> | hpc: technically !something wraps something in not(something). What not does is swap then -> else and else -> then for the value. Every other interface is proxied transparently through not to something. |
2022-03-27 18:26:16 +0200 | <ProfSimm> | But it works as if there's a boolean attached to every value. |
2022-03-27 18:26:26 +0200 | <ProfSimm> | Internally every value is true, unless wrapped in odd number of "nots" |
2022-03-27 18:28:11 +0200 | <ProfSimm> | geekosaur: I don't understand icon, says a < b will return b, if b is bigger. what does if (a<b) mean then |
2022-03-27 18:30:31 +0200 | <ProfSimm> | I think i get it |
2022-03-27 18:30:48 +0200 | <geekosaur> | a < b fails if b is not bigger. if looks only at success/failure |
2022-03-27 18:30:48 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2022-03-27 18:30:48 +0200 | Vajb | (~Vajb@2001:999:62:aa00:7f5a:4f10:c894:3813) |
2022-03-27 18:31:13 +0200 | Teacup | (~teacup@user/teacup) |
2022-03-27 18:32:19 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
2022-03-27 18:32:29 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2022-03-27 18:32:42 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2022-03-27 18:32:45 +0200 | <geekosaur> | this allows a < b to produce b if it'sbigger, which allows chaining comparisons (e.g. if 3 < x < 10) |
2022-03-27 18:33:23 +0200 | <geekosaur> | (sorry, network around here sucks) |
2022-03-27 18:35:44 +0200 | <ProfSimm> | geekosaur: got it |
2022-03-27 18:36:06 +0200 | <ProfSimm> | geekosaur: seems similar indeed. But FAIL can't carry information it seems |
2022-03-27 18:36:13 +0200 | <geekosaur> | no, it can't |
2022-03-27 18:36:28 +0200 | <geekosaur> | internally failing is the same as producing &fail |
2022-03-27 18:36:35 +0200 | <ProfSimm> | In my case I use "falsey" values to carry error information (or other information for the else case as needed) |
2022-03-27 18:36:35 +0200 | vglfr | (~vglfr@88.155.46.233) |
2022-03-27 18:37:11 +0200 | <geekosaur> | hm, actually I'm not certain of that, it may be possible toextract information from a fail. I'm not an icon wizard |
2022-03-27 18:37:19 +0200 | <ProfSimm> | :) |
2022-03-27 18:37:33 +0200 | <ProfSimm> | geekosaur: it's full of languages in the 80s that do things I do |
2022-03-27 18:37:49 +0200 | <ProfSimm> | geekosaur: either I'm about to learn why they failed... or we branched onto a dark timeline since |
2022-03-27 18:38:17 +0200 | <geekosaur> | I still think if the current version of icon (unicon) had been around earlier, it might have prevented the rise of perl |
2022-03-27 18:38:42 +0200 | <ProfSimm> | geekosaur: for a new language to rise now it needs a killer app |
2022-03-27 18:38:53 +0200 | <geekosaur> | that said, icon uses snobol-like patterns insteadof regexes so perl might still have won solely because of that |
2022-03-27 18:39:36 +0200 | <geekosaur> | the world needed something better than shell scripting. unicon andperl both offered that… but unicon came too late and earlier versions of icon didn't really fill the need |
2022-03-27 18:39:56 +0200 | <maerwald> | what's wrong with shell |
2022-03-27 18:40:32 +0200 | <geekosaur> | generally once you reach around 10 lines of shell you're either beating your head against a wall or making a major mistake :) |
2022-03-27 18:41:05 +0200 | <geekosaur> | everything being a string with (back then) limited manipulation ability didn't help |
2022-03-27 18:41:27 +0200 | <geekosaur> | these days bash and zsh both offer advenced programming features, but they didn't back then |
2022-03-27 18:42:08 +0200 | <geekosaur> | no arrays (well, zsh had simple ones on a par with (t)csh), limited number handling,etc. |
2022-03-27 18:42:25 +0200 | <geekosaur> | you could fake arrays even in bourne shell with some evil eval tricks, but still |
2022-03-27 18:42:41 +0200 | <hpc> | the current bash arrays are not much better :P |
2022-03-27 18:42:56 +0200 | <ProfSimm> | What did "bash" mean |
2022-03-27 18:42:58 +0200 | <ProfSimm> | Batch shell? |
2022-03-27 18:43:05 +0200 | <maerwald> | who needs arrays, just pick some delimiter and hope it works |
2022-03-27 18:43:05 +0200 | <geekosaur> | "bourne-again shell" |
2022-03-27 18:43:10 +0200 | <ProfSimm> | oh |
2022-03-27 18:43:22 +0200 | <geekosaur> | reference to unix shell history |
2022-03-27 18:44:24 +0200 | <hpc> | you get a similar sort of history with vim |
2022-03-27 18:44:31 +0200 | <hpc> | vi improved |
2022-03-27 18:44:50 +0200 | aliosablack | (~chomwitt@2a02:587:dc18:da00:e2ec:eb52:4039:9bfe) (Quit: Leaving) |
2022-03-27 18:45:04 +0200 | <hpc> | vi is visual editor, because its predecessor was ed |
2022-03-27 18:45:20 +0200 | <hpc> | or maybe sed? |
2022-03-27 18:45:47 +0200 | <hpc> | you would print out your program on paper, and then use ed/sed to make individual line edits without being able to actually see the file on the computer |
2022-03-27 18:46:12 +0200 | <geekosaur> | vi was visual ex, ex was enhanced ed |
2022-03-27 18:46:22 +0200 | <hpc> | ah, right |
2022-03-27 18:46:50 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) |
2022-03-27 18:46:51 +0200 | <hpc> | back in those days, just catting out a file was enough to make your network connection chug |
2022-03-27 18:47:03 +0200 | <hpc> | and that's assuming your teletype wasn't an actual typewriter |
2022-03-27 18:49:03 +0200 | boxscape_ | (~boxscape_@p4ff0b60b.dip0.t-ipconnect.de) |
2022-03-27 18:51:36 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 245 seconds) |
2022-03-27 18:52:45 +0200 | <monochrom> | Quite remarkable that coding style guides of those days were obsessed with using magic numbers to express "we mean to say that each function should fit on one page". |
2022-03-27 18:52:46 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 18:54:08 +0200 | DigitalKiwi | (~kiwi@159.223.106.6) |
2022-03-27 18:57:05 +0200 | ss- | (~ss-@187.83.249.216.dyn.smithville.net) |
2022-03-27 18:58:01 +0200 | <ProfSimm> | monochrom: they should gzipped the code and printed it in base64 |
2022-03-27 18:58:31 +0200 | <monochrom> | Wait, the irony of the person who changed ghcup from written-in-bash to written-in-Haskell asking "what's wrong with shell?" hahaha |
2022-03-27 18:58:58 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 272 seconds) |
2022-03-27 19:00:29 +0200 | <hpc> | monochrom: that's the beauty of those old spooled printers, a page was as long as you wanted it to be :P |
2022-03-27 19:01:30 +0200 | <ss-> | I've got a stack project where some files have a preprocessor run over them with {-# OPTIONS_GHC -F -pgmF=myPreprocessor #-}. everything works as expected, except that when I get a compile error with stack build, it points to a randomly-numbered temporary file e.g. ghc_42.hspp rather than the original module. I don't mind the line numbers being off |
2022-03-27 19:01:30 +0200 | <ss-> | (though the preprocessor does preserve line numbers), but is there an easy way to get the original file name to show up in error messages? |
2022-03-27 19:02:19 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 250 seconds) |
2022-03-27 19:03:31 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-03-27 19:04:34 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 19:05:35 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 19:07:14 +0200 | <geekosaur> | ss-, the preprocessor would need to add LINE pragmas specifying the original file name and ideally line number |
2022-03-27 19:07:21 +0200 | <geekosaur> | otherwise ghc has no idea |
2022-03-27 19:07:49 +0200 | <geekosaur> | ProfSimm, you've never had to debug from a memory image printout |
2022-03-27 19:08:31 +0200 | <geekosaur> | my first year of college, I did. (only once. after that I got myself a COBOL compiler I could use at home with a more sensible debugging environment) |
2022-03-27 19:10:05 +0200 | <ss-> | geekosaur oh, got it! thanks! |
2022-03-27 19:10:29 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-03-27 19:14:06 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2022-03-27 19:15:23 +0200 | ss- | (~ss-@187.83.249.216.dyn.smithville.net) (Quit: Client closed) |
2022-03-27 19:16:21 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Quit: WeeChat 3.4.1) |
2022-03-27 19:16:32 +0200 | razetime | (~quassel@117.254.34.170) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2022-03-27 19:17:17 +0200 | vglfr | (~vglfr@88.155.46.233) (Ping timeout: 256 seconds) |
2022-03-27 19:18:23 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2022-03-27 19:24:12 +0200 | dextaa_ | (~dextaa@user/dextaa) (Remote host closed the connection) |
2022-03-27 19:24:24 +0200 | jbox | (~jbox@user/jbox) |
2022-03-27 19:24:33 +0200 | Teacup | (~teacup@user/teacup) (Remote host closed the connection) |
2022-03-27 19:24:48 +0200 | Teacup | (~teacup@user/teacup) |
2022-03-27 19:25:08 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-03-27 19:26:05 +0200 | nautical | (~nautical@2601:602:900:1630::7cbb) (Quit: WeeChat 3.4) |
2022-03-27 19:26:39 +0200 | jbox | (~jbox@user/jbox) (Read error: Connection reset by peer) |
2022-03-27 19:27:12 +0200 | kosmikus | (~kosmikus@nullzig.kosmikus.org) (Quit: Lost terminal) |
2022-03-27 19:29:50 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 19:30:11 +0200 | eotdlt^ | (~eotdlt@96-91-136-49-static.hfc.comcastbusiness.net) (Remote host closed the connection) |
2022-03-27 19:31:09 +0200 | mrmonday | (~robert@what.i.hope.is.not.a.tabernaevagant.es) (Quit: .) |
2022-03-27 19:31:15 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds) |
2022-03-27 19:33:04 +0200 | mrmonday | (~robert@what.i.hope.is.not.a.tabernaevagant.es) |
2022-03-27 19:33:30 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-03-27 19:35:52 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2022-03-27 19:37:16 +0200 | Unicorn_Princess | (~Unicorn_P@93-103-228-248.dynamic.t-2.net) |
2022-03-27 19:42:22 +0200 | nattiestnate | (~nate@202.138.250.62) |
2022-03-27 19:44:01 +0200 | infinity0 | (~infinity0@occupy.ecodis.net) |
2022-03-27 19:47:01 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds) |
2022-03-27 19:49:06 +0200 | chomwitt | (~chomwitt@2a02:587:dc18:da00:e2ec:eb52:4039:9bfe) |
2022-03-27 19:49:22 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) |
2022-03-27 19:52:15 +0200 | Vajb | (~Vajb@2001:999:62:aa00:7f5a:4f10:c894:3813) (Read error: Connection reset by peer) |
2022-03-27 19:52:49 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2022-03-27 19:55:44 +0200 | Guest98 | (~Guest98@82.212.116.123) |
2022-03-27 19:57:57 +0200 | vglfr | (~vglfr@88.155.46.233) |
2022-03-27 19:59:27 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
2022-03-27 19:59:31 +0200 | dextaa_ | (~dextaa@user/dextaa) |
2022-03-27 19:59:48 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2022-03-27 20:00:07 +0200 | ddb | (~ddb@2607:5300:203:9993::196) (Quit: WeeChat 3.4) |
2022-03-27 20:05:11 +0200 | deadmarshal_ | (~deadmarsh@95.38.230.121) (Ping timeout: 260 seconds) |
2022-03-27 20:25:30 +0200 | Teacup | (~teacup@user/teacup) (Remote host closed the connection) |
2022-03-27 20:27:21 +0200 | <maerwald> | monochrom: xD |
2022-03-27 20:29:51 +0200 | boxscape_ | (~boxscape_@p4ff0b60b.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2022-03-27 20:32:46 +0200 | Teacup | (~teacup@user/teacup) |
2022-03-27 20:33:04 +0200 | dyeplexer | (~dyeplexer@user/dyeplexer) (Remote host closed the connection) |
2022-03-27 20:34:58 +0200 | simendsjo | (~user@84.211.91.241) |
2022-03-27 20:36:40 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-03-27 20:42:03 +0200 | kaph | (~kaph@net-109-116-124-149.cust.vodafonedsl.it) (Ping timeout: 260 seconds) |
2022-03-27 20:44:12 +0200 | `2jt | (~jtomas@210.red-88-24-179.staticip.rima-tde.net) (Remote host closed the connection) |
2022-03-27 20:44:35 +0200 | `2jt | (~jtomas@210.red-88-24-179.staticip.rima-tde.net) |
2022-03-27 20:48:29 +0200 | mikoto-chan | (~mikoto-ch@213.177.151.239) (Ping timeout: 250 seconds) |
2022-03-27 20:50:22 +0200 | mikoto-chan | (~mikoto-ch@213.177.151.239) |
2022-03-27 20:50:27 +0200 | econo | (uid147250@user/econo) |
2022-03-27 20:53:27 +0200 | justOkay | (~justache@user/justache) (Read error: Connection reset by peer) |
2022-03-27 20:54:24 +0200 | justOkay | (~justache@user/justache) |
2022-03-27 20:55:20 +0200 | pera | (~pera@user/pera) |
2022-03-27 20:56:11 +0200 | CodeKiwi | (~kiwi@137.184.156.191) |
2022-03-27 20:57:16 +0200 | danso | (~danso@danso.ca) |
2022-03-27 20:58:24 +0200 | rond_ | (~rond_@90.254.208.190) |
2022-03-27 20:59:15 +0200 | simendsjo | (~user@84.211.91.241) (Ping timeout: 268 seconds) |
2022-03-27 20:59:48 +0200 | <danso> | is there a standard way of running an action only for a Left value, as in `\ f act -> \case { Left l -> f l >> act ; Right _ -> act }` |
2022-03-27 20:59:52 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2022-03-27 21:00:07 +0200 | boxscape_ | (~boxscape_@p4ff0b60b.dip0.t-ipconnect.de) |
2022-03-27 21:00:29 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 21:01:14 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 21:02:11 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Remote host closed the connection) |
2022-03-27 21:02:32 +0200 | <Rembane> | danso: There's left from Control.Arrow and first from Data.Bifunctor. |
2022-03-27 21:02:56 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2022-03-27 21:06:02 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Ping timeout: 268 seconds) |
2022-03-27 21:08:31 +0200 | dextaa_ | (~dextaa@user/dextaa) (Remote host closed the connection) |
2022-03-27 21:10:00 +0200 | <danso> | thanks, will investigate. |
2022-03-27 21:10:48 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2022-03-27 21:12:55 +0200 | solrize | (~solrize@user/solrize) |
2022-03-27 21:13:49 +0200 | <danso> | Rembane, i'm not sure that is what i mean. left/first returns an Either l r |
2022-03-27 21:14:04 +0200 | <danso> | my function does something with the Left value, then discards it |
2022-03-27 21:15:04 +0200 | hololeap | (~hololeap@user/hololeap) (Remote host closed the connection) |
2022-03-27 21:16:26 +0200 | hololeap | (~hololeap@user/hololeap) |
2022-03-27 21:16:46 +0200 | <geekosaur> | either (\l -> f l) (const ()) >> act |
2022-03-27 21:16:50 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 21:17:38 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 21:17:39 +0200 | <Rembane> | danso: Oh, then use geekosaur's solution. |
2022-03-27 21:17:58 +0200 | <geekosaur> | uh rught, I rearranged that after. either f (const ()) >> act |
2022-03-27 21:19:00 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 21:19:05 +0200 | <Rembane> | I wonder if void . left act would do the same thing. |
2022-03-27 21:19:12 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 21:20:35 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds) |
2022-03-27 21:20:50 +0200 | acidjnk | (~acidjnk@p200300d0c7049f8284fff18517a389b2.dip0.t-ipconnect.de) |
2022-03-27 21:22:53 +0200 | <danso> | there might not be an idiomatic way of doing it. the type i want is (l -> IO ()) -> IO () -> Either l () -> IO () |
2022-03-27 21:23:39 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-03-27 21:24:02 +0200 | <Rembane> | danso: EitherT might help you there. |
2022-03-27 21:25:02 +0200 | dextaa_ | (~dextaa@user/dextaa) |
2022-03-27 21:33:47 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 268 seconds) |
2022-03-27 21:34:27 +0200 | wolfshappen | (~waff@irc.furworks.de) (Read error: Connection reset by peer) |
2022-03-27 21:35:15 +0200 | alp | (~alp@user/alp) (Ping timeout: 252 seconds) |
2022-03-27 21:36:38 +0200 | <[exa]> | "acting on Left value" sounds a tiny bit like `catch` to me |
2022-03-27 21:37:55 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
2022-03-27 21:39:06 +0200 | <[exa]> | (from Control.Monad.Catch, with `e~SomeException => Left e a` not the IO one) |
2022-03-27 21:39:16 +0200 | <[exa]> | (s/Left/Either/ whoops) |
2022-03-27 21:40:00 +0200 | jgeerds | (~jgeerds@55d4548e.access.ecotel.net) |
2022-03-27 21:40:59 +0200 | boxscape_12 | (~boxscape_@p4ff0b60b.dip0.t-ipconnect.de) |
2022-03-27 21:41:02 +0200 | boxscape_12 | (~boxscape_@p4ff0b60b.dip0.t-ipconnect.de) (Client Quit) |
2022-03-27 21:42:05 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 21:42:37 +0200 | CodeKiwi | (~kiwi@137.184.156.191) (Ping timeout: 240 seconds) |
2022-03-27 21:44:36 +0200 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) (Ping timeout: 252 seconds) |
2022-03-27 21:47:48 +0200 | michalz | (~michalz@185.246.204.119) |
2022-03-27 21:47:54 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2022-03-27 21:48:01 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 21:48:04 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 21:48:16 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 21:49:32 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 21:50:08 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 21:53:52 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2022-03-27 21:56:07 +0200 | CodeKiwi | (~kiwi@137.184.156.191) |
2022-03-27 21:59:55 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
2022-03-27 22:00:05 +0200 | <maerwald> | danso: either f (\_ -> pure ())? |
2022-03-27 22:00:07 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 22:00:29 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-03-27 22:02:35 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2022-03-27 22:03:49 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 22:04:24 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 22:09:24 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2022-03-27 22:09:33 +0200 | rond_ | (~rond_@90.254.208.190) (Quit: Client closed) |
2022-03-27 22:09:36 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 272 seconds) |
2022-03-27 22:11:03 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2022-03-27 22:11:33 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 22:12:01 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 22:12:07 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds) |
2022-03-27 22:12:39 +0200 | vglfr | (~vglfr@88.155.46.233) (Ping timeout: 252 seconds) |
2022-03-27 22:13:14 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 22:13:47 +0200 | Lord_of_Life_ | Lord_of_Life |
2022-03-27 22:15:37 +0200 | mikoto-chan | (~mikoto-ch@213.177.151.239) (Ping timeout: 240 seconds) |
2022-03-27 22:17:09 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2022-03-27 22:18:28 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 272 seconds) |
2022-03-27 22:18:41 +0200 | pavonia | (~user@user/siracusa) |
2022-03-27 22:18:44 +0200 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) |
2022-03-27 22:19:58 +0200 | <unit73e> | hey. finally got xp3 extract working with the dumbest method. just use drop and take in a bytearray many times... not very efficient but apparently xp3 segments can be any range, including intersect with other ranges. |
2022-03-27 22:20:27 +0200 | <unit73e> | hopefully it doesn't exaust memory in large files |
2022-03-27 22:21:54 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 22:24:10 +0200 | DigitalKiwi | (~kiwi@159.223.106.6) (Quit: quite.) |
2022-03-27 22:24:46 +0200 | wolfshappen | (~waff@irc.furworks.de) |
2022-03-27 22:25:14 +0200 | CodeKiwi | DigitalKiwi |
2022-03-27 22:27:55 +0200 | zer0bitz_ | (~zer0bitz@dsl-hkibng32-54fbf8-224.dhcp.inet.fi) (Ping timeout: 256 seconds) |
2022-03-27 22:28:24 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2022-03-27 22:29:24 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
2022-03-27 22:30:02 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 22:33:52 +0200 | Pickchea | (~private@user/pickchea) |
2022-03-27 22:35:55 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 22:36:25 +0200 | _ht | (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection) |
2022-03-27 22:38:15 +0200 | deadmarshal_ | (~deadmarsh@95.38.230.121) |
2022-03-27 22:40:00 +0200 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 272 seconds) |
2022-03-27 22:43:10 +0200 | deadmarshal_ | (~deadmarsh@95.38.230.121) (Ping timeout: 272 seconds) |
2022-03-27 22:43:21 +0200 | <hololeap> | lets say you build a library with -O2 and install it globally, then build an executable which uses dynamic linking. would the -O2 potentially affect the executable's performance? |
2022-03-27 22:45:41 +0200 | <hololeap> | I would think it would, but I just wanted to double check |
2022-03-27 22:47:31 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2022-03-27 22:48:21 +0200 | <geekosaur> | the shared object includes an abi hash which includes among other things optimization level, so (a) when you build the executable you have to specify you want the -O2 version of the library or it'll build it again with -O1 (cabal / stack default) (2) it'll only use that shared library, not one with a different optimization level |
2022-03-27 22:48:50 +0200 | <sm> | if building with cabal or stack, I had the impression they would always build deps optimised, and only your project's local packages, or the packages you requested on the command line, would be affected |
2022-03-27 22:49:05 +0200 | <geekosaur> | this is one of the reasons we don't usually build shared; it doesn't gain you anything with ghc, since abi hashes have to match or bad things happen |
2022-03-27 22:50:12 +0200 | <hololeap> | right, but the optimization level of the library will affect performance when you eventually use it |
2022-03-27 22:50:21 +0200 | <geekosaur> | with cabal you can stick a stanza like "package *\n optimization: 2" in your cabal.project |
2022-03-27 22:51:02 +0200 | <hololeap> | it's probably such an obvious question that it's difficult to answer |
2022-03-27 22:51:19 +0200 | <geekosaur> | and if you don't do that or the equivalent, it'll go for -O1, look and see no cached build at -O1,and build it all over again |
2022-03-27 22:51:27 +0200 | <sm> | this is haskell tooling, nothing is obvious :) |
2022-03-27 22:51:56 +0200 | <hpc> | sufficiently researched nuance is indistinguishable from obvious |
2022-03-27 22:52:06 +0200 | AlexZenon_2 | AlexZenon |
2022-03-27 22:52:28 +0200 | <hololeap> | hypothetically, this isn't using cabal-v2, so there is no chance that it will rebuild the library |
2022-03-27 22:53:05 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 22:53:38 +0200 | <napping> | hololeap: I think the sticky point is that ghc can't actually produce an single executable that would be capable of using either the O1 or O2 version of the library, so it's not exactly a change. But yes, executable and library built with -O2 ought to be faster than executable and library built from the same source with -O1 |
2022-03-27 22:53:42 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 22:54:50 +0200 | <hololeap> | oh, sorry, I didn't mean to imply that the executable could be linked to both -O1 and -O2. I just wanted to confirm that -O2 on the library will affect performance on the executable |
2022-03-27 22:54:58 +0200 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) |
2022-03-27 22:55:00 +0200 | <hololeap> | ok |
2022-03-27 22:55:35 +0200 | <hpc> | is testing it infeasible? |
2022-03-27 22:56:00 +0200 | <hololeap> | no, I just wanted a general response, because like sm said, haskell is full of surprises |
2022-03-27 22:56:17 +0200 | <geekosaur> | -O2 will affect it but may do so oddly because of laziness |
2022-03-27 22:56:49 +0200 | <geekosaur> | like, of an optimized portion forces a thunk that was generated by lower optimization code, it'll confuse your timings |
2022-03-27 22:57:43 +0200 | <geekosaur> | which is another reason to build everything at the same optimization level: it can be *really* hard to tell. (plus -O2 doesn't often make much of a runtime difference over -O1) |
2022-03-27 22:57:57 +0200 | DigitalKiwi | (~kiwi@137.184.156.191) (Quit: quite.) |
2022-03-27 22:58:17 +0200 | <hololeap> | without any flags, does it default to -O0? |
2022-03-27 22:58:36 +0200 | DigitalKiwi | (~kiwi@137.184.156.191) |
2022-03-27 22:58:42 +0200 | <hololeap> | I would like to use -O2 on everything, but I've got limited ram on this system |
2022-03-27 22:58:51 +0200 | <hololeap> | so I was just curious |
2022-03-27 23:02:40 +0200 | <sclv> | without any flags we default to O1 and that's what's recommended. |
2022-03-27 23:02:56 +0200 | <hololeap> | ok, good |
2022-03-27 23:03:16 +0200 | <sclv> | only certain very specific packages will benefit significantly from O2, and often at an undesired cost not only in compilation time but generated binary size |
2022-03-27 23:03:32 +0200 | <sclv> | and it may even be that the blowup in binary size hurts caches in a way that undercuts the optimization |
2022-03-27 23:05:24 +0200 | <hololeap> | I noticed that aeson has a 'fast' flag |
2022-03-27 23:06:46 +0200 | <hololeap> | if flag(fast); ghc-options: -O0; else; ghc-options: -O2 |
2022-03-27 23:07:25 +0200 | <hololeap> | I guess they took that out in v2 |
2022-03-27 23:08:15 +0200 | <hololeap> | but I take that to mean that they decided -O2 was worth it most of the time for that lib |
2022-03-27 23:08:35 +0200 | <sclv> | i imagine fast was for development, but they decided they could just pass it manually |
2022-03-27 23:08:41 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2022-03-27 23:09:00 +0200 | <hololeap> | I'm more curious about the -O2 by default |
2022-03-27 23:09:19 +0200 | <sclv> | well something like aeson it really matters for because it really relies on pervasive inlining |
2022-03-27 23:09:42 +0200 | <sclv> | O2 is basically about how much you try to expand and inline, so it especially especially matters when there's fusion stuff happening |
2022-03-27 23:10:12 +0200 | <hololeap> | I see |
2022-03-27 23:11:02 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-03-27 23:11:35 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 23:16:44 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Ping timeout: 272 seconds) |
2022-03-27 23:20:36 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2022-03-27 23:22:09 +0200 | tremon | (~tremon@83-84-18-241.cable.dynamic.v4.ziggo.nl) |
2022-03-27 23:23:15 +0200 | michalz | (~michalz@185.246.204.119) (Remote host closed the connection) |
2022-03-27 23:23:56 +0200 | Axman6 | (~Axman6@user/axman6) (Ping timeout: 260 seconds) |
2022-03-27 23:26:19 +0200 | cosimone | (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
2022-03-27 23:30:40 +0200 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) (Remote host closed the connection) |
2022-03-27 23:30:53 +0200 | cosimone | (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Read error: Connection reset by peer) |
2022-03-27 23:30:57 +0200 | rawley | (~rawley@216-197-141-102.nbfr.hsdb.sasknet.sk.ca) |
2022-03-27 23:35:58 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2022-03-27 23:38:55 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds) |
2022-03-27 23:40:33 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 23:41:06 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-03-27 23:42:19 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 23:42:32 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 23:42:39 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 23:42:55 +0200 | wyrd | (~wyrd@gateway/tor-sasl/wyrd) (Ping timeout: 240 seconds) |
2022-03-27 23:43:20 +0200 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Ping timeout: 272 seconds) |
2022-03-27 23:43:33 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 23:44:45 +0200 | <sm> | possible addition for https://www.extrema.is/articles/haskell-books, tcard: https://www.reddit.com/r/haskell/comments/tpsbti/new_early_access_book_functional_programming_for |
2022-03-27 23:48:35 +0200 | <tcard> | sm: Thank you! With the current policy, however, I only put books that are complete in the index. Early access books are not in the index. |
2022-03-27 23:49:00 +0200 | <sm> | oops, gotcha |
2022-03-27 23:49:25 +0200 | alp | (~alp@user/alp) |
2022-03-27 23:49:52 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 23:49:54 +0200 | wyrd | (~wyrd@gateway/tor-sasl/wyrd) |
2022-03-27 23:50:02 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 23:50:07 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-03-27 23:50:14 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-03-27 23:50:22 +0200 | <sm> | slightly unfortunate for discovery of WIP books |
2022-03-27 23:51:55 +0200 | <tcard> | Indeed. I agree. There are drawbacks to including WIP books as well, and it was a difficult decision to make. |
2022-03-27 23:52:10 +0200 | <sm> | oh, this one's not freely readable, I didn't notice. That makes it a bit less important to discover early |
2022-03-27 23:52:27 +0200 | <tcard> | It looks really good, though! :) |
2022-03-27 23:52:54 +0200 | <sm> | yup it looks fun |
2022-03-27 23:58:46 +0200 | yauhsien_ | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) |
2022-03-27 23:58:46 +0200 | yauhsien | (~yauhsien@61-231-25-68.dynamic-ip.hinet.net) (Read error: Connection reset by peer) |
2022-03-27 23:59:45 +0200 | cosimone | (~user@93-44-187-176.ip98.fastwebnet.it) |