2021-07-18 00:06:06 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Remote host closed the connection) |
2021-07-18 00:06:20 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
2021-07-18 00:07:47 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 00:09:09 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
2021-07-18 00:10:32 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) (Ping timeout: 255 seconds) |
2021-07-18 00:13:11 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 00:14:07 +0200 | Atum_ | (~IRC@user/atum/x-2392232) |
2021-07-18 00:17:10 +0200 | ubert | (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
2021-07-18 00:19:46 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds) |
2021-07-18 00:19:49 +0200 | hexfive | (~eric@50.35.83.177) |
2021-07-18 00:20:53 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 00:32:28 +0200 | jmorris | (uid433911@id-433911.stonehaven.irccloud.com) |
2021-07-18 00:35:06 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 255 seconds) |
2021-07-18 00:35:24 +0200 | favonia | (~favonia@user/favonia) |
2021-07-18 00:35:43 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-07-18 00:36:37 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 00:41:46 +0200 | isekaijin | (~pyon@user/pyon) (Ping timeout: 252 seconds) |
2021-07-18 00:41:54 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 265 seconds) |
2021-07-18 00:42:00 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
2021-07-18 00:47:13 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 265 seconds) |
2021-07-18 00:51:15 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 00:52:40 +0200 | oxide | (~lambda@user/oxide) (Ping timeout: 246 seconds) |
2021-07-18 00:56:53 +0200 | jespada | (~jespada@90.254.247.46) (Ping timeout: 265 seconds) |
2021-07-18 00:57:12 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-07-18 00:59:23 +0200 | jespada | (~jespada@90.254.247.46) |
2021-07-18 01:01:38 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
2021-07-18 01:01:47 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-07-18 01:02:17 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:4852:6669:da0c:37fe) (Ping timeout: 255 seconds) |
2021-07-18 01:02:36 +0200 | <danso> | is there a typeclass that generalizes fromMaybe and fromRight? |
2021-07-18 01:02:53 +0200 | <danso> | it seems closely related to Alternative, like <|> |
2021-07-18 01:03:29 +0200 | <danso> | but (<|>) :: f a -> f a -> f a |
2021-07-18 01:03:31 +0200 | <hpc> | :t traverse |
2021-07-18 01:03:32 +0200 | <lambdabot> | (Traversable t, Applicative f) => (a -> f b) -> t a -> f (t b) |
2021-07-18 01:03:36 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2021-07-18 01:03:41 +0200 | <danso> | i'm looking for f a -> f a -> a |
2021-07-18 01:03:45 +0200 | fendor | (~fendor@77.119.192.173.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-07-18 01:04:44 +0200 | <geekosaur> | danso, what should such a typeclass do if it would fail? |
2021-07-18 01:04:44 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-07-18 01:04:55 +0200 | <hpc> | maybe you want Foldable? https://hackage.haskell.org/package/base-4.15.0.0/docs/Prelude.html#t:Foldable |
2021-07-18 01:05:10 +0200 | <danso> | oh you're right geekosaur |
2021-07-18 01:05:18 +0200 | <danso> | i made a mistake; i want f a -> a -> a |
2021-07-18 01:05:36 +0200 | <hpc> | % sum (Just 5) |
2021-07-18 01:05:36 +0200 | <yahb> | hpc: 5 |
2021-07-18 01:05:40 +0200 | <hpc> | % sum Nothing |
2021-07-18 01:05:41 +0200 | <yahb> | hpc: 0 |
2021-07-18 01:05:52 +0200 | <hpc> | % :t sum |
2021-07-18 01:05:52 +0200 | <yahb> | hpc: (Foldable t, Num a) => t a -> a |
2021-07-18 01:06:27 +0200 | <danso> | something like foldr (const id) is close maybe |
2021-07-18 01:06:34 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-07-18 01:07:03 +0200 | <hpc> | :t foldMap |
2021-07-18 01:07:04 +0200 | <lambdabot> | (Foldable t, Monoid m) => (a -> m) -> t a -> m |
2021-07-18 01:07:11 +0200 | jushur | (~human@user/jushur) (Quit: ¯\_(ツ)_/¯) |
2021-07-18 01:07:54 +0200 | <danso> | wow, TIL Maybe is Foldable |
2021-07-18 01:09:37 +0200 | <hpc> | speaking of, TIL Complex is Foldable |
2021-07-18 01:09:59 +0200 | <hpc> | % sum (5 :+ 10) |
2021-07-18 01:09:59 +0200 | <yahb> | hpc: 15 |
2021-07-18 01:10:15 +0200 | <hpc> | and it... just combines the numbers |
2021-07-18 01:10:19 +0200 | <hpc> | i don't know what i was expecting |
2021-07-18 01:14:30 +0200 | <geekosaur> | o.O |
2021-07-18 01:16:59 +0200 | _xor | (~xor@74.215.232.67) (Quit: brb) |
2021-07-18 01:18:50 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 01:21:57 +0200 | <xsperry> | that's.. interesting |
2021-07-18 01:22:18 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2021-07-18 01:22:32 +0200 | acidjnk | (~acidjnk@p200300d0c72b9505d437a5269bf657ec.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
2021-07-18 01:22:59 +0200 | silverwhitefish | (~hidden@47.202.102.10) |
2021-07-18 01:23:49 +0200 | aallen | (~aallen@072-182-074-253.res.spectrum.com) (Ping timeout: 246 seconds) |
2021-07-18 01:27:26 +0200 | alphabeta | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
2021-07-18 01:29:41 +0200 | Guest18 | (~Guest18@2603-8080-6d0d-35bb-0000-0000-0000-0004.res6.spectrum.com) |
2021-07-18 01:30:33 +0200 | kilolympus | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Ping timeout: 276 seconds) |
2021-07-18 01:32:24 +0200 | mcfrdy | (~mcfrdy@user/mcfrdy) (Ping timeout: 268 seconds) |
2021-07-18 01:34:25 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
2021-07-18 01:35:07 +0200 | <monochrom> | That's the natural answer to someone who expects length (x,y) = 2. Use length (x :+ y) instead. >:) |
2021-07-18 01:36:48 +0200 | <geekosaur> | > length (1,2) -- "natural" |
2021-07-18 01:36:49 +0200 | <lambdabot> | 1 |
2021-07-18 01:37:05 +0200 | mcfrdy | (~mcfrdy@45.67.96.175) |
2021-07-18 01:37:05 +0200 | mcfrdy | (~mcfrdy@45.67.96.175) (Changing host) |
2021-07-18 01:37:05 +0200 | mcfrdy | (~mcfrdy@user/mcfrdy) |
2021-07-18 01:37:13 +0200 | geekosaur | originally typoed "notural" |
2021-07-18 01:37:28 +0200 | Ariakenom__ | (~Ariakenom@c83-255-154-140.bredband.tele2.se) (Read error: Connection reset by peer) |
2021-07-18 01:39:11 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 255 seconds) |
2021-07-18 01:39:13 +0200 | euandreh | (~euandreh@2804:14c:33:9fe5:9d95:c71:11e4:3e0f) (Quit: WeeChat 3.2) |
2021-07-18 01:39:15 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 01:39:17 +0200 | <monochrom> | And haha someone was ahead of me, Complex is a Monad too. |
2021-07-18 01:39:19 +0200 | ph88 | (~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
2021-07-18 01:39:27 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 255 seconds) |
2021-07-18 01:39:42 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
2021-07-18 01:39:43 +0200 | dajoer | (~david@user/gvx) |
2021-07-18 01:40:38 +0200 | favonia | (~favonia@user/favonia) |
2021-07-18 01:44:07 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-07-18 01:44:42 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
2021-07-18 01:46:58 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:6178:3a47:8c71:dd89) (Quit: Textual IRC Client: www.textualapp.com) |
2021-07-18 01:51:39 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
2021-07-18 01:54:45 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 255 seconds) |
2021-07-18 01:56:13 +0200 | <boxscape> | % :i Complex |
2021-07-18 01:56:13 +0200 | <yahb> | boxscape: type Complex :: * -> *; data Complex a = !a :+ !a; -- Defined in `Data.Complex'; instance Applicative Complex -- Defined in `Data.Complex'; instance Eq a => Eq (Complex a) -- Defined in `Data.Complex'; instance Functor Complex -- Defined in `Data.Complex'; instance Monad Complex -- Defined in `Data.Complex'; instance RealFloat a => Floating (Complex a) -- Defined in `Data.Complex'; instance RealFloat a |
2021-07-18 01:56:22 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 246 seconds) |
2021-07-18 01:56:51 +0200 | <boxscape> | so Complex is really just `Pair`, with all the behavior you would expect (and then some, for the number stuff) |
2021-07-18 01:56:55 +0200 | Null_A | (~null_a@2601:645:8700:2290:b55a:33c2:1e1d:f229) |
2021-07-18 01:57:31 +0200 | <geekosaur> | so if you ever need that value with a type that's both Num and Monad… |
2021-07-18 01:58:19 +0200 | <boxscape> | % (1 :+ 2) >>= (\x -> x :+ x) |
2021-07-18 01:58:19 +0200 | <yahb> | boxscape: 1 :+ 2 |
2021-07-18 01:59:22 +0200 | <monochrom> | :) |
2021-07-18 02:07:33 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-07-18 02:09:40 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
2021-07-18 02:11:43 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 02:14:06 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 255 seconds) |
2021-07-18 02:16:05 +0200 | derelict | (~derelict@user/derelict) (Ping timeout: 255 seconds) |
2021-07-18 02:20:07 +0200 | mrus | (~mrus@2001:19f0:5:3fd4:5400:3ff:fe48:1820) |
2021-07-18 02:20:15 +0200 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-07-18 02:20:58 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Quit: WeeChat 3.2) |
2021-07-18 02:23:40 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-07-18 02:31:48 +0200 | derelict | (~derelict@user/derelict) |
2021-07-18 02:32:12 +0200 | Null_A | (~null_a@2601:645:8700:2290:b55a:33c2:1e1d:f229) (Remote host closed the connection) |
2021-07-18 02:35:43 +0200 | img | (~img@user/img) |
2021-07-18 02:38:30 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-07-18 02:44:42 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
2021-07-18 02:45:18 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2021-07-18 02:45:20 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 255 seconds) |
2021-07-18 02:45:47 +0200 | kilolympus | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
2021-07-18 02:45:49 +0200 | enemeth79 | (uid309041@id-309041.tooting.irccloud.com) |
2021-07-18 02:48:52 +0200 | alphabeta | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Ping timeout: 268 seconds) |
2021-07-18 02:49:13 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 246 seconds) |
2021-07-18 03:00:27 +0200 | _xor | (~xor@74.215.232.67) |
2021-07-18 03:00:41 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 03:00:43 +0200 | _xor | (~xor@74.215.232.67) (Client Quit) |
2021-07-18 03:01:14 +0200 | _xor | (~xor@74.215.232.67) |
2021-07-18 03:01:53 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
2021-07-18 03:03:01 +0200 | derelict | (~derelict@user/derelict) (Quit: WeeChat 3.2) |
2021-07-18 03:06:08 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 268 seconds) |
2021-07-18 03:06:13 +0200 | Deide | (~Deide@user/deide) (Quit: Seeee yaaaa) |
2021-07-18 03:07:36 +0200 | mcglk | (~mcglk@131.191.49.120) (Quit: (seeya)) |
2021-07-18 03:08:07 +0200 | mcglk | (~mcglk@131.191.49.120) |
2021-07-18 03:08:36 +0200 | _xor | (~xor@74.215.232.67) (Quit: WeeChat 3.2) |
2021-07-18 03:10:05 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 255 seconds) |
2021-07-18 03:10:06 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 03:11:39 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 03:12:12 +0200 | Atum_ | (~IRC@user/atum/x-2392232) (Quit: Atum_) |
2021-07-18 03:12:46 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 03:13:01 +0200 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 246 seconds) |
2021-07-18 03:15:47 +0200 | _xor | (~xor@74.215.232.67) |
2021-07-18 03:17:35 +0200 | Null_A | (~null_a@2601:645:8700:2290:b55a:33c2:1e1d:f229) |
2021-07-18 03:17:42 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 03:21:42 +0200 | xff0x_ | (~xff0x@2001:1a81:525b:ea00:2ecf:bd12:9251:d3e) |
2021-07-18 03:24:09 +0200 | Erutuon | (~Erutuon@user/erutuon) |
2021-07-18 03:24:28 +0200 | vicfred_ | (~vicfred@206.217.205.37) |
2021-07-18 03:24:55 +0200 | xff0x | (~xff0x@port-92-193-131-10.dynamic.as20676.net) (Ping timeout: 250 seconds) |
2021-07-18 03:28:20 +0200 | vicfred | (~vicfred@user/vicfred) (Ping timeout: 268 seconds) |
2021-07-18 03:30:54 +0200 | mcfrdy- | (~mcfrdy@45.67.96.175) |
2021-07-18 03:31:30 +0200 | mcfrdy | (~mcfrdy@user/mcfrdy) (Ping timeout: 255 seconds) |
2021-07-18 03:31:39 +0200 | chris_ | (~chris@81.96.113.213) |
2021-07-18 03:36:06 +0200 | neurocyte0 | (~neurocyte@92.119.8.106) |
2021-07-18 03:36:06 +0200 | neurocyte0 | (~neurocyte@92.119.8.106) (Changing host) |
2021-07-18 03:36:06 +0200 | neurocyte0 | (~neurocyte@user/neurocyte) |
2021-07-18 03:39:06 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
2021-07-18 03:39:26 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 03:39:58 +0200 | neurocyte | (~neurocyte@user/neurocyte) (Ping timeout: 252 seconds) |
2021-07-18 03:39:58 +0200 | neurocyte0 | neurocyte |
2021-07-18 03:40:57 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 255 seconds) |
2021-07-18 03:42:39 +0200 | favonia | (~favonia@user/favonia) |
2021-07-18 03:43:23 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
2021-07-18 03:43:49 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 246 seconds) |
2021-07-18 03:46:32 +0200 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 255 seconds) |
2021-07-18 03:47:22 +0200 | hololeap | (~hololeap@user/hololeap) (Ping timeout: 244 seconds) |
2021-07-18 03:48:09 +0200 | <davean> | I find most mathematical objects I deal with in practice to be "some set construction, with laws" |
2021-07-18 03:56:48 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-07-18 03:57:07 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Read error: Connection reset by peer) |
2021-07-18 03:58:55 +0200 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2021-07-18 04:05:54 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2021-07-18 04:05:54 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-07-18 04:07:00 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 04:12:32 +0200 | Erutuon | (~Erutuon@user/erutuon) |
2021-07-18 04:13:36 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
2021-07-18 04:13:59 +0200 | td_ | (~td@muedsl-82-207-238-255.citykom.de) (Ping timeout: 258 seconds) |
2021-07-18 04:14:42 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 255 seconds) |
2021-07-18 04:15:07 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-07-18 04:15:38 +0200 | td_ | (~td@muedsl-82-207-238-204.citykom.de) |
2021-07-18 04:15:44 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2021-07-18 04:15:44 +0200 | FinnElija | Guest7485 |
2021-07-18 04:15:44 +0200 | Guest7485 | (~finn_elij@user/finn-elija/x-0085643) (Killed (sodium.libera.chat (Nickname regained by services))) |
2021-07-18 04:15:45 +0200 | finn_elija | FinnElija |
2021-07-18 04:17:13 +0200 | favonia | (~favonia@user/favonia) |
2021-07-18 04:18:20 +0200 | norias | (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) |
2021-07-18 04:20:05 +0200 | alphabeta | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
2021-07-18 04:21:49 +0200 | kilolympus | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Ping timeout: 265 seconds) |
2021-07-18 04:24:21 +0200 | smichel17 | (~smichel17@2601:193:8300:4b9::600) (Quit: smichel17) |
2021-07-18 04:36:14 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
2021-07-18 04:37:16 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
2021-07-18 04:39:57 +0200 | h98 | (~h98@187.83.249.216.dyn.smithville.net) |
2021-07-18 04:39:59 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
2021-07-18 04:44:51 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 255 seconds) |
2021-07-18 04:52:45 +0200 | fef | (~thedawn@user/thedawn) |
2021-07-18 04:53:08 +0200 | aman | (~aman@user/aman) (Ping timeout: 255 seconds) |
2021-07-18 04:53:38 +0200 | agua | (~agua@2804:18:44:17a3:1:0:2cdf:1514) |
2021-07-18 04:54:24 +0200 | h98 | (~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed) |
2021-07-18 04:54:59 +0200 | enemeth79 | (uid309041@id-309041.tooting.irccloud.com) (Quit: Connection closed for inactivity) |
2021-07-18 04:55:01 +0200 | vicfred_ | (~vicfred@206.217.205.37) (Quit: Leaving) |
2021-07-18 04:55:13 +0200 | vicfred | (~vicfred@user/vicfred) |
2021-07-18 04:56:33 +0200 | Core5124 | (~agua@2804:14c:8793:8e2f:642c:be4c:c775:de87) (Ping timeout: 255 seconds) |
2021-07-18 04:59:13 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 258 seconds) |
2021-07-18 05:02:28 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 252 seconds) |
2021-07-18 05:02:45 +0200 | johnw | (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Quit: ZNC - http://znc.in) |
2021-07-18 05:05:06 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 255 seconds) |
2021-07-18 05:06:08 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-07-18 05:06:26 +0200 | matsurago | (~matsurago@p0125707-vcngn.tkyo.nt.ngn.ppp.ocn.ne.jp) |
2021-07-18 05:08:35 +0200 | spruit11 | (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
2021-07-18 05:09:29 +0200 | keutoi | (~keutoi@157.47.111.203) |
2021-07-18 05:12:18 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 240 seconds) |
2021-07-18 05:13:45 +0200 | desophos | (~desophos@2601:249:1680:a570:f1ba:fb0d:59f:a0b5) |
2021-07-18 05:14:36 +0200 | pesada | (~agua@191.177.175.57) |
2021-07-18 05:16:38 +0200 | Core1864 | (~agua@2804:18:44:17a3:1:0:2cdf:1514) |
2021-07-18 05:16:46 +0200 | agua | (~agua@2804:18:44:17a3:1:0:2cdf:1514) (Read error: Connection reset by peer) |
2021-07-18 05:17:02 +0200 | pesada | (~agua@191.177.175.57) (Read error: Connection reset by peer) |
2021-07-18 05:17:12 +0200 | agua | (~agua@2804:14c:8793:8e2f:642c:be4c:c775:de87) |
2021-07-18 05:20:46 +0200 | Core1864 | (~agua@2804:18:44:17a3:1:0:2cdf:1514) (Ping timeout: 246 seconds) |
2021-07-18 05:23:06 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
2021-07-18 05:23:58 +0200 | jushur | (~human@user/jushur) |
2021-07-18 05:29:30 +0200 | mcfrdy | (~mcfrdy@45.67.96.175) |
2021-07-18 05:29:30 +0200 | mcfrdy | (~mcfrdy@45.67.96.175) (Changing host) |
2021-07-18 05:29:31 +0200 | mcfrdy | (~mcfrdy@user/mcfrdy) |
2021-07-18 05:30:27 +0200 | mcfrdy- | (~mcfrdy@45.67.96.175) (Ping timeout: 265 seconds) |
2021-07-18 05:30:46 +0200 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-07-18 05:33:11 +0200 | matsurago | (~matsurago@p0125707-vcngn.tkyo.nt.ngn.ppp.ocn.ne.jp) (Quit: Leaving) |
2021-07-18 05:36:26 +0200 | vysn | (~vysn@user/vysn) |
2021-07-18 05:38:54 +0200 | _xor | (~xor@74.215.232.67) (Quit: brb) |
2021-07-18 05:39:53 +0200 | _xor | (~xor@74.215.232.67) |
2021-07-18 05:42:50 +0200 | <guest61> | about IO socket, if peer closed the connection, will get -1, what about they just went off the network without sent disconnect signal, how to handle that? |
2021-07-18 05:44:04 +0200 | <geekosaur> | you get an exception which you must catch |
2021-07-18 05:44:33 +0200 | <geekosaur> | see the Control.Exception module |
2021-07-18 05:44:37 +0200 | <guest61> | how we handle that without exception? |
2021-07-18 05:44:50 +0200 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 258 seconds) |
2021-07-18 05:45:04 +0200 | <guest61> | what about C langauage, it doesnt have exception, how it handle that? |
2021-07-18 05:45:14 +0200 | img | (~img@user/img) |
2021-07-18 05:45:24 +0200 | <guest61> | Either cant handle this IO exception? |
2021-07-18 05:45:37 +0200 | lars8 | (~bc817c21@217.29.117.252) |
2021-07-18 05:45:39 +0200 | <geekosaur> | C returns -1 with an error code, vs. 0; it doesn;t have exceptions |
2021-07-18 05:45:41 +0200 | <c_wraith> | in C, you look at return values and check ERRNO and hope nothing concurrent changed it |
2021-07-18 05:45:49 +0200 | <geekosaur> | Either can;t handle this kind of exception |
2021-07-18 05:48:27 +0200 | <lars8> | guest61, article makes a good argument why exceptions are prefered in IO over Either. https://www.fpcomplete.com/blog/2016/11/exceptions-best-practices-haskell/ |
2021-07-18 05:48:29 +0200 | <guest61> | if there're multiple IO at the same time, one of them just did this, check ERRNO will work? |
2021-07-18 05:48:32 +0200 | <lars8> | +this |
2021-07-18 05:48:45 +0200 | <nitrix> | c_wraith, errno is thread-local for POSIX systems. |
2021-07-18 05:49:28 +0200 | <guest61> | I thought that try-catch is typical OOP stuff |
2021-07-18 05:49:46 +0200 | <geekosaur> | try-catch is not particularly OOP |
2021-07-18 05:49:49 +0200 | <guest61> | FP has try-catch is weird |
2021-07-18 05:50:21 +0200 | <nitrix> | For Haskell, Either/Maybe is a good way to do error-handling, then you also have nicer monad (transformers) like EitherT to do your exceptions. |
2021-07-18 05:50:33 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 255 seconds) |
2021-07-18 05:50:54 +0200 | <lars8> | but then you force callers to handle errors in two ways, via either, and exceptions |
2021-07-18 05:50:57 +0200 | <guest61> | yes, but there're exception and run-time exception |
2021-07-18 05:51:13 +0200 | <guest61> | Either cant handle run-time exception |
2021-07-18 05:51:23 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-07-18 05:51:25 +0200 | favonia | (~favonia@user/favonia) |
2021-07-18 05:51:38 +0200 | ubert | (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) |
2021-07-18 05:51:50 +0200 | ubert | (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) (Client Quit) |
2021-07-18 05:52:06 +0200 | ubert | (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) |
2021-07-18 05:52:45 +0200 | ubert | (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) (Client Quit) |
2021-07-18 05:53:01 +0200 | ubert | (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) |
2021-07-18 05:54:46 +0200 | ubert | (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) (Client Quit) |
2021-07-18 05:55:35 +0200 | <guest61> | how other languages without try-catch to handle run-time exceptions? |
2021-07-18 05:57:10 +0200 | <xsperry> | probably more of a #programming question |
2021-07-18 05:59:54 +0200 | _xor | (~xor@74.215.232.67) (Quit: brb) |
2021-07-18 06:01:01 +0200 | _xor | (~xor@74.215.232.67) |
2021-07-18 06:02:01 +0200 | johnw | (~johnw@2600:1700:cf00:db0:4c55:69bc:4e4d:1c90) |
2021-07-18 06:06:31 +0200 | wei2912 | (~wei2912@112.199.250.21) |
2021-07-18 06:06:45 +0200 | soft-warm | (~soft-warm@2600:8801:db01:8f0:67c1:e7b7:4e84:318d) |
2021-07-18 06:10:03 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 06:14:24 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 255 seconds) |
2021-07-18 06:16:46 +0200 | favonia | (~favonia@user/favonia) |
2021-07-18 06:20:33 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-07-18 06:21:43 +0200 | <lars8> | guest61, Either can handle runtime errors, just return Left instead of throwing an exception. but, any IO code can throw exceptions other than the one you considered throwing, but are not returning (async exceptions, out of memory exceptions, etc), and encoding every possible exception in the type would be pretty tedious. java tried something similar with checked exceptions, and they are nearly universally hated |
2021-07-18 06:21:54 +0200 | <lars8> | s/not/now |
2021-07-18 06:22:14 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 268 seconds) |
2021-07-18 06:23:52 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2021-07-18 06:24:18 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 255 seconds) |
2021-07-18 06:26:45 +0200 | favonia | (~favonia@user/favonia) |
2021-07-18 06:27:11 +0200 | mcfrdy | (~mcfrdy@user/mcfrdy) (Ping timeout: 255 seconds) |
2021-07-18 06:27:53 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-07-18 06:28:14 +0200 | <c_wraith> | in some sense, Either is the same as checked exceptions. Except that the tools for working with them are a lot more pleasant |
2021-07-18 06:28:40 +0200 | bgamari_ | (~bgamari@72.65.101.148) (Ping timeout: 246 seconds) |
2021-07-18 06:28:51 +0200 | bgamari | (~bgamari@72.65.102.182) |
2021-07-18 06:34:43 +0200 | chris_ | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-07-18 06:40:57 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
2021-07-18 06:44:26 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-07-18 06:46:32 +0200 | norias | (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 255 seconds) |
2021-07-18 06:46:50 +0200 | Ananta-shesha | (~pjetcetal@128-71-13-182.broadband.corbina.ru) |
2021-07-18 06:50:17 +0200 | <monochrom> | try-catch traces all the way back to a David Parnas 1970s paper. Way before OO. |
2021-07-18 06:50:41 +0200 | <monochrom> | OO only added "the Exception type can have user-defined subtypes" |
2021-07-18 06:51:17 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 06:51:21 +0200 | <monochrom> | SML also has had exceptions for a long time. |
2021-07-18 06:51:31 +0200 | <monochrom> | and SML's predecessors |
2021-07-18 06:54:59 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
2021-07-18 06:55:12 +0200 | <monochrom> | Theorem provers written in *ML used this heavily for backtracking proof search. So it was not just I/O even. |
2021-07-18 06:55:48 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 255 seconds) |
2021-07-18 06:56:52 +0200 | <monochrom> | To be sure, in that use case, we now know that it should be Either/Maybe and MonadPlus. But writing theorem provers in *ML was a long long time ago. |
2021-07-18 07:00:18 +0200 | favonia | (~favonia@user/favonia) (Ping timeout: 255 seconds) |
2021-07-18 07:00:22 +0200 | <c_wraith> | and if you worry about performance of constructing/matching all those data types, you might CPS-transform the Either, at which point... you're basically back at exceptions anyway. Except without an extra language construct. |
2021-07-18 07:01:40 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 07:02:46 +0200 | favonia | (~favonia@user/favonia) |
2021-07-18 07:11:00 +0200 | favonia | (~favonia@user/favonia) (Remote host closed the connection) |
2021-07-18 07:11:49 +0200 | favonia | (~favonia@user/favonia) |
2021-07-18 07:11:58 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-07-18 07:16:40 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
2021-07-18 07:17:37 +0200 | Erutuon | (~Erutuon@user/erutuon) |
2021-07-18 07:31:59 +0200 | mrus | (~mrus@2001:19f0:5:3fd4:5400:3ff:fe48:1820) (Ping timeout: 255 seconds) |
2021-07-18 07:32:06 +0200 | jmorris | (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-07-18 07:33:46 +0200 | retroid_ | (~retro@97e2ba5d.skybroadband.com) (Ping timeout: 268 seconds) |
2021-07-18 07:37:12 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
2021-07-18 07:37:58 +0200 | soft-warm | (~soft-warm@2600:8801:db01:8f0:67c1:e7b7:4e84:318d) (Ping timeout: 246 seconds) |
2021-07-18 07:52:23 +0200 | mnrmnaugh | (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) |
2021-07-18 07:56:05 +0200 | Maxdaman1us | (~Maxdamant@user/maxdamantus) |
2021-07-18 07:56:10 +0200 | alphabeta | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Quit: Quitting IRC :() |
2021-07-18 07:56:16 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 252 seconds) |
2021-07-18 07:56:31 +0200 | kilolympus | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
2021-07-18 07:59:00 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
2021-07-18 08:00:02 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2021-07-18 08:18:09 +0200 | Null_A | (~null_a@2601:645:8700:2290:b55a:33c2:1e1d:f229) (Ping timeout: 255 seconds) |
2021-07-18 08:24:27 +0200 | zmt00 | (~zmt00@user/zmt00) (Ping timeout: 255 seconds) |
2021-07-18 08:26:10 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 256 seconds) |
2021-07-18 08:27:22 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-07-18 08:31:32 +0200 | Maxdaman1us | Maxdamantus |
2021-07-18 08:41:01 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 08:41:02 +0200 | jmorris | (uid433911@id-433911.stonehaven.irccloud.com) |
2021-07-18 08:42:47 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2021-07-18 08:45:55 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 268 seconds) |
2021-07-18 08:48:23 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 268 seconds) |
2021-07-18 08:48:33 +0200 | PinealGlandOptic | (~PinealGla@37.115.210.35) |
2021-07-18 08:52:07 +0200 | Guest9 | (~Guest9@103.250.137.213) |
2021-07-18 08:58:01 +0200 | desophos | (~desophos@2601:249:1680:a570:f1ba:fb0d:59f:a0b5) (Quit: Leaving) |
2021-07-18 08:59:30 +0200 | mcfrdy_ | (uid507892@user/mcfrdy) |
2021-07-18 09:03:11 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
2021-07-18 09:05:52 +0200 | <guest61> | update message is Nothing |
2021-07-18 09:05:53 +0200 | <guest61> | update message is Nothing |
2021-07-18 09:10:24 +0200 | kilolympus | (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Read error: Connection reset by peer) |
2021-07-18 09:15:17 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
2021-07-18 09:15:40 +0200 | Guest18 | (~Guest18@2603-8080-6d0d-35bb-0000-0000-0000-0004.res6.spectrum.com) (Quit: Client closed) |
2021-07-18 09:22:48 +0200 | _xor | (~xor@74.215.232.67) (Quit: WeeChat 3.2) |
2021-07-18 09:28:57 +0200 | trufas | (~trufas@177.240.218.218) (Ping timeout: 276 seconds) |
2021-07-18 09:28:58 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-07-18 09:29:49 +0200 | trufas | (~trufas@177.240.218.218) |
2021-07-18 09:32:14 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 09:35:01 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 09:40:57 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
2021-07-18 09:43:01 +0200 | chris_ | (~chris@81.96.113.213) |
2021-07-18 09:43:06 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2021-07-18 09:44:17 +0200 | bontaq | (~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 245 seconds) |
2021-07-18 09:46:13 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-07-18 09:46:15 +0200 | Tuplanolla | (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
2021-07-18 09:50:21 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2021-07-18 09:53:06 +0200 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 255 seconds) |
2021-07-18 09:53:56 +0200 | Guest9 | (~Guest9@103.250.137.213) (Quit: Connection closed) |
2021-07-18 09:56:37 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) |
2021-07-18 10:00:00 +0200 | acidjnk | (~acidjnk@p200300d0c72b9505d437a5269bf657ec.dip0.t-ipconnect.de) |
2021-07-18 10:00:28 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 10:07:01 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-07-18 10:09:11 +0200 | hendursaga | (~weechat@user/hendursaga) (Ping timeout: 244 seconds) |
2021-07-18 10:09:56 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 255 seconds) |
2021-07-18 10:10:51 +0200 | smtnet3 | (~asdfasdfa@202.36.244.28) |
2021-07-18 10:12:38 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 10:13:29 +0200 | Feuermagier_ | (~Feuermagi@213.178.26.41) |
2021-07-18 10:17:16 +0200 | <smtnet3> | yoyo |
2021-07-18 10:17:44 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
2021-07-18 10:17:48 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-07-18 10:23:37 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
2021-07-18 10:24:02 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-07-18 10:25:13 +0200 | adamse_ | adamse |
2021-07-18 10:27:21 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2021-07-18 10:30:00 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 255 seconds) |
2021-07-18 10:30:11 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 10:30:36 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 265 seconds) |
2021-07-18 10:30:38 +0200 | Lord_of_Life_ | Lord_of_Life |
2021-07-18 10:31:49 +0200 | zeenk | (~zeenk@2a02:2f04:a106:9600:82fb:aed9:ca9:38d3) |
2021-07-18 10:32:47 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-07-18 10:33:57 +0200 | fendor | (~fendor@178.165.167.65.wireless.dyn.drei.com) |
2021-07-18 10:33:59 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 10:34:14 +0200 | xff0x_ | (~xff0x@2001:1a81:525b:ea00:2ecf:bd12:9251:d3e) (Ping timeout: 255 seconds) |
2021-07-18 10:34:52 +0200 | xff0x_ | (~xff0x@2001:1a81:525b:ea00:61de:d55d:7965:91a3) |
2021-07-18 10:41:11 +0200 | peutri_ | peutri |
2021-07-18 10:41:12 +0200 | anandprabhu | (~anandprab@94.202.243.198) |
2021-07-18 10:46:22 +0200 | azeem | (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it) (Read error: Connection reset by peer) |
2021-07-18 10:47:13 +0200 | benin0369 | (~benin@183.82.204.23) |
2021-07-18 10:48:09 +0200 | azeem | (~azeem@176.201.37.153) |
2021-07-18 10:50:47 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 10:50:51 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-07-18 10:51:23 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 10:52:50 +0200 | azeem | (~azeem@176.201.37.153) (Ping timeout: 265 seconds) |
2021-07-18 10:53:50 +0200 | azeem | (~azeem@176.201.37.153) |
2021-07-18 10:56:13 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
2021-07-18 11:01:03 +0200 | azeem | (~azeem@176.201.37.153) (Ping timeout: 265 seconds) |
2021-07-18 11:01:12 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-07-18 11:01:35 +0200 | azeem | (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it) |
2021-07-18 11:07:45 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2021-07-18 11:12:26 +0200 | azeem | (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it) (Ping timeout: 252 seconds) |
2021-07-18 11:15:52 +0200 | _xor | (~xor@74.215.232.67) |
2021-07-18 11:17:42 +0200 | Feuermagier_ | (~Feuermagi@213.178.26.41) (Quit: Leaving) |
2021-07-18 11:21:13 +0200 | ru0mad | (~ru0mad@176.187.215.241) |
2021-07-18 11:26:57 +0200 | ru0mad | (~ru0mad@176.187.215.241) (Remote host closed the connection) |
2021-07-18 11:28:37 +0200 | ru0mad | (~ru0mad@176.187.215.241) |
2021-07-18 11:31:59 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-07-18 11:32:01 +0200 | lars8 | (~bc817c21@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout)) |
2021-07-18 11:33:26 +0200 | ru0mad | (~ru0mad@176.187.215.241) (Ping timeout: 265 seconds) |
2021-07-18 11:33:54 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds) |
2021-07-18 11:36:44 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-07-18 11:37:05 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-07-18 11:37:28 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
2021-07-18 11:38:05 +0200 | Guest77 | (~Guest77@2402:e280:2117:297:ecf8:f374:8704:f843) |
2021-07-18 11:40:59 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-07-18 11:43:52 +0200 | ru0mad | (~ru0mad@176.187.215.241) |
2021-07-18 11:44:40 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 11:45:47 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 11:46:37 +0200 | mcfrdy_ | (uid507892@user/mcfrdy) (Quit: Connection closed for inactivity) |
2021-07-18 11:54:37 +0200 | ru0mad | (~ru0mad@176.187.215.241) (Ping timeout: 268 seconds) |
2021-07-18 11:56:21 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2021-07-18 12:01:32 +0200 | chomwitt | (~Pitsikoko@athedsl-32487.home.otenet.gr) (Ping timeout: 255 seconds) |
2021-07-18 12:04:36 +0200 | jippiedoe | (~david@2a02-a44c-e14e-1-a3df-4b90-dd0e-5377.fixed6.kpn.net) |
2021-07-18 12:06:09 +0200 | ru0mad | (~ru0mad@176.187.215.241) |
2021-07-18 12:08:16 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 12:08:52 +0200 | jippiedoe | (~david@2a02-a44c-e14e-1-a3df-4b90-dd0e-5377.fixed6.kpn.net) (Ping timeout: 246 seconds) |
2021-07-18 12:09:26 +0200 | frdy | (~mcfrdy@user/mcfrdy) |
2021-07-18 12:10:51 +0200 | ru0mad | (~ru0mad@176.187.215.241) (Ping timeout: 258 seconds) |
2021-07-18 12:12:46 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
2021-07-18 12:18:57 +0200 | wei2912 | (~wei2912@112.199.250.21) (Remote host closed the connection) |
2021-07-18 12:22:59 +0200 | wei2912 | (~wei2912@112.199.250.21) |
2021-07-18 12:32:17 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 12:33:16 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-07-18 12:34:20 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
2021-07-18 12:34:35 +0200 | zaquest | (~notzaques@5.128.210.178) (Remote host closed the connection) |
2021-07-18 12:35:26 +0200 | azeem | (~azeem@176.201.37.153) |
2021-07-18 12:35:47 +0200 | azeem | (~azeem@176.201.37.153) (Read error: Connection reset by peer) |
2021-07-18 12:36:00 +0200 | azeem | (~azeem@dynamic-adsl-84-220-239-18.clienti.tiscali.it) |
2021-07-18 12:36:54 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 255 seconds) |
2021-07-18 12:39:43 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-07-18 12:39:53 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
2021-07-18 12:39:59 +0200 | zaquest | (~notzaques@5.128.210.178) |
2021-07-18 12:44:41 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 12:45:47 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 12:46:40 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 252 seconds) |
2021-07-18 12:46:41 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 12:47:48 +0200 | jumper149 | (~jumper149@80.240.31.34) |
2021-07-18 12:47:48 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 12:57:05 +0200 | Guest9 | (~Guest9@103.250.137.212) |
2021-07-18 13:07:44 +0200 | Pickchea | (~private@user/pickchea) |
2021-07-18 13:08:00 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 268 seconds) |
2021-07-18 13:09:08 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
2021-07-18 13:09:11 +0200 | ghais | (uid508683@id-508683.tinside.irccloud.com) |
2021-07-18 13:09:53 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 13:14:12 +0200 | hseg | (~gesh@185.120.126.10) |
2021-07-18 13:14:14 +0200 | jippiedoe | (~david@2a02-a44c-e14e-1-8d88-9bbd-c50a-c552.fixed6.kpn.net) |
2021-07-18 13:14:47 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
2021-07-18 13:15:41 +0200 | smichel17 | (~smichel17@c-73-68-217-18.hsd1.ma.comcast.net) |
2021-07-18 13:16:26 +0200 | ghais | Ghais |
2021-07-18 13:19:58 +0200 | <hseg> | has this idea been offered to solve the orphan instance problem: extend overlapping rules so that non-orphan instances are considered more specific than orphan instances |
2021-07-18 13:20:41 +0200 | <hseg> | at first blush, it would seem to provide a mechanism for adoptable orphans -- just mark your instance OVERLAPPABLE, and petition upstream to pull it in |
2021-07-18 13:20:55 +0200 | Ghais | _0x47 |
2021-07-18 13:22:16 +0200 | Guest9 | (~Guest9@103.250.137.212) (Quit: Connection closed) |
2021-07-18 13:22:44 +0200 | <hseg> | you'd just want to extract the orphans from your package so you don't have multiple orphans first |
2021-07-18 13:25:42 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 13:26:48 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 13:27:48 +0200 | hseg | (~gesh@185.120.126.10) (Quit: WeeChat 3.2) |
2021-07-18 13:29:30 +0200 | hseg | (~gesh@185.120.126.10) |
2021-07-18 13:30:18 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 13:40:30 +0200 | Codaraxis | (~Codaraxis@user/codaraxis) (Remote host closed the connection) |
2021-07-18 13:40:53 +0200 | Codaraxis | (~Codaraxis@user/codaraxis) |
2021-07-18 13:40:55 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 246 seconds) |
2021-07-18 13:44:11 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-07-18 13:45:45 +0200 | jippiedoe | (~david@2a02-a44c-e14e-1-8d88-9bbd-c50a-c552.fixed6.kpn.net) (Ping timeout: 255 seconds) |
2021-07-18 13:56:25 +0200 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) |
2021-07-18 13:59:19 +0200 | ishutin_ | (~ishutin@85-238-93-30.pool.digikabel.hu) (Remote host closed the connection) |
2021-07-18 14:04:01 +0200 | pesada | (~agua@2804:18:44:17a3:1:0:2cdf:1514) |
2021-07-18 14:04:43 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-07-18 14:05:48 +0200 | hexfive | (~eric@50.35.83.177) (Quit: WeeChat 3.0) |
2021-07-18 14:06:49 +0200 | agua | (~agua@2804:14c:8793:8e2f:642c:be4c:c775:de87) (Ping timeout: 246 seconds) |
2021-07-18 14:08:15 +0200 | xff0x_ | (~xff0x@2001:1a81:525b:ea00:61de:d55d:7965:91a3) (Ping timeout: 255 seconds) |
2021-07-18 14:08:33 +0200 | xff0x_ | (~xff0x@185.65.135.235) |
2021-07-18 14:09:04 +0200 | <hseg> | no takers? to recall my question was whether considering non-orphan instances more specific than orphans for overlap resolution was ever considered as a solution for the orphan instance problem |
2021-07-18 14:14:53 +0200 | soft-warm | (~soft-warm@2600:8801:db01:8f0:b50e:8cc8:c702:8b1f) |
2021-07-18 14:18:42 +0200 | fendor_ | (~fendor@178.165.167.65.wireless.dyn.drei.com) |
2021-07-18 14:21:02 +0200 | fendor__ | (~fendor@212095005147.public.telering.at) |
2021-07-18 14:21:07 +0200 | turlando_ | (~turlando@93-42-250-112.ip89.fastwebnet.it) |
2021-07-18 14:21:24 +0200 | turlando | (~turlando@user/turlando) (Remote host closed the connection) |
2021-07-18 14:21:24 +0200 | fendor | (~fendor@178.165.167.65.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
2021-07-18 14:22:58 +0200 | fendor | (~fendor@178.165.167.65.wireless.dyn.drei.com) |
2021-07-18 14:23:16 +0200 | fendor_ | (~fendor@178.165.167.65.wireless.dyn.drei.com) (Ping timeout: 246 seconds) |
2021-07-18 14:23:19 +0200 | fendor | (~fendor@178.165.167.65.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
2021-07-18 14:23:46 +0200 | fendor | (~fendor@178.165.167.65.wireless.dyn.drei.com) |
2021-07-18 14:25:01 +0200 | soft-warm | (~soft-warm@2600:8801:db01:8f0:b50e:8cc8:c702:8b1f) (Ping timeout: 246 seconds) |
2021-07-18 14:26:46 +0200 | xff0x_ | (~xff0x@185.65.135.235) (Ping timeout: 252 seconds) |
2021-07-18 14:28:46 +0200 | xff0x_ | (~xff0x@2001:1a81:525b:ea00:8ac3:8abd:f864:c680) |
2021-07-18 14:30:14 +0200 | fendor__ | fendor_ |
2021-07-18 14:32:06 +0200 | jmorris | (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-07-18 14:33:41 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 14:37:05 +0200 | awth13 | (~user@user/awth13) |
2021-07-18 14:37:34 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
2021-07-18 14:38:34 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
2021-07-18 14:38:36 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2021-07-18 14:38:49 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2021-07-18 14:41:06 +0200 | Pickchea | (~private@user/pickchea) (Ping timeout: 255 seconds) |
2021-07-18 14:46:44 +0200 | <guest61> | update message is Nothing |
2021-07-18 14:48:23 +0200 | <[exa]> | no update, good update |
2021-07-18 14:48:31 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) (Ping timeout: 268 seconds) |
2021-07-18 14:50:07 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 14:52:27 +0200 | <tom__> | Are stochastic processes better modelled as comonads or monads? |
2021-07-18 14:53:07 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2021-07-18 14:53:42 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 14:54:50 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 14:55:26 +0200 | <[exa]> | tom__: depends |
2021-07-18 14:55:27 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-07-18 14:55:30 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 255 seconds) |
2021-07-18 14:55:45 +0200 | <[exa]> | tom__: comonads are great for representing a "cache" of stuff, may be interesting for e.g. precomputed distributions |
2021-07-18 14:56:28 +0200 | <[exa]> | tom__: monads are great for representing the "actual background context" that you only somehow manipulate using (say) an EDSL |
2021-07-18 14:56:33 +0200 | <tom__> | Its for brownian motion/wiener process |
2021-07-18 14:56:39 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
2021-07-18 14:57:01 +0200 | Raito_Bezarius | (~Raito@wireguard/tunneler/raito-bezarius) (Quit: free()) |
2021-07-18 14:57:02 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-07-18 14:57:11 +0200 | <[exa]> | so you have a state of X particles moving around and hitting each other? |
2021-07-18 14:57:34 +0200 | <tom__> | Well, modelling a stock price |
2021-07-18 14:57:49 +0200 | Raito_Bezarius | (~Raito@wireguard/tunneler/raito-bezarius) |
2021-07-18 14:57:52 +0200 | <tom__> | So just a time series |
2021-07-18 14:58:13 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 14:58:35 +0200 | <[exa]> | ok so there's some "actual state", and some "history" that you may as well forget, right? |
2021-07-18 14:59:23 +0200 | <tom__> | Yeah since its a martingale the process computes the next step from the last step only |
2021-07-18 14:59:58 +0200 | <tom__> | but the last step has some extra state which is the delta of the brownian motion itself which obviously has a random component |
2021-07-18 15:00:33 +0200 | <tom__> | Forgetting history when computing the next step feels comonadic to me |
2021-07-18 15:05:29 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Quit: mikoto-chan) |
2021-07-18 15:05:43 +0200 | <[exa]> | yeah that would work |
2021-07-18 15:05:44 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
2021-07-18 15:06:01 +0200 | <[exa]> | otoh it might be much simpler because you really don't need to reach for the history there |
2021-07-18 15:11:25 +0200 | burnside_ | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 15:11:25 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Read error: Connection reset by peer) |
2021-07-18 15:13:52 +0200 | fendor__ | (~fendor@178.165.167.65.wireless.dyn.drei.com) |
2021-07-18 15:15:57 +0200 | mthvedt | (uid501949@id-501949.stonehaven.irccloud.com) |
2021-07-18 15:15:59 +0200 | burnside_ | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Read error: Connection reset by peer) |
2021-07-18 15:16:05 +0200 | <tom__> | awesome thanks! |
2021-07-18 15:16:06 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 15:17:00 +0200 | fendor_ | (~fendor@212095005147.public.telering.at) (Ping timeout: 252 seconds) |
2021-07-18 15:17:00 +0200 | <guest61> | update message is Nothing |
2021-07-18 15:20:52 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-07-18 15:22:44 +0200 | chexum | (~chexum@gateway/tor-sasl/chexum) (Quit: -) |
2021-07-18 15:23:38 +0200 | retroid_ | (~retro@97e2ba5d.skybroadband.com) |
2021-07-18 15:26:41 +0200 | hseg_ | (~gesh@185.120.126.10) |
2021-07-18 15:27:28 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-07-18 15:29:48 +0200 | hseg | (~gesh@185.120.126.10) (Ping timeout: 258 seconds) |
2021-07-18 15:30:42 +0200 | chomwitt | (~Pitsikoko@athedsl-32487.home.otenet.gr) |
2021-07-18 15:33:43 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 15:34:49 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 15:39:00 +0200 | chexum | (~chexum@gateway/tor-sasl/chexum) |
2021-07-18 15:39:00 +0200 | chexum | (~chexum@gateway/tor-sasl/chexum) (Client Quit) |
2021-07-18 15:45:29 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-07-18 15:49:20 +0200 | <Boarders> | Is there a convenient way to see every type defined in base? |
2021-07-18 15:49:41 +0200 | haritz | (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) |
2021-07-18 15:49:41 +0200 | haritz | (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host) |
2021-07-18 15:49:41 +0200 | haritz | (~hrtz@user/haritz) |
2021-07-18 15:52:29 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 15:55:20 +0200 | anandprabhu | (~anandprab@94.202.243.198) (Quit: Leaving) |
2021-07-18 16:00:30 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 16:00:33 +0200 | <[exa]> | Boarders: in ghci, you can do something like Prelude.[2x tab] |
2021-07-18 16:01:05 +0200 | <[exa]> | types will be nicely together starting with capitals |
2021-07-18 16:01:06 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2021-07-18 16:01:20 +0200 | <[exa]> | but that ain't too systematic, right |
2021-07-18 16:01:37 +0200 | <Boarders> | Still useful to know :) |
2021-07-18 16:01:43 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 16:02:27 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Client Quit) |
2021-07-18 16:02:36 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2021-07-18 16:02:50 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 16:03:06 +0200 | zebrag | (~chris@user/zebrag) |
2021-07-18 16:03:22 +0200 | acidjnk | (~acidjnk@p200300d0c72b9505d437a5269bf657ec.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
2021-07-18 16:05:02 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
2021-07-18 16:06:06 +0200 | _73 | (~user@pool-96-252-123-136.bstnma.fios.verizon.net) |
2021-07-18 16:06:36 +0200 | Katarushisu | (~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net) (Ping timeout: 255 seconds) |
2021-07-18 16:07:03 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 255 seconds) |
2021-07-18 16:09:08 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-07-18 16:12:05 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-07-18 16:12:13 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 16:12:19 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-07-18 16:12:22 +0200 | zeenk | (~zeenk@2a02:2f04:a106:9600:82fb:aed9:ca9:38d3) (Quit: Konversation terminated!) |
2021-07-18 16:15:29 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 16:15:45 +0200 | _73 | (~user@pool-96-252-123-136.bstnma.fios.verizon.net) (ERC (IRC client for Emacs 27.2)) |
2021-07-18 16:16:42 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
2021-07-18 16:17:51 +0200 | keutoi | (~keutoi@157.47.111.203) (Ping timeout: 255 seconds) |
2021-07-18 16:19:47 +0200 | keutoi | (~keutoi@106.208.22.182) |
2021-07-18 16:20:04 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds) |
2021-07-18 16:20:11 +0200 | immae | (~immae@2a01:4f8:141:53e7::) (Quit: WeeChat 2.9) |
2021-07-18 16:20:37 +0200 | immae | (~immae@2a01:4f8:141:53e7::) |
2021-07-18 16:26:35 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds) |
2021-07-18 16:30:16 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 268 seconds) |
2021-07-18 16:30:44 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 16:31:51 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 16:34:06 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 244 seconds) |
2021-07-18 16:36:25 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-07-18 16:37:15 +0200 | Topsi | (~Tobias@dyndsl-095-033-088-035.ewe-ip-backbone.de) |
2021-07-18 16:39:45 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 16:40:57 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 250 seconds) |
2021-07-18 16:44:42 +0200 | keutoi | (~keutoi@106.208.22.182) (Ping timeout: 265 seconds) |
2021-07-18 16:45:19 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 258 seconds) |
2021-07-18 16:45:44 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 16:46:51 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 16:47:44 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 16:47:45 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-07-18 16:48:51 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 16:49:40 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
2021-07-18 16:52:43 +0200 | azeem | (~azeem@dynamic-adsl-84-220-239-18.clienti.tiscali.it) (Ping timeout: 246 seconds) |
2021-07-18 16:58:17 +0200 | afotgkmnzj7asv3r | (~afotgkmnz@2001:470:69fc:105::c24b) |
2021-07-18 16:58:30 +0200 | Atum_ | (~IRC@user/atum/x-2392232) |
2021-07-18 17:01:01 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) |
2021-07-18 17:02:48 +0200 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2021-07-18 17:08:21 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 17:08:28 +0200 | yauhsien | (~yauhsien@61-231-25-245.dynamic-ip.hinet.net) |
2021-07-18 17:08:50 +0200 | oso | (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) (Quit: Client closed) |
2021-07-18 17:09:39 +0200 | Null_A | (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) |
2021-07-18 17:11:02 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-07-18 17:18:30 +0200 | <davean> | hseg_: I feel you've missed what we value about instances |
2021-07-18 17:19:04 +0200 | <hseg_> | oh? |
2021-07-18 17:19:10 +0200 | hseg_ | hseg |
2021-07-18 17:19:30 +0200 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 255 seconds) |
2021-07-18 17:20:42 +0200 | <davean> | hseg: your approach makes it vary by what you import. |
2021-07-18 17:20:45 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 17:21:21 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds) |
2021-07-18 17:21:47 +0200 | <hseg> | except it already does -- if you ever have overlapping instances, whether the more specific instance is imported will affect which instance gets chosen |
2021-07-18 17:21:55 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 17:21:58 +0200 | <davean> | yes, thats the problem |
2021-07-18 17:21:59 +0200 | <hseg> | true, that isn't common practice |
2021-07-18 17:22:45 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Read error: Connection reset by peer) |
2021-07-18 17:23:01 +0200 | <hseg> | the idea would be that this would be used to provide instances until upstream does, not to try and override upstream's instances |
2021-07-18 17:23:50 +0200 | Pickchea | (~private@user/pickchea) |
2021-07-18 17:23:52 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 17:25:34 +0200 | isekaijin | (~pyon@user/pyon) |
2021-07-18 17:27:07 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 17:28:46 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 17:29:52 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 17:29:54 +0200 | azeem | (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) |
2021-07-18 17:30:04 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 17:30:54 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-07-18 17:31:56 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
2021-07-18 17:32:58 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
2021-07-18 17:33:47 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 268 seconds) |
2021-07-18 17:34:31 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-07-18 17:34:55 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-07-18 17:34:58 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
2021-07-18 17:35:11 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 17:35:52 +0200 | Deide | (~Deide@217.155.19.23) |
2021-07-18 17:35:52 +0200 | Deide | (~Deide@217.155.19.23) (Changing host) |
2021-07-18 17:35:52 +0200 | Deide | (~Deide@user/deide) |
2021-07-18 17:36:19 +0200 | Guest9 | (~Guest9@103.240.169.111) |
2021-07-18 17:36:52 +0200 | RemiYuko | AkechiShiro |
2021-07-18 17:37:17 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
2021-07-18 17:37:37 +0200 | wei2912 | (~wei2912@112.199.250.21) (Quit: Lost terminal) |
2021-07-18 17:41:31 +0200 | keutoi | (~keutoi@223.237.21.130) |
2021-07-18 17:42:05 +0200 | zmt00 | (~zmt00@user/zmt00) |
2021-07-18 17:43:39 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 268 seconds) |
2021-07-18 17:43:50 +0200 | cheater | (~Username@user/cheater) |
2021-07-18 17:48:46 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 17:48:56 +0200 | xff0x_ | (~xff0x@2001:1a81:525b:ea00:8ac3:8abd:f864:c680) (Ping timeout: 255 seconds) |
2021-07-18 17:49:23 +0200 | zcombinator | (~zcombinat@host-79-33-75-218.retail.telecomitalia.it) |
2021-07-18 17:49:53 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 17:49:58 +0200 | xff0x_ | (~xff0x@2001:1a81:525b:ea00:e4bc:612d:f531:cac7) |
2021-07-18 17:53:28 +0200 | keutoi | (~keutoi@223.237.21.130) (Quit: leaving) |
2021-07-18 17:53:29 +0200 | hololeap | (~hololeap@user/hololeap) |
2021-07-18 17:54:09 +0200 | NieDzejkob | (~quassel@195.149.98.3) (Quit: No Ping reply in 180 seconds.) |
2021-07-18 17:55:28 +0200 | NieDzejkob | (~quassel@195.149.98.3) |
2021-07-18 17:55:28 +0200 | chomwitt | (~Pitsikoko@athedsl-32487.home.otenet.gr) (Ping timeout: 258 seconds) |
2021-07-18 17:57:26 +0200 | zcombinator | (~zcombinat@host-79-33-75-218.retail.telecomitalia.it) (Quit: WeeChat 3.2) |
2021-07-18 17:59:10 +0200 | burnside_ | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 17:59:10 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Read error: Connection reset by peer) |
2021-07-18 18:00:58 +0200 | Tisoxin | (~ikosit@user/ikosit) |
2021-07-18 18:01:19 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-07-18 18:02:34 +0200 | niemand | (~niemand@p2e52f785.dip0.t-ipconnect.de) |
2021-07-18 18:03:49 +0200 | slycelote_ | (~slycelote@user/slycelote) |
2021-07-18 18:03:54 +0200 | Guest9 | (~Guest9@103.240.169.111) (Ping timeout: 258 seconds) |
2021-07-18 18:04:30 +0200 | slycelote | (~slycelote@user/slycelote) (Ping timeout: 255 seconds) |
2021-07-18 18:04:32 +0200 | niemand | (~niemand@p2e52f785.dip0.t-ipconnect.de) (Client Quit) |
2021-07-18 18:04:55 +0200 | burnside_ | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-07-18 18:05:30 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 18:10:15 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 265 seconds) |
2021-07-18 18:11:04 +0200 | econo | (uid147250@user/econo) |
2021-07-18 18:12:47 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 18:13:23 +0200 | TranquilEcho | (~grom@user/tranquilecho) |
2021-07-18 18:13:44 +0200 | hseg | (~gesh@185.120.126.10) (Ping timeout: 252 seconds) |
2021-07-18 18:13:52 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
2021-07-18 18:13:54 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 18:13:57 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 18:14:08 +0200 | Pickchea | (~private@user/pickchea) (Ping timeout: 255 seconds) |
2021-07-18 18:15:17 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 18:15:43 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 268 seconds) |
2021-07-18 18:17:03 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-07-18 18:18:10 +0200 | ph88^ | (~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de) |
2021-07-18 18:18:44 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) |
2021-07-18 18:18:48 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
2021-07-18 18:19:36 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds) |
2021-07-18 18:22:02 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 18:22:03 +0200 | ph88 | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
2021-07-18 18:22:26 +0200 | Guest9 | (~Guest9@103.250.139.40) |
2021-07-18 18:23:05 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 18:24:17 +0200 | dajoer | (~david@user/gvx) (Quit: leaving) |
2021-07-18 18:26:12 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Ping timeout: 268 seconds) |
2021-07-18 18:27:06 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-07-18 18:30:20 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-07-18 18:30:31 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 268 seconds) |
2021-07-18 18:31:25 +0200 | Guest31 | (~Guest31@76-236-222-208.lightspeed.tukrga.sbcglobal.net) |
2021-07-18 18:32:19 +0200 | <Guest31> | can someone help me understand how case works? |
2021-07-18 18:32:24 +0200 | <Guest31> | myTakeWhileFold condition xs = foldr step [] xs |
2021-07-18 18:32:24 +0200 | <Guest31> | where step x y = case condition y of |
2021-07-18 18:32:25 +0200 | <Guest31> | True -> x ++ y |
2021-07-18 18:32:25 +0200 | <Guest31> | False -> x |
2021-07-18 18:33:32 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2021-07-18 18:33:50 +0200 | <Guest31> | I thought this would work, butI get an error at True |
2021-07-18 18:34:39 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 255 seconds) |
2021-07-18 18:35:02 +0200 | <davean> | well you need to give us a type signature or we have no idea what "condition" or "xs" are |
2021-07-18 18:35:02 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 18:35:11 +0200 | <davean> | and you didn't give us the error |
2021-07-18 18:36:11 +0200 | <Guest31> | myTakeWhileFold :: (a -> Bool) -> [a] -> [a] |
2021-07-18 18:36:18 +0200 | <Guest31> | error: parse error on input ‘True’ |
2021-07-18 18:36:30 +0200 | <davean> | I expect you have an indentation error |
2021-07-18 18:37:32 +0200 | <Guest31> | OK Ill check it out thanks |
2021-07-18 18:39:06 +0200 | chris_ | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-07-18 18:39:46 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 268 seconds) |
2021-07-18 18:41:23 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-07-18 18:42:24 +0200 | chris_ | (~chris@81.96.113.213) |
2021-07-18 18:42:47 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 18:43:53 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 18:44:47 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 18:45:54 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 18:46:08 +0200 | <Guest31> | that was it thanks davean |
2021-07-18 18:46:28 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 18:46:43 +0200 | Null_A | (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) (Read error: Connection reset by peer) |
2021-07-18 18:47:17 +0200 | Null_A | (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) |
2021-07-18 18:47:25 +0200 | <monochrom> | This is why the line of "where" should contain nothing else. |
2021-07-18 18:47:41 +0200 | <geekosaur> | it needs to be more indented than "step" with NonDecreasingIndentation, or than "case" without it, I think |
2021-07-18 18:47:51 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-07-18 18:48:24 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 18:48:36 +0200 | agua | (~agua@2804:14c:8793:8e2f:642c:be4c:c775:de87) |
2021-07-18 18:49:12 +0200 | <monochrom> | The grammar is flexible in styles but some styles are misleading. |
2021-07-18 18:50:39 +0200 | <davean> | I've never really gotten that where style |
2021-07-18 18:51:18 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 255 seconds) |
2021-07-18 18:51:18 +0200 | pesada | (~agua@2804:18:44:17a3:1:0:2cdf:1514) (Ping timeout: 255 seconds) |
2021-07-18 18:52:36 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
2021-07-18 18:56:13 +0200 | chomwitt | (~Pitsikoko@athedsl-32487.home.otenet.gr) |
2021-07-18 18:57:11 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
2021-07-18 18:58:06 +0200 | <Guest31> | What would be an example of good style with Where monochrom? |
2021-07-18 18:58:15 +0200 | <Guest31> | in your opinion |
2021-07-18 18:58:20 +0200 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) |
2021-07-18 18:59:37 +0200 | <monochrom> | <monochrom> This is why the line of "where" should contain nothing else. |
2021-07-18 18:59:47 +0200 | chris_ | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-07-18 19:01:23 +0200 | <c_wraith> | I've been working hard recently to style my haskell code such that no indentation depends on any token length |
2021-07-18 19:01:54 +0200 | chris_ | (~chris@81.96.113.213) |
2021-07-18 19:01:57 +0200 | <c_wraith> | It's awkward in some places, but it's got huge advantages |
2021-07-18 19:03:22 +0200 | <monochrom> | Yeah, "f x | x>0 = ..." is fairly natural, to always split it takes way too much discipline. |
2021-07-18 19:04:11 +0200 | <monochrom> | Furthermore if you split at both | and = it looks ugly for short code. (But makes perfect sense for long code.) |
2021-07-18 19:04:48 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 19:05:55 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 19:06:09 +0200 | chris_ | (~chris@81.96.113.213) (Ping timeout: 255 seconds) |
2021-07-18 19:09:48 +0200 | <dsal> | I might have to start using oumolu which, as tweag says in their blog post: ormolu: format haskell code like never before (except they did that in all caps) |
2021-07-18 19:10:34 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-07-18 19:12:07 +0200 | <Franciman> | I personally try to shy away from any tool |
2021-07-18 19:12:10 +0200 | <Franciman> | i use just ghc |
2021-07-18 19:12:25 +0200 | <Franciman> | ghc --make |
2021-07-18 19:12:27 +0200 | <Franciman> | is all I need |
2021-07-18 19:12:32 +0200 | <Franciman> | oh and ghcup |
2021-07-18 19:12:37 +0200 | <Franciman> | ghcup is unvaluable |
2021-07-18 19:12:52 +0200 | <davean> | I still haven't used ghcup |
2021-07-18 19:12:57 +0200 | <dsal> | If you're not the first member on an established team, they might be upset with you if you decided to ignore all their ways. |
2021-07-18 19:13:34 +0200 | <davean> | I'd be upset to end up with the mess that is oumolu how ever it happened :-p |
2021-07-18 19:13:58 +0200 | <dsal> | :( Yeah. That's the biggest downside I'm facing. |
2021-07-18 19:14:22 +0200 | <davean> | oumolu has no concept of the code its formating |
2021-07-18 19:14:29 +0200 | <davean> | it can only consider syntax, not content |
2021-07-18 19:14:42 +0200 | <davean> | so every human element is thrown out the window |
2021-07-18 19:14:43 +0200 | <dsal> | They took a lot from elm which prioritized reading diffs over reading code. |
2021-07-18 19:14:49 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 19:15:35 +0200 | <dsal> | IMO, fixing the stuff that renders diffs would be a saner approach than making all the code harder to read. |
2021-07-18 19:15:55 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 19:16:14 +0200 | oso | (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) |
2021-07-18 19:18:23 +0200 | <geekosaur> | --make hasn't been needed for a while now (since ghc 6.12 iirc) |
2021-07-18 19:19:03 +0200 | <dsal> | I lose most of my excitement about elm, dhall, etc... when I have to do things their One True Way™. I passed a thing I wrote in elm through their standard formatter and got this: https://www.irccloud.com/pastebin/lIpmTDCu/format.elm |
2021-07-18 19:19:14 +0200 | <geekosaur> | I'm a little surprised it hasn't been deprecated |
2021-07-18 19:19:32 +0200 | <dsal> | I've not used ormolu much myself, but I expect I'll be seeing more such doublings where I can't read a function on my screen anymore. |
2021-07-18 19:21:13 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 19:22:06 +0200 | <monochrom> | In comp.lang.functional there was once a detractor who praised imperative programming for "one thing at a time, one concept per line" and attacked functional programming for the opposite. |
2021-07-18 19:22:29 +0200 | <monochrom> | You have just shown an answer similar to mine :) |
2021-07-18 19:22:55 +0200 | <davean> | lol. I've seen a lot of mixed concerns in imperative programming |
2021-07-18 19:23:30 +0200 | <maerwald> | if you do imperative programming with shared mutability tamed, then that is workable |
2021-07-18 19:24:09 +0200 | Null_A | (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) (Ping timeout: 255 seconds) |
2021-07-18 19:25:03 +0200 | <monochrom> | My reverse thinking is that whoever imposed that oversplitting style must have been an imperative bonehead who couldn't even understand in C "x = cos(t); y = sin(t);" if I wrote that as one line. |
2021-07-18 19:25:24 +0200 | <geekosaur> | or a Python programmer |
2021-07-18 19:25:29 +0200 | fef | (~thedawn@user/thedawn) (Remote host closed the connection) |
2021-07-18 19:25:54 +0200 | <dsal> | monochrom: please state your variable names in the form of complete sentences. |
2021-07-18 19:26:12 +0200 | <monochrom> | haha yikes |
2021-07-18 19:26:27 +0200 | <davean> | the_variable_x |
2021-07-18 19:26:29 +0200 | <geekosaur> | I haven't programmed cobol in decades |
2021-07-18 19:26:29 +0200 | <dsal> | I got in an argument with someone who said he had some kind of neurodivergence and couldn't possible comprehend code that used such short variable names. |
2021-07-18 19:26:30 +0200 | <davean> | Done? |
2021-07-18 19:26:45 +0200 | <monochrom> | COMPUTE COSINE OF T INTO X |
2021-07-18 19:26:51 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 255 seconds) |
2021-07-18 19:26:55 +0200 | <monochrom> | (let's go COBOL for complete sentences) |
2021-07-18 19:26:58 +0200 | P1RATEZ | (piratez@user/p1ratez) |
2021-07-18 19:28:23 +0200 | <monochrom> | COMPUTE COSINE OF T INTO THE_VAR_THAT_WOULD_BE_COSINE_OF_T |
2021-07-18 19:28:35 +0200 | hendursa1 | (~weechat@user/hendursaga) (Quit: hendursa1) |
2021-07-18 19:28:37 +0200 | <monochrom> | (inspired by the movie name "the kid that would be king" :) ) |
2021-07-18 19:29:05 +0200 | <monochrom> | "lady of the trig functions, please return the cosine of t" |
2021-07-18 19:29:11 +0200 | <monochrom> | OK I'll stop. |
2021-07-18 19:29:11 +0200 | <oso> | needs more "Please" |
2021-07-18 19:29:23 +0200 | hendursaga | (~weechat@user/hendursaga) |
2021-07-18 19:29:25 +0200 | <davean> | no, should be worded must |
2021-07-18 19:29:29 +0200 | <davean> | we want to have confidence in it |
2021-07-18 19:30:03 +0200 | <oso> | i was referencing INTERCAL, which wouldn't compile if you didn't say "please" enough but also wouldn't compile if you said it too much because you were being a suckup |
2021-07-18 19:30:51 +0200 | <davean> | Yes but a function like "please_compute_the_cosine_of_t" might not |
2021-07-18 19:30:56 +0200 | <davean> | you can't rely on your code being agreeable! |
2021-07-18 19:31:26 +0200 | <oso> | true; on the contrary, i find my code to be most disagreeable |
2021-07-18 19:33:00 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Remote host closed the connection) |
2021-07-18 19:33:23 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-07-18 19:37:38 +0200 | mnrmnaugh | (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) (Quit: Leaving) |
2021-07-18 19:40:04 +0200 | <dsal> | In go, we use Must as a prefix for things that will panic if they don't work. |
2021-07-18 19:40:34 +0200 | <davean> | Ugh, like usuall go gets it wrong |
2021-07-18 19:40:45 +0200 | <davean> | "must" should make it a total function that matches the specification |
2021-07-18 19:40:53 +0200 | ph88^ | (~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de) (Ping timeout: 258 seconds) |
2021-07-18 19:41:05 +0200 | <davean> | What part of "must" did they understand? |
2021-07-18 19:41:18 +0200 | <monochrom> | mustHead (x:xs) = x \∩/ |
2021-07-18 19:42:00 +0200 | <davean> | monochrom: thats exactly the sort of thing "must" must fix! |
2021-07-18 19:42:20 +0200 | <monochrom> | mustFix f = let x = f x in x |
2021-07-18 19:42:40 +0200 | azeem | (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Ping timeout: 268 seconds) |
2021-07-18 19:43:01 +0200 | neurocyte | (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat) |
2021-07-18 19:43:21 +0200 | azeem | (~azeem@176.200.195.170) |
2021-07-18 19:43:49 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 19:43:52 +0200 | oso | (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) (Ping timeout: 246 seconds) |
2021-07-18 19:44:14 +0200 | <monochrom> | OTOH perhaps "if they don't work" means "you can assume it works, only a system bug would be a reason why it doesn't, which is not your responsibility" |
2021-07-18 19:44:57 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 19:45:42 +0200 | <davean> | lets just always assume it works. |
2021-07-18 19:45:43 +0200 | <monochrom> | OTOOH under multiple-world non-determinism and the convention "ignore those worlds that don't survive", the function works in all surviving worlds, so the modal quantifier "must" is right. |
2021-07-18 19:45:57 +0200 | <davean> | Yah, now you're getting it |
2021-07-18 19:46:03 +0200 | <monochrom> | :) |
2021-07-18 19:46:53 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-07-18 19:47:11 +0200 | <davean> | mustSort = randomizeOrder |
2021-07-18 19:47:47 +0200 | <dsal> | must sort eventually |
2021-07-18 19:48:06 +0200 | <davean> | dsal: No, quantum bogosort sorts in O(n) |
2021-07-18 19:48:39 +0200 | <dsal> | I've been meaning to get a new computer for a while. Might as well be a quantum one. |
2021-07-18 19:48:52 +0200 | h98 | (~h98@187.83.249.216.dyn.smithville.net) |
2021-07-18 19:49:13 +0200 | <davean> | So, launch missiles is in IO, whats the monad of universes? |
2021-07-18 19:49:43 +0200 | <monochrom> | [] |
2021-07-18 19:50:22 +0200 | <monochrom> | Dr. Strange and the LogicT monad transformer of madness |
2021-07-18 19:50:22 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Remote host closed the connection) |
2021-07-18 19:50:28 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-07-18 19:51:08 +0200 | <h98> | dumb question, is there a way to avoid the inner parentheses in the type application "@(f (g a b))"? something like @(f $ g a b) on the type-level? |
2021-07-18 19:51:19 +0200 | __monty__ | (~toonn@user/toonn) |
2021-07-18 19:51:44 +0200 | <monochrom> | No. |
2021-07-18 19:52:24 +0200 | turlando_ | (~turlando@93-42-250-112.ip89.fastwebnet.it) (Quit: Leaving) |
2021-07-18 19:52:33 +0200 | <dmj`> | type Foo f g a b = f (g a b) -- @(Foo f g a b) ... maybe? |
2021-07-18 19:52:37 +0200 | oso | (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) |
2021-07-18 19:52:37 +0200 | turlando_ | (~turlando@93-42-250-112.ip89.fastwebnet.it) |
2021-07-18 19:54:21 +0200 | <h98> | oooh |
2021-07-18 19:54:39 +0200 | <davean> | I guess the Haskellish form would be "sort = must (\xs -> all id . map (\(x,y) -> x <= y) . zip xs $ tail xs) randomizeOrder |
2021-07-18 19:54:40 +0200 | <h98> | yes duh, that works...thanks |
2021-07-18 19:55:10 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2021-07-18 19:56:16 +0200 | qrpnxz | (~qrpnxz@user/qrpnxz) (Ping timeout: 272 seconds) |
2021-07-18 19:57:35 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 19:59:50 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 20:00:33 +0200 | azeem | (~azeem@176.200.195.170) (Ping timeout: 268 seconds) |
2021-07-18 20:00:56 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 20:02:24 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 268 seconds) |
2021-07-18 20:03:38 +0200 | <guest61> | update message is Nothing |
2021-07-18 20:03:45 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-07-18 20:05:23 +0200 | <h98> | I can't get over that trick by the way davean, no more nested parentheses in any of my type expressions! |
2021-07-18 20:05:35 +0200 | <guest61> | update message is Nothing |
2021-07-18 20:05:36 +0200 | <davean> | Yu mean dmj`? |
2021-07-18 20:05:55 +0200 | <h98> | sorry yes, dmj` hah |
2021-07-18 20:06:06 +0200 | <davean> | *I'd* nest the parens because its less indirection :-p |
2021-07-18 20:06:22 +0200 | Guest77 | (~Guest77@2402:e280:2117:297:ecf8:f374:8704:f843) (Quit: Client closed) |
2021-07-18 20:06:35 +0200 | <dmj`> | "One weird trick to remove your parentheses... lisp programmers *hate* him" |
2021-07-18 20:06:36 +0200 | <davean> | (Not if the alias had semantics weight of its own though) |
2021-07-18 20:09:49 +0200 | Guest31 | (~Guest31@76-236-222-208.lightspeed.tukrga.sbcglobal.net) (Quit: Client closed) |
2021-07-18 20:10:42 +0200 | qrpnxz | (~qrpnxz@user/qrpnxz) |
2021-07-18 20:10:50 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2021-07-18 20:11:57 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2021-07-18 20:15:10 +0200 | azeem | (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) |
2021-07-18 20:15:54 +0200 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
2021-07-18 20:21:57 +0200 | Atum_ | (~IRC@user/atum/x-2392232) (Ping timeout: 250 seconds) |
2021-07-18 20:24:54 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 20:25:56 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-07-18 20:26:22 +0200 | burnside_ | (~burnsides@client-8-82.eduroam.oxuni.org.uk) |
2021-07-18 20:27:24 +0200 | burnside_ | (~burnsides@client-8-82.eduroam.oxuni.org.uk) (Remote host closed the connection) |
2021-07-18 20:29:27 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 265 seconds) |
2021-07-18 20:31:30 +0200 | burnsidesLlama | (~burnsides@client-8-82.eduroam.oxuni.org.uk) |
2021-07-18 20:34:52 +0200 | chris_ | (~chris@81.96.113.213) |
2021-07-18 20:36:19 +0200 | burnsidesLlama | (~burnsides@client-8-82.eduroam.oxuni.org.uk) (Ping timeout: 268 seconds) |
2021-07-18 20:37:34 +0200 | ph88^ | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
2021-07-18 20:40:14 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Remote host closed the connection) |
2021-07-18 20:40:37 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-07-18 20:47:25 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 268 seconds) |
2021-07-18 20:49:11 +0200 | h98 | (~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed) |
2021-07-18 20:49:45 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
2021-07-18 20:53:41 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 20:54:44 +0200 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Read error: Connection reset by peer) |
2021-07-18 20:55:12 +0200 | mjs2600 | (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) |
2021-07-18 20:58:45 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
2021-07-18 20:58:52 +0200 | <guest61> | update message is Nothing |
2021-07-18 21:03:47 +0200 | <monochrom> | guest61: What is all that about? |
2021-07-18 21:04:12 +0200 | <guest61> | update message is Nothing |
2021-07-18 21:04:17 +0200 | ChanServ | +o monochrom |
2021-07-18 21:04:23 +0200 | monochrom | +b *!*@47.245.54.240 |
2021-07-18 21:04:23 +0200 | guest61 | monochromguest61 |
2021-07-18 21:04:36 +0200 | monochrom | -o monochrom |
2021-07-18 21:05:49 +0200 | Pickchea | (~private@user/pickchea) |
2021-07-18 21:05:53 +0200 | Null_A | (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) |
2021-07-18 21:07:08 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 258 seconds) |
2021-07-18 21:09:49 +0200 | Atum_ | (~IRC@user/atum/x-2392232) |
2021-07-18 21:12:25 +0200 | <tom__> | So if you are modelling a stochastic process as a comonad how do you get the randomness for each step if IO is a monad |
2021-07-18 21:13:08 +0200 | Guest9 | (~Guest9@103.250.139.40) (Quit: Connection closed) |
2021-07-18 21:13:09 +0200 | <dsal> | Guest9: update message is (Just Quit) |
2021-07-18 21:13:32 +0200 | dsal | is too late and missed |
2021-07-18 21:13:51 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 21:14:33 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Ping timeout: 268 seconds) |
2021-07-18 21:17:29 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 21:18:07 +0200 | <davean> | tom__: or randomness is a source for the cell |
2021-07-18 21:19:17 +0200 | <tom__> | davean: Right but you can't product a cell without being in IO then? |
2021-07-18 21:19:20 +0200 | <tom__> | produce |
2021-07-18 21:20:11 +0200 | <davean> | tom__: I mean, you don't need to be in IO to step a pseudo random function |
2021-07-18 21:20:30 +0200 | <davean> | You can do all sorts of things |
2021-07-18 21:20:48 +0200 | <davean> | the particular one I'd start with is taking one seed value, and splitting a prf to all the "cells" |
2021-07-18 21:21:10 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds) |
2021-07-18 21:22:59 +0200 | <dsal> | > randomRs (1, 11) $ mkStdGen 42 |
2021-07-18 21:23:00 +0200 | <lambdabot> | [1,8,1,3,2,8,5,3,6,10,9,3,10,11,9,2,1,11,3,3,9,3,3,9,1,7,9,8,6,7,4,2,7,1,3,2... |
2021-07-18 21:25:31 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
2021-07-18 21:27:44 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-07-18 21:28:07 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-07-18 21:28:18 +0200 | <tom__> | Does the Random package allow sampling from a normal distribution? |
2021-07-18 21:28:53 +0200 | <geekosaur> | yes, as of 1.2 |
2021-07-18 21:29:02 +0200 | <tom__> | thanks |
2021-07-18 21:29:19 +0200 | <davean> | tom__: I mean it provides random numbers, sampling from is a way to *use* randomness |
2021-07-18 21:29:19 +0200 | <tom__> | Does "Constructs a StdGen deterministically." mean - not randomly? |
2021-07-18 21:29:58 +0200 | <davean> | Uh, the construction is never random persay |
2021-07-18 21:29:59 +0200 | <geekosaur> | if the input you give it is deterministic then yes |
2021-07-18 21:30:00 +0200 | <dsal> | > randomRs (1, 11) $ mkStdGen 42 -- tom__ yes, it means it'll reproduce the same sequence |
2021-07-18 21:30:01 +0200 | <lambdabot> | [1,8,1,3,2,8,5,3,6,10,9,3,10,11,9,2,1,11,3,3,9,3,3,9,1,7,9,8,6,7,4,2,7,1,3,2... |
2021-07-18 21:30:11 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
2021-07-18 21:30:20 +0200 | MorrowM | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 255 seconds) |
2021-07-18 21:31:16 +0200 | Morrow | (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
2021-07-18 21:31:21 +0200 | <tom__> | Ah ok so mkStdGen enables "decoupling" between IO and your computation |
2021-07-18 21:31:23 +0200 | mdunnio | (~textual@205.178.28.97) |
2021-07-18 21:31:47 +0200 | <dsal> | Yes. There are MonadIO variants in there as well. |
2021-07-18 21:31:58 +0200 | <geekosaur> | you can also get a randomly generated seed from IO and do the rest purely |
2021-07-18 21:32:11 +0200 | <tom__> | aha thanks |
2021-07-18 21:32:47 +0200 | <tom__> | by purely do you mean - not with IO? |
2021-07-18 21:32:48 +0200 | <davean> | Note there are plenty of monadic forms that aren't IO also, for prfs |
2021-07-18 21:33:22 +0200 | <geekosaur> | yes |
2021-07-18 21:33:27 +0200 | Atum_ | (~IRC@user/atum/x-2392232) (Ping timeout: 250 seconds) |
2021-07-18 21:33:52 +0200 | <davean> | I'm not really a fan of the 1.2 changes :/ |
2021-07-18 21:34:21 +0200 | <davean> | tom__: if you want good sampling, see random-fu and such BTW |
2021-07-18 21:34:31 +0200 | <davean> | distributions is seperate from random numbers |
2021-07-18 21:34:57 +0200 | <geekosaur> | on the one hand it cleaned up my use of the mersenne twister a bit; on the other I found 1.1 much easier |
2021-07-18 21:35:15 +0200 | Sgeo | (~Sgeo@user/sgeo) (Quit: Leaving) |
2021-07-18 21:35:17 +0200 | <geekosaur> | gripping hand I didn't have to fake normal distributions any more |
2021-07-18 21:35:31 +0200 | <davean> | geekosaur: I don't think the 1.2 design is valid :/ I think theres some actual contradictions in its design, but thats far too long a discussion for here and now |
2021-07-18 21:36:13 +0200 | <davean> | I'm actually rather upset about 1.2 |
2021-07-18 21:36:27 +0200 | <davean> | Not that 1.1 was great |
2021-07-18 21:36:34 +0200 | mdunnio | (~textual@205.178.28.97) (Quit: Textual IRC Client: www.textualapp.com) |
2021-07-18 21:37:25 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-07-18 21:37:50 +0200 | mdunnio | (~textual@205.178.28.97) |
2021-07-18 21:38:13 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2021-07-18 21:38:50 +0200 | <tom__> | I'm using MWC-probability |
2021-07-18 21:39:05 +0200 | Erutuon | (~Erutuon@user/erutuon) |
2021-07-18 21:39:53 +0200 | <mdunnio> | hello! is anyone aware of any up-to-date guides on how to use LLVM backend with GHC? I'm looking to utilize GHC 8.10.5's first class support for M1, but I'm not exactly sure where to get started. |
2021-07-18 21:40:14 +0200 | Atum_ | (~IRC@user/atum/x-2392232) |
2021-07-18 21:41:18 +0200 | <geekosaur> | using it is just doing "ghc-options: -fllvm" in the cabal file. but I think 8.10.5 is known buggy |
2021-07-18 21:41:44 +0200 | <mdunnio> | oh interesting. ok |
2021-07-18 21:42:12 +0200 | <mdunnio> | I'll try that out |
2021-07-18 21:42:24 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
2021-07-18 21:42:26 +0200 | <geekosaur> | and true first class (-fasm) support is supposed to come in 9.2.1 |
2021-07-18 21:42:45 +0200 | falafel | (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 255 seconds) |
2021-07-18 21:42:55 +0200 | <geekosaur> | there's a prerelease available in ghcup but it has some known bugs |
2021-07-18 21:43:22 +0200 | <davean> | Yah, on one hand llvm is kinda first class, on the other, LLVM isn't a general system and we don't fit its preconception of being C |
2021-07-18 21:43:30 +0200 | <davean> | So it'll never be quite right to use LLVM |
2021-07-18 21:43:48 +0200 | <davean> | You'll always eat a penalty of LLVM not being a general system |
2021-07-18 21:44:22 +0200 | Erutuon | (~Erutuon@user/erutuon) (Ping timeout: 265 seconds) |
2021-07-18 21:44:33 +0200 | chris_ | (~chris@81.96.113.213) (Remote host closed the connection) |
2021-07-18 21:44:42 +0200 | <mdunnio> | penalty as in performance, or just support generally? |
2021-07-18 21:44:56 +0200 | <geekosaur> | both |
2021-07-18 21:44:57 +0200 | <davean> | More the former, but there CAN be a few issues with the later |
2021-07-18 21:45:07 +0200 | <davean> | LLVM is very much a C IR |
2021-07-18 21:45:20 +0200 | <davean> | It claims to be general, but frankly, thats wishful thinking |
2021-07-18 21:45:22 +0200 | <geekosaur> | llvm doesn't understand the cps-encoded code ghc emits and pessimizes it |
2021-07-18 21:45:26 +0200 | <davean> | it has a ton of assumptions baked in at hte bottom |
2021-07-18 21:45:37 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-07-18 21:45:43 +0200 | <Rembane> | So every language that looks like C if you squint works for LLVM? |
2021-07-18 21:45:57 +0200 | <davean> | Rembane: Close, and LLVM works more generally than that, just not well |
2021-07-18 21:46:10 +0200 | <davean> | LLVM can't think some normal thoughts, and never will be able to |
2021-07-18 21:46:13 +0200 | <mdunnio> | I see |
2021-07-18 21:46:25 +0200 | <Rembane> | davean: Got it. Doesn't sound too bad if your needs are C et al |
2021-07-18 21:46:26 +0200 | <davean> | Theres ways to make them "work" because the turing tarpit, but that doesn't mean they work well |
2021-07-18 21:46:37 +0200 | <davean> | Rembane: Yah, its actually great for that |
2021-07-18 21:46:48 +0200 | <davean> | Rembane: I mean you make sometihng better for one thing, usually you make it worse for another |
2021-07-18 21:46:58 +0200 | <davean> | the only issue I see here is the claim that its general, which it just clearly isn't |
2021-07-18 21:47:16 +0200 | <davean> | but! It works pretty well for GHC for most thing |
2021-07-18 21:47:22 +0200 | <davean> | so, go use it |
2021-07-18 21:47:31 +0200 | <davean> | Its actually the best option for a few specific cases |
2021-07-18 21:47:38 +0200 | <davean> | and you can do funky stuff to use it only where it is the best ... |
2021-07-18 21:48:05 +0200 | <davean> | So like, its good to have, I'm not trying to bash it, just explain what one might feel about "first class ness" |
2021-07-18 21:48:32 +0200 | shailangsa | (~shailangs@host86-186-196-229.range86-186.btcentralplus.com) (Ping timeout: 258 seconds) |
2021-07-18 21:48:36 +0200 | <mdunnio> | yeah, to be fair, I have a pretty broad interpretation of what "first class support" even means |
2021-07-18 21:48:58 +0200 | <Rembane> | davean: Totally, it's trade offs all the way down. |
2021-07-18 21:49:07 +0200 | <mdunnio> | at this point, I'm willing to take "does it work at all?" |
2021-07-18 21:49:14 +0200 | <davean> | mdunnio: ok! |
2021-07-18 21:49:16 +0200 | <davean> | so, it does work! |
2021-07-18 21:49:32 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Client Quit) |
2021-07-18 21:50:14 +0200 | <davean> | mdunnio: So my understanding is that the nix stuff is still the best option |
2021-07-18 21:50:39 +0200 | niemand | (~niemand@p2e52f785.dip0.t-ipconnect.de) |
2021-07-18 21:50:43 +0200 | niemand | (~niemand@p2e52f785.dip0.t-ipconnect.de) () |
2021-07-18 21:50:57 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-07-18 21:51:02 +0200 | <davean> | (I uh, keep an arms length from Apple, I just uh, make sure we have CI for it) |
2021-07-18 21:51:56 +0200 | <davean> | Talking of which, yah rossetta, uh, don't run a ton of x86 binaries. |
2021-07-18 21:53:05 +0200 | <mdunnio> | fair |
2021-07-18 21:53:10 +0200 | <mdunnio> | yeah, that's the plan |
2021-07-18 21:53:38 +0200 | <davean> | yah, its a problem (I don't know if you know, but it doesn't clear the cache, so you'll run out of disk space and be stuck unless you disable SIP) |
2021-07-18 21:53:46 +0200 | <mdunnio> | I haven't actually worked much with nix yet, might be time to experiment |
2021-07-18 21:54:01 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 268 seconds) |
2021-07-18 21:54:19 +0200 | <davean> | mdunnio: So, I'm not sure they want me to refer you, but the bigest expert I know in this area is moritz angermann |
2021-07-18 21:54:31 +0200 | <davean> | I think we're due for a writeup on the state of M1 stuff |
2021-07-18 21:54:42 +0200 | <davean> | It would be a public service |
2021-07-18 21:55:26 +0200 | <mdunnio> | I recall moritz wrote up a bunch about cross-compiling for ARM. I did some rpi work back a year or so ago |
2021-07-18 21:56:01 +0200 | <davean> | I'll admit I was taking care of a lot of the mac stuff and then moritz stepped in and not being a mac user I disowned it as fast as possible |
2021-07-18 21:56:23 +0200 | <mdunnio> | seems like the appropriate time to pass the torch |
2021-07-18 21:56:51 +0200 | <mdunnio> | ok, I'm going to experiment a little bit and see if I can get somewhere. I appreciate the help |
2021-07-18 21:56:53 +0200 | P1RATEZ | (piratez@user/p1ratez) (Remote host closed the connection) |
2021-07-18 21:57:02 +0200 | <davean> | Someone needed to do it, but better it be someone who loves it and has base skills for it |
2021-07-18 21:57:10 +0200 | mdunnio | (~textual@205.178.28.97) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-07-18 21:58:41 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-07-18 21:58:44 +0200 | yauhsien_ | (~yauhsien@61-231-35-149.dynamic-ip.hinet.net) |
2021-07-18 21:59:01 +0200 | <davean> | Hum, I failed to full say what I should have above - which is that the CI config is where that knowlege should be accessible |
2021-07-18 21:59:04 +0200 | <davean> | well I'm a bad helper |
2021-07-18 21:59:34 +0200 | yauhsien | (~yauhsien@61-231-25-245.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
2021-07-18 22:00:56 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 255 seconds) |
2021-07-18 22:05:07 +0200 | juhp | (~juhp@128.106.188.66) (Ping timeout: 268 seconds) |
2021-07-18 22:05:31 +0200 | Lycurgus | (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
2021-07-18 22:06:54 +0200 | zmt00 | (~zmt00@user/zmt00) (Quit: Gone.) |
2021-07-18 22:07:20 +0200 | juhp | (~juhp@128.106.188.66) |
2021-07-18 22:09:14 +0200 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 258 seconds) |
2021-07-18 22:10:19 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2021-07-18 22:11:25 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-07-18 22:19:32 +0200 | shailangsa | (~shailangs@host86-145-14-107.range86-145.btcentralplus.com) |
2021-07-18 22:19:56 +0200 | Atum_ | (~IRC@user/atum/x-2392232) (Quit: Atum_) |
2021-07-18 22:19:59 +0200 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) |
2021-07-18 22:21:54 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-07-18 22:22:21 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 22:22:32 +0200 | shailangsa | (~shailangs@host86-145-14-107.range86-145.btcentralplus.com) () |
2021-07-18 22:22:34 +0200 | peterhil | (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
2021-07-18 22:24:37 +0200 | zangi | (~zangi@103.154.230.230) |
2021-07-18 22:26:44 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
2021-07-18 22:29:07 +0200 | sm | wonders why the above thread jumped tracks from LLVM to apple .. do these go together ? |
2021-07-18 22:29:38 +0200 | chris_ | (~chris@81.96.113.213) |
2021-07-18 22:29:43 +0200 | <sm> | and , #ghc is also a good source of info |
2021-07-18 22:30:24 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
2021-07-18 22:31:47 +0200 | <davean> | sm: it was about Apple |
2021-07-18 22:31:49 +0200 | <geekosaur> | sm: M1 == Apple Silicon |
2021-07-18 22:31:55 +0200 | <davean> | the point of LLVM there was to get M1 support |
2021-07-18 22:32:08 +0200 | <davean> | which we get via LLVM or the native code gen, the native code gen isn't until 9.2 tohugh |
2021-07-18 22:32:30 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 22:32:35 +0200 | <zangi> | does laziness consume more memory than strict evaluation? |
2021-07-18 22:32:42 +0200 | Topsi | (~Tobias@dyndsl-095-033-088-035.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
2021-07-18 22:32:45 +0200 | <davean> | zangi: no, sometimes far less |
2021-07-18 22:32:46 +0200 | <dminuoso> | Yes. No. |
2021-07-18 22:33:38 +0200 | Atum_ | (~IRC@user/atum/x-2392232) |
2021-07-18 22:33:40 +0200 | <zangi> | what about the thunks? |
2021-07-18 22:33:42 +0200 | <dminuoso> | zangi: In order to provide lazyness, the lazy expression has to have some kind of memory representation. That costs allocation and indirection. |
2021-07-18 22:33:44 +0200 | <davean> | zangi: Theres a few cases where it uses more, the main one is special cased in the GC |
2021-07-18 22:34:07 +0200 | <davean> | zangi: whats smaller, the infinite list, or the thunk [1..]? |
2021-07-18 22:34:11 +0200 | <dminuoso> | zangi: But this is usually offset having low residency when working on large data. |
2021-07-18 22:34:17 +0200 | jneira_ | (~jneira_@28.red-80-28-169.staticip.rima-tde.net) |
2021-07-18 22:34:33 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2021-07-18 22:34:45 +0200 | <dminuoso> | I think the fundamental problem is that "memory consumption" is not something you can put as a single number metric. |
2021-07-18 22:37:37 +0200 | Hecate_ | Hecate |
2021-07-18 22:37:44 +0200 | <dminuoso> | For instance: Your program might process a 20TiB data set but have only 50MiB of memory residency at any given time. |
2021-07-18 22:37:47 +0200 | Hecate | (~mariposa@163.172.211.189) (Changing host) |
2021-07-18 22:37:47 +0200 | Hecate | (~mariposa@user/hecate) |
2021-07-18 22:38:21 +0200 | slep | (~slep@cpc150002-brnt4-2-0-cust437.4-2.cable.virginm.net) (Read error: Connection reset by peer) |
2021-07-18 22:38:39 +0200 | <dminuoso> | But this could still have a lot of allocations internally |
2021-07-18 22:38:52 +0200 | slep | (~slep@cpc150002-brnt4-2-0-cust437.4-2.cable.virginm.net) |
2021-07-18 22:39:22 +0200 | <dminuoso> | Lazyness also produces a level of indirection, which might hurt locality |
2021-07-18 22:39:37 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2021-07-18 22:40:10 +0200 | <davean> | or it can create locality |
2021-07-18 22:40:46 +0200 | <lechner> | Hi, why are the dolla signs needed in these two lines, please? https://dpaste.org/41S0#L94,95 |
2021-07-18 22:40:59 +0200 | ph88^ | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
2021-07-18 22:41:03 +0200 | <dminuoso> | lechner: They are not needed. |
2021-07-18 22:41:17 +0200 | <dminuoso> | lechner: You can also use parens to associate the right hand side of it. |
2021-07-18 22:41:31 +0200 | <dminuoso> | host $ scheduler config is equivalent to: host (schedular config) |
2021-07-18 22:41:42 +0200 | <lechner> | can i use map, too? |
2021-07-18 22:43:12 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 22:43:47 +0200 | <lechner> | dminuoso: I get the following errors when I take out the dollar signs https://dpaste.org/mM0q |
2021-07-18 22:44:10 +0200 | <dminuoso> | lechner: Like I said. |
2021-07-18 22:44:16 +0200 | <dsal> | Does anyone know how to do something interesting with Control.Monad.Trans.Select ? There doesn't seem to be much written about it. |
2021-07-18 22:44:21 +0200 | <dminuoso> | `host $ scheduler config` is equivalent to `host (scheduler config) |
2021-07-18 22:44:35 +0200 | renzhi | (~xp@2607:fa49:655f:a700::8b9f) (Ping timeout: 255 seconds) |
2021-07-18 22:44:50 +0200 | <lechner> | okay, why are the parentheses needed, please? |
2021-07-18 22:44:56 +0200 | <davean> | lechner: to parse it |
2021-07-18 22:45:08 +0200 | <geekosaur> | $ is "backwards parentheses |
2021-07-18 22:45:15 +0200 | <lechner> | that i know |
2021-07-18 22:45:35 +0200 | <lechner> | i think it's a (slightly) higher level question |
2021-07-18 22:45:39 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-07-18 22:45:40 +0200 | <davean> | lechner: so things (sorta) group to the left by default |
2021-07-18 22:45:42 +0200 | <geekosaur> | so if you remove a $ you usually have to insert the parenheses it was replacing. here, for (scheduler config) |
2021-07-18 22:45:52 +0200 | <davean> | lechner: you need to put it into the grammer as a group, not seperate things |
2021-07-18 22:46:03 +0200 | <lechner> | my JSON declarations are not strict |
2021-07-18 22:46:22 +0200 | <davean> | WHo said anything about strictness? |
2021-07-18 22:46:53 +0200 | <davean> | This is about grammar |
2021-07-18 22:47:04 +0200 | <monochrom> | The computer is not telepathic. You can't just write "f g h" and "t x y" and have the computer guess "oh you mean (f g) h and t (x y)". |
2021-07-18 22:47:37 +0200 | <lechner> | not even when asking for a final result (printf) ? |
2021-07-18 22:47:55 +0200 | <monochrom> | But there is a little bit of left associativity so "f g h" means "(f g) h". |
2021-07-18 22:48:24 +0200 | <lechner> | why is that evaluated in my case, though? |
2021-07-18 22:48:34 +0200 | nate1 | (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 22:48:44 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 252 seconds) |
2021-07-18 22:48:56 +0200 | acidjnk | (~acidjnk@p200300d0c72b9531605cd8043a67e221.dip0.t-ipconnect.de) |
2021-07-18 22:49:09 +0200 | ph88^ | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
2021-07-18 22:52:20 +0200 | <nf> | you usually have to evaluate things in order to print them |
2021-07-18 22:52:28 +0200 | shailangsa | (~shailangs@host86-145-14-107.range86-145.btcentralplus.com) |
2021-07-18 22:53:32 +0200 | <davean> | lechner: it doesn't know printf is your final result even |
2021-07-18 22:53:34 +0200 | ph88^ | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 246 seconds) |
2021-07-18 22:53:36 +0200 | <lechner> | but is that done inside the parentheses around the argument to printf? |
2021-07-18 22:53:44 +0200 | <davean> | Its not "done inside" |
2021-07-18 22:53:51 +0200 | <davean> | you're saying what is applied to what |
2021-07-18 22:54:38 +0200 | <lechner> | i think i misunderstood partial application |
2021-07-18 22:56:00 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-07-18 22:57:54 +0200 | slack1256 | (~slack1256@191.125.28.13) |
2021-07-18 22:58:39 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-07-18 22:59:03 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-07-18 23:02:28 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Ping timeout: 268 seconds) |
2021-07-18 23:02:30 +0200 | <davean> | Definition is not execution |
2021-07-18 23:02:52 +0200 | <davean> | lechner: consider the option of doign that like with (.) |
2021-07-18 23:02:58 +0200 | <davean> | *line |
2021-07-18 23:03:46 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
2021-07-18 23:04:47 +0200 | <maerwald> | monochrom: wingman can guess what you mean, haha |
2021-07-18 23:05:02 +0200 | <maerwald> | if your types are correct, that is |
2021-07-18 23:06:36 +0200 | <maerwald> | now you just need something to guess the types for you |
2021-07-18 23:07:16 +0200 | <maerwald> | and then something that guesses what the program should do |
2021-07-18 23:07:26 +0200 | <maerwald> | we'll have no engineering problems to solve anymore |
2021-07-18 23:07:43 +0200 | maerwald | goes packing |
2021-07-18 23:07:46 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
2021-07-18 23:07:58 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-07-18 23:08:24 +0200 | <dexterfoo> | can I convert a 'Text' value directly into an Int? |
2021-07-18 23:08:27 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 23:09:05 +0200 | Guest31 | (~Guest31@76-236-222-208.lightspeed.tukrga.sbcglobal.net) |
2021-07-18 23:11:07 +0200 | <Hecate> | % import Data.Text.Read |
2021-07-18 23:11:08 +0200 | <yahb> | Hecate: |
2021-07-18 23:11:12 +0200 | <Hecate> | % decimal "3" |
2021-07-18 23:11:13 +0200 | <yahb> | Hecate: ; <interactive>:223:1: error:; Ambiguous occurrence `decimal'; It could refer to; either `Data.Text.Read.decimal', imported from `Data.Text.Read'; or `Numeric.Lens.decimal', imported from `Numeric.Lens' |
2021-07-18 23:11:20 +0200 | <Hecate> | fair enough |
2021-07-18 23:11:20 +0200 | <Hecate> | so |
2021-07-18 23:11:25 +0200 | oso | (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) (Ping timeout: 246 seconds) |
2021-07-18 23:11:30 +0200 | <monochrom> | fib :: Int -> Int -> Int -> Int -> Int let wingman guess what I want! |
2021-07-18 23:11:32 +0200 | <Hecate> | Data.Text.Read.decimal "3" |
2021-07-18 23:11:35 +0200 | <Hecate> | % Data.Text.Read.decimal "3" |
2021-07-18 23:11:35 +0200 | <yahb> | Hecate: ; <interactive>:224:24: error:; * Couldn't match type `[Char]' with `Data.Text.Internal.Text'; Expected: Data.Text.Internal.Text; Actual: GHC.Base.String; * In the first argument of `Data.Text.Read.decimal', namely `"3"'; In the expression: Data.Text.Read.decimal "3"; In an equation for `it': it = Data.Text.Read.decimal "3" |
2021-07-18 23:11:39 +0200 | <Hecate> | curse |
2021-07-18 23:11:46 +0200 | <Hecate> | % import qualified Data.Text as T |
2021-07-18 23:11:46 +0200 | <yahb> | Hecate: |
2021-07-18 23:11:52 +0200 | <Hecate> | % Data.Text.Read.decimal (T.pack "3") |
2021-07-18 23:11:53 +0200 | <yahb> | Hecate: Right (3,"") |
2021-07-18 23:11:57 +0200 | <Hecate> | % Data.Text.Read.decimal (T.pack "3x") |
2021-07-18 23:11:57 +0200 | <yahb> | Hecate: Right (3,"x") |
2021-07-18 23:12:08 +0200 | <Hecate> | dexterfoo: check this ^ |
2021-07-18 23:13:53 +0200 | <lechner> | davean: how do i use . in that line, please? |
2021-07-18 23:15:08 +0200 | <maerwald> | sometimes I wonder why I even write documentation... all it does is confuse me 2 weeks later |
2021-07-18 23:15:39 +0200 | <maerwald> | "I tried to figure out what this does, but didn't manage. But I wrote down my crippled thought regardless" |
2021-07-18 23:15:45 +0200 | <dexterfoo> | Hecate: thanks! |
2021-07-18 23:16:28 +0200 | <Hecate> | maerwald: because you don't know how to talk to yourself yet :P |
2021-07-18 23:16:34 +0200 | <Hecate> | dexterfoo: you're welcome :) |
2021-07-18 23:16:40 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 246 seconds) |
2021-07-18 23:16:44 +0200 | <maerwald> | Hecate: preciousssss |
2021-07-18 23:17:48 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 23:18:40 +0200 | oso | (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) |
2021-07-18 23:20:32 +0200 | <lechner> | Hi, in printf "%s:%d" $ map ($ struct) [stringAccessor intAccessor] does map work only when the return types are the same? |
2021-07-18 23:20:55 +0200 | <lechner> | actually, there is a comma in there |
2021-07-18 23:21:05 +0200 | <geekosaur> | all elements of a list must have the same type, yes |
2021-07-18 23:22:27 +0200 | <lechner> | thanks. i could prosumably use 'show' |
2021-07-18 23:23:05 +0200 | <geekosaur> | that's the usual way to do it, yes |
2021-07-18 23:23:14 +0200 | <geekosaur> | don't forget to change the %d to %s |
2021-07-18 23:24:18 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-07-18 23:24:18 +0200 | <lechner> | at some point, that tips the scale toward putStrLn |
2021-07-18 23:24:30 +0200 | <geekosaur> | yes |
2021-07-18 23:25:05 +0200 | smtnet3 | (~asdfasdfa@202.36.244.28) (Read error: Connection reset by peer) |
2021-07-18 23:26:05 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Remote host closed the connection) |
2021-07-18 23:26:17 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
2021-07-18 23:26:31 +0200 | smtnet3 | (~asdfasdfa@202.36.244.28) |
2021-07-18 23:27:08 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
2021-07-18 23:27:08 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 268 seconds) |
2021-07-18 23:27:28 +0200 | <dsal> | lechner: You could make a function that does the "%s:%d" part pretty easily and NamedFieldPuns or RecordWildCards would make it fairly short. |
2021-07-18 23:28:16 +0200 | aegon | (~mike@174.127.249.180) |
2021-07-18 23:28:22 +0200 | mikoto-chan | (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 268 seconds) |
2021-07-18 23:29:28 +0200 | <lechner> | dsal: that sounds like a great idea! let's do that in one minute please. |
2021-07-18 23:30:04 +0200 | <lechner> | meanwhile i am learning. why doesn't that work: printf "Expecting scheduler on %s:%s.\n" $ map ($ scheduler config) [Connection.host, show . Connection.listen_port] |
2021-07-18 23:31:42 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-07-18 23:31:55 +0200 | <lechner> | the point here is the partial application of 'show' |
2021-07-18 23:32:01 +0200 | <[exa]> | lechner: what's the error? |
2021-07-18 23:32:06 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 255 seconds) |
2021-07-18 23:32:32 +0200 | <lechner> | https://paste.debian.net/1204829/ |
2021-07-18 23:32:44 +0200 | <geekosaur> | I think you have multiple problems there |
2021-07-18 23:33:12 +0200 | <geekosaur> | for one, a list is not a collection of applications |
2021-07-18 23:33:16 +0200 | <dsal> | lechner: A list isn't two arguments. |
2021-07-18 23:33:26 +0200 | <dsal> | Or phrased how geekosaur said it. |
2021-07-18 23:33:55 +0200 | <[exa]> | lechner: why still keep printf? (just curious) |
2021-07-18 23:34:19 +0200 | <lechner> | just chewing on other things :) |
2021-07-18 23:34:54 +0200 | <lechner> | [exa]: i am not so fond of ++ "[" ++ exa ++ "]" ++ .... |
2021-07-18 23:35:14 +0200 | <geekosaur> | there is concat |
2021-07-18 23:35:15 +0200 | <oso> | `concat`? |
2021-07-18 23:35:43 +0200 | <dsal> | I don't use ++ in general, but I do use fold for logging. |
2021-07-18 23:36:04 +0200 | <monochrom> | $ kills printf type inference. Seriously. Just don't use $. |
2021-07-18 23:36:05 +0200 | royo | (~royo@user/royo) |
2021-07-18 23:36:42 +0200 | <[exa]> | lechner: `concat [all, this, stuff]` is a widely used pattern. Esp good when combined with `intercalate` |
2021-07-18 23:37:01 +0200 | <lechner> | monochrom: for some reason it seemed i needed $ |
2021-07-18 23:37:37 +0200 | ph88^ | (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
2021-07-18 23:37:40 +0200 | <dsal> | lechner: does it work with $ ? |
2021-07-18 23:37:43 +0200 | <monochrom> | Sure, "map ($ x) [f, g, h]" has just cause. I am referring to "printf fmt $ ..." |
2021-07-18 23:37:57 +0200 | <lechner> | okay, i'll change that but why is my partial application wrong. could someone please restate? |
2021-07-18 23:37:57 +0200 | <dsal> | :t ($) |
2021-07-18 23:37:58 +0200 | <lambdabot> | (a -> b) -> a -> b |
2021-07-18 23:38:17 +0200 | <geekosaur> | lechner, you are attempting to use a list as two applications |
2021-07-18 23:38:17 +0200 | <lechner> | monochrom: i meant that one |
2021-07-18 23:38:25 +0200 | <[exa]> | lechner: the partial application is right (at least so it seems to me), the problem is that you're giving printf 1 argument and specify 2 in format |
2021-07-18 23:38:37 +0200 | <dsal> | lechner: If it doesn't work, then it's not fair to say that you needed it. |
2021-07-18 23:38:43 +0200 | <geekosaur> | one list is one application, not two |
2021-07-18 23:39:17 +0200 | <dsal> | > (+) $ 1 $ 2 |
2021-07-18 23:39:18 +0200 | <lambdabot> | error: |
2021-07-18 23:39:18 +0200 | <lambdabot> | • Could not deduce (Num t0) |
2021-07-18 23:39:18 +0200 | <lambdabot> | from the context: (Num a, Num t, Num (t -> a)) |
2021-07-18 23:39:55 +0200 | <dsal> | $ isn't a syntactic feature. It's just a function. And it will break your applications if effective arity is > 1 |
2021-07-18 23:40:01 +0200 | <lechner> | [exa]: https://paste.debian.net/1204830/ |
2021-07-18 23:40:35 +0200 | slack1256 | (~slack1256@191.125.28.13) (Remote host closed the connection) |
2021-07-18 23:40:39 +0200 | pavonia | (~user@user/siracusa) |
2021-07-18 23:40:44 +0200 | <[exa]> | dsal: you'd need -XChurchNumerals |
2021-07-18 23:40:48 +0200 | <dsal> | You might try breaking that into different statements to understand it better. |
2021-07-18 23:41:16 +0200 | <geekosaur> | lechner, contemplate this: |
2021-07-18 23:41:25 +0200 | <geekosaur> | > (+) [1,2] |
2021-07-18 23:41:27 +0200 | <lambdabot> | error: |
2021-07-18 23:41:27 +0200 | <lambdabot> | • No instance for (Num [Integer]) arising from a use of ‘e_112’ |
2021-07-18 23:41:27 +0200 | <lambdabot> | • In the expression: e_112 |
2021-07-18 23:41:43 +0200 | <geekosaur> | hm, (+) is not the best example there |
2021-07-18 23:41:54 +0200 | <monochrom> | (&&) [False, False] |
2021-07-18 23:41:57 +0200 | <[exa]> | lechner: yeah there printf uses `map` as the first argument, likely not very printable |
2021-07-18 23:41:57 +0200 | <geekosaur> | > (++) ["a","b"] |
2021-07-18 23:42:00 +0200 | <lambdabot> | <[[Char]] -> [[Char]]> |
2021-07-18 23:42:03 +0200 | <lechner> | geekosaur: isn't that here four applications? https://salsa.debian.org/lintian/kickoff/-/blob/master/Collect.hs#L68 |
2021-07-18 23:42:40 +0200 | <lechner> | [exa]: yeah, that part i get now |
2021-07-18 23:42:40 +0200 | <monochrom> | one single list. |
2021-07-18 23:42:46 +0200 | <geekosaur> | lechner, no, it is a 4-element list |
2021-07-18 23:42:56 +0200 | <dsal> | :t map |
2021-07-18 23:42:57 +0200 | <lambdabot> | (a -> b) -> [a] -> [b] |
2021-07-18 23:43:06 +0200 | <geekosaur> | thisis not lisp, a list is not a group of applications |
2021-07-18 23:43:23 +0200 | <dsal> | map takes a function and applies it to each element inside a list. One list in, one list out. |
2021-07-18 23:44:39 +0200 | <lechner> | that's what i am looking for, except one member (of all partially or unapplied functions) is specified as a . b |
2021-07-18 23:45:19 +0200 | <dsal> | You're doing several things at once. You will likely have more success if you break them down a bit. |
2021-07-18 23:45:53 +0200 | <lechner> | dsal: let's go with your approach. i am reading up on puns |
2021-07-18 23:45:53 +0200 | azeem | (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Read error: Connection reset by peer) |
2021-07-18 23:45:54 +0200 | <dsal> | A list is one thing, but it's not what your printf wants. So to work backwards, you'll have to figure out how to make what your printf wants. |
2021-07-18 23:46:03 +0200 | <lechner> | yes |
2021-07-18 23:46:14 +0200 | <lechner> | let's chuck printf |
2021-07-18 23:46:16 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-07-18 23:46:17 +0200 | <dsal> | My approach is to make a function that formats your connection string. |
2021-07-18 23:46:29 +0200 | azeem | (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) |
2021-07-18 23:46:43 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
2021-07-18 23:47:12 +0200 | <dsal> | In MonadLogger, you can call that ToLogStr, but that's the opposite direction from "do less stuff" :) |
2021-07-18 23:48:42 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-07-18 23:51:29 +0200 | burnsidesLlama | (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 265 seconds) |
2021-07-18 23:52:42 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2021-07-18 23:53:07 +0200 | __monty__ | (~toonn@user/toonn) |
2021-07-18 23:53:19 +0200 | __monty__ | (~toonn@user/toonn) (Client Quit) |
2021-07-18 23:54:50 +0200 | <lechner> | can i define an instance of 'show' to return the string host ++ ":" ++ listen_port for a type that has both? |
2021-07-18 23:55:05 +0200 | <geekosaur> | you can but you shouldn't |
2021-07-18 23:55:20 +0200 | <lechner> | why not, please? |
2021-07-18 23:55:47 +0200 | <geekosaur> | an instance of Show should match an instance of Read and ideally be a fragment of Haskell source that will reproduce a value of the type within ghc / ghci |
2021-07-18 23:56:37 +0200 | <geekosaur> | otherwise you run into issues Show-ing or Read-ing structures that contain values of that type |
2021-07-18 23:56:39 +0200 | <lechner> | could i add both? |
2021-07-18 23:56:50 +0200 | fendor__ | (~fendor@178.165.167.65.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-07-18 23:57:38 +0200 | <geekosaur> | what do you mean? |
2021-07-18 23:58:00 +0200 | <lechner> | Show and Read |
2021-07-18 23:58:35 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-07-18 23:58:41 +0200 | <dsal> | lechner: That's not what show is for. This is why MonadLogger defines ToLogStr. You can make your own. |
2021-07-18 23:59:47 +0200 | <dminuoso> | geekosaur: Strictly speaking, that is only requires for deriving generated instances. This notion that they "should" seems to be based in rumour or just an observation of established practice. |
2021-07-18 23:59:47 +0200 | <dsal> | You *can* define your own Show and Read if you're pretty sure you can encapsulate all of the structure you want. It's not definitely the wrong idea all the time, but it's not easier than making something specific for logging and having your logger log with it. |