Logs: freenode/#haskell
| 2020-11-09 09:00:50 | → | Codaraxis joins (~Codaraxis@ip68-5-90-227.oc.oc.cox.net) |
| 2020-11-09 09:01:06 | → | Feuermagier joins (~Feuermagi@213.178.26.41) |
| 2020-11-09 09:01:08 | → | m0rphism joins (~m0rphism@HSI-KBW-095-208-098-207.hsi5.kabel-badenwuerttemberg.de) |
| 2020-11-09 09:01:22 | → | bliminse joins (~bliminse@host109-156-197-211.range109-156.btcentralplus.com) |
| 2020-11-09 09:01:37 | → | ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) |
| 2020-11-09 09:02:30 | hackage | ukrainian-phonetics-basic 0.2.0.1 - A library to work with the basic Ukrainian phonetics and syllable segmentation. https://hackage.haskell.org/package/ukrainian-phonetics-basic-0.2.0.1 (OleksandrZhabenko) |
| 2020-11-09 09:03:29 | → | ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) |
| 2020-11-09 09:03:38 | → | mozzarella joins (~sam@unaffiliated/sam113101) |
| 2020-11-09 09:04:09 | → | alp joins (~alp@2a01:e0a:58b:4920:6dd8:8351:ec1a:bc84) |
| 2020-11-09 09:04:51 | → | adm joins (~adm@43.229.88.236) |
| 2020-11-09 09:05:08 | → | thc202 joins (~thc202@unaffiliated/thc202) |
| 2020-11-09 09:06:17 | × | poljar quits (~poljar@93-139-70-179.adsl.net.t-com.hr) (Remote host closed the connection) |
| 2020-11-09 09:06:46 | → | poljar joins (~poljar@93-139-70-179.adsl.net.t-com.hr) |
| 2020-11-09 09:07:09 | × | xelxebar quits (~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection) |
| 2020-11-09 09:07:31 | → | Ariakenom joins (~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se) |
| 2020-11-09 09:08:05 | <xpika> | Should there be a Monoid instance for Monad m => Kleisli m a a in the vein as Endo a in Data.Monoid? |
| 2020-11-09 09:08:13 | × | ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds) |
| 2020-11-09 09:09:49 | × | otulp quits (~otulp@ti0187q162-7043.bb.online.no) (Ping timeout: 264 seconds) |
| 2020-11-09 09:10:33 | → | otulp joins (~otulp@ti0187q162-6038.bb.online.no) |
| 2020-11-09 09:11:28 | <Taneb> | xpika: http://hackage.haskell.org/package/monoid-extras-0.5.1/docs/Data-Monoid-Endomorphism.html there's this in monoid-extras |
| 2020-11-09 09:11:39 | <Taneb> | Whawt you're after is "Endomorphism (Kleisli m)" |
| 2020-11-09 09:11:50 | <Taneb> | (it works for any category) |
| 2020-11-09 09:15:23 | <Feuermagier> | what does the :set operator do? - and where does it belong (seen it in a stackoverflow post) |
| 2020-11-09 09:16:00 | Guest67212 | is now known as lep-delete |
| 2020-11-09 09:16:02 | lep-delete | is now known as Guest67212 |
| 2020-11-09 09:16:03 | Guest67212 | is now known as lep-delete |
| 2020-11-09 09:16:35 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-09 09:16:40 | → | gproto23 joins (~gproto23@unaffiliated/gproto23) |
| 2020-11-09 09:17:40 | → | enoq joins (~textual@194-208-146-143.lampert.tv) |
| 2020-11-09 09:17:45 | × | ahmr88 quits (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Quit: Leaving...) |
| 2020-11-09 09:17:48 | <xpika> | Taneb: Thanks |
| 2020-11-09 09:18:50 | × | bitmagie quits (~Thunderbi@200116b8068e9d000cdbc28af571c7f9.dip.versatel-1u1.de) (Quit: bitmagie) |
| 2020-11-09 09:19:02 | <xpika> | question: Are Monads Monoids? |
| 2020-11-09 09:20:49 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-09 09:21:04 | <xpika> | wikipedia doesn't seem to suggest it. https://en.wikipedia.org/wiki/Monad_(category_theory) |
| 2020-11-09 09:21:24 | <Taneb> | xpika: the short answer is "no", but there's a long answer which has "yes" as the conclusion |
| 2020-11-09 09:22:06 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2020-11-09 09:22:24 | <Taneb> | So as monoid as is conventionally understood is a set with an associative binary operation that has an identity |
| 2020-11-09 09:22:37 | <Taneb> | By this definition, a monad is not a monoid (it's not even a set) |
| 2020-11-09 09:23:07 | × | adm quits (~adm@43.229.88.236) (Remote host closed the connection) |
| 2020-11-09 09:23:08 | <Taneb> | But through the power of category theory, this definition can be generalized to a "monoid object on a monoidal category" |
| 2020-11-09 09:23:45 | → | 92AABGYX7 joins (~adm@43.229.88.236) |
| 2020-11-09 09:24:16 | <Taneb> | A monoidal category is a category with a bifunctor * and special object 1 such that A * (B * C) is isomorphic to (A * B) * C and A * 1 is isomorphic to A is isomorphic to 1 * A |
| 2020-11-09 09:24:21 | <maralorn> | xpika: There is the sane definition of Monoid, which every mathematician knows. According to that one a Monad is not a Monoid. And then there is a category theory definition of Monoid, which I think out of 30 professors at my department max. 2 know, and as Taneb explains, that one works for Monads. |
| 2020-11-09 09:24:53 | <Taneb> | We can make the category of sets a monoidal category with * being ordered pairs and 1 being a singleton set (like () ) |
| 2020-11-09 09:26:12 | <Taneb> | A monoid object is an object M in a monoidal category, with morphisms 1 => M and M * M => M, with certain sensible laws corresponding to associativity and identity |
| 2020-11-09 09:26:26 | × | tomboy64 quits (~tomboy64@gateway/tor-sasl/tomboy64) (Remote host closed the connection) |
| 2020-11-09 09:26:29 | <Taneb> | If we choose the category of sets as our monoidal category we get the traditional definition of monoids |
| 2020-11-09 09:27:05 | → | tomboy64 joins (~tomboy64@gateway/tor-sasl/tomboy64) |
| 2020-11-09 09:27:44 | <Taneb> | Now, let's take another category, the category whose objects are functors from set to set and whose morphisms are natural transformations |
| 2020-11-09 09:28:14 | <Taneb> | This can be made monoidal, taking * to be composition of functors and 1 to be the identity functor |
| 2020-11-09 09:28:23 | <Taneb> | Monoids in *this* category are exactly monads |
| 2020-11-09 09:28:29 | → | mputz joins (~Thunderbi@dslb-084-058-211-084.084.058.pools.vodafone-ip.de) |
| 2020-11-09 09:28:38 | <Taneb> | (this is where the joke "monads are just monoids in the category of endofunctors, what's the problem?" comes from) |
| 2020-11-09 09:28:50 | <Taneb> | xpika: I don't know how useful this is but I hope it's at least interesting |
| 2020-11-09 09:29:00 | hackage | libfuse3 0.1.2.0 - A Haskell binding for libfuse-3.x https://hackage.haskell.org/package/libfuse3-0.1.2.0 (yohashi) |
| 2020-11-09 09:30:53 | → | raichoo joins (~raichoo@213.240.178.58) |
| 2020-11-09 09:31:00 | → | Franciman joins (~francesco@host-79-36-167-172.retail.telecomitalia.it) |
| 2020-11-09 09:31:07 | × | Ariakenom quits (~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se) (Ping timeout: 246 seconds) |
| 2020-11-09 09:31:37 | <xpika> | Taneb: No, it's good. I realized the other day that since I could make a monoid out of monads that I could use the fold function for instance to fold a list of Kleisli arrows |
| 2020-11-09 09:32:38 | <Feuermagier> | how can I concatenate strings with space, but only if the concatenated-with string is not empty? - (so I dont get double spaces) |
| 2020-11-09 09:33:01 | hackage | r-glpk-phonetic-languages-ukrainian-durations 0.1.3.0 - Can be used to calculate the durations of the approximations of the Ukrainian phonemes. https://hackage.haskell.org/package/r-glpk-phonetic-languages-ukrainian-durations-0.1.3.0 (OleksandrZhabenko) |
| 2020-11-09 09:33:26 | × | britva quits (~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep) |
| 2020-11-09 09:33:48 | × | 92AABGYX7 quits (~adm@43.229.88.236) (Remote host closed the connection) |
| 2020-11-09 09:34:12 | → | avdb joins (~avdb@ip-83-134-109-5.dsl.scarlet.be) |
| 2020-11-09 09:35:30 | hackage | phonetic-languages-properties 0.3.0.0 - A generalization of the uniqueness-periods-vector-properties package. https://hackage.haskell.org/package/phonetic-languages-properties-0.3.0.0 (OleksandrZhabenko) |
| 2020-11-09 09:35:38 | → | Ariakenom joins (~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se) |
| 2020-11-09 09:37:17 | → | DavidEichmann joins (~david@43.240.198.146.dyn.plus.net) |
| 2020-11-09 09:38:03 | → | Aquazi joins (uid312403@gateway/web/irccloud.com/x-vutaqggfkdwqzvto) |
| 2020-11-09 09:39:41 | → | adm joins (~adm@43.229.88.236) |
| 2020-11-09 09:40:43 | × | Lycurgus quits (~niemand@98.4.97.118) (Quit: Exeunt) |
| 2020-11-09 09:40:55 | × | cocreature quits (~cocreatur@eirene.uberspace.de) (Quit: ZNC 1.8.2 - https://znc.in) |
| 2020-11-09 09:41:17 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 2020-11-09 09:41:31 | → | tsaka__ joins (~torstein@ppp-2-84-29-23.home.otenet.gr) |
| 2020-11-09 09:41:41 | → | adm_ joins (~adm@43.229.88.236) |
| 2020-11-09 09:42:23 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2020-11-09 09:42:32 | <xpika> | > (\x y -> unwords . words $ [x,y]) "hello " " world" |
| 2020-11-09 09:42:34 | <lambdabot> | error: |
| 2020-11-09 09:42:34 | <lambdabot> | • Couldn't match expected type ‘Char’ with actual type ‘[Char]’ |
| 2020-11-09 09:42:34 | <lambdabot> | • In the first argument of ‘\ x y |
| 2020-11-09 09:42:44 | → | invaser joins (~Thunderbi@31.148.23.125) |
| 2020-11-09 09:42:48 | <xpika> | > (\x y -> unwords . words $ (x++y)) "hello " " world" |
| 2020-11-09 09:42:50 | <lambdabot> | "hello world" |
| 2020-11-09 09:43:22 | → | cocreature joins (~cocreatur@eirene.uberspace.de) |
| 2020-11-09 09:43:32 | <xpika> | > (\x y -> unwords . words $ (x++y)) "hello " " new world" |
| 2020-11-09 09:43:34 | <lambdabot> | "hello new world" |
| 2020-11-09 09:44:00 | × | adm_ quits (~adm@43.229.88.236) (Read error: Connection reset by peer) |
| 2020-11-09 09:44:09 | × | adm quits (~adm@43.229.88.236) (Ping timeout: 260 seconds) |
| 2020-11-09 09:44:51 | × | xff0x quits (~fox@2001:1a81:531b:1600:59c2:7a84:b705:d4e7) (Ping timeout: 268 seconds) |
| 2020-11-09 09:44:53 | <Feuermagier> | xpika, interesting! thanks! |
| 2020-11-09 09:45:06 | × | invaser quits (~Thunderbi@31.148.23.125) (Read error: Connection reset by peer) |
| 2020-11-09 09:45:38 | <xpika> | >"hello" ++ " "++dropWhile (==' ') " world" |
| 2020-11-09 09:45:43 | → | xff0x joins (~fox@2001:1a81:531b:1600:ec8f:61b3:570e:bcbc) |
| 2020-11-09 09:46:12 | → | britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch) |
| 2020-11-09 09:46:38 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-09 09:46:39 | <xpika> | > "hello" ++ " "++dropWhile (==' ') " world" |
| 2020-11-09 09:46:41 | → | adm joins (~adm@43.229.88.236) |
| 2020-11-09 09:46:41 | <Feuermagier> | xpika, can I apply this to a list of Strings, so that it concatenates the entire list like "concat"? |
| 2020-11-09 09:46:42 | <lambdabot> | "hello world" |
| 2020-11-09 09:47:40 | <xpika> | Feuermagier: yes |
All times are in UTC.