Home freenode/#haskell: Logs Calendar

Logs: freenode/#haskell

←Prev  Next→ 502,152 events total
2021-04-21 05:25:09 rdivyanshu joins (uid322626@gateway/web/irccloud.com/x-fcexcnqymecxutqt)
2021-04-21 05:25:13 × malumore_ quits (~malumore@151.62.122.70) (Remote host closed the connection)
2021-04-21 05:25:31 malumore_ joins (~malumore@151.62.122.70)
2021-04-21 05:26:27 hypercube joins (~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
2021-04-21 05:28:06 ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-04-21 05:32:51 × ddellacosta quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 245 seconds)
2021-04-21 05:36:29 × falafel_ quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 246 seconds)
2021-04-21 05:37:36 × myShoggoth quits (~myShoggot@75.164.11.109) (Ping timeout: 268 seconds)
2021-04-21 05:40:37 × Guest78317 quits (~laudiacay@67.176.215.84) (Ping timeout: 252 seconds)
2021-04-21 05:41:26 bitmagie joins (~Thunderbi@200116b8063572001499edd4f9d505b9.dip.versatel-1u1.de)
2021-04-21 05:44:08 × Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007)
2021-04-21 05:44:35 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
2021-04-21 05:47:00 <wroathe> Is there a way to specify a monoid constraint for a * -> * type variable in a function type?
2021-04-21 05:47:27 <c_wraith> are you looking for QuantifiedConstraints?
2021-04-21 05:47:37 <wroathe> c_wraith: Probably.
2021-04-21 05:47:38 <c_wraith> For what it's worth, I hear it's a bit buggy
2021-04-21 05:48:54 <wroathe> Specifically I've got (IsString a, Monoid t) => t (Attribute a) -> Html t a, and it's telling me Expected kind ‘* -> *’, but ‘t’ has kind ‘*’
2021-04-21 05:49:19 <wroathe> So the Monoid constraint seemingly can only be applied to type variables of kind * by default
2021-04-21 05:50:39 gaiger joins (~geiger@0543f40b.skybroadband.com)
2021-04-21 05:53:29 sord937 joins (~sord937@gateway/tor-sasl/sord937)
2021-04-21 05:54:17 edwardk_ joins (sid47016@haskell/developer/edwardk)
2021-04-21 05:54:54 <gnumonic> f :: forall a b (m :: Type -> Type) y. (b ~ Maybe a, Monoid (m b), Monoid (m a)) => m (Maybe a) -> Identity (m a) seems to typecheck but i dunno if that's what you want?
2021-04-21 05:54:56 Codaraxis__ joins (Codaraxis@gateway/vpn/mullvad/codaraxis)
2021-04-21 05:55:13 <gnumonic> i have basically every type voodoo compiler extension on in that file tho
2021-04-21 05:55:29 <wroathe> Ha, there HAS to be a simpler way than that :P
2021-04-21 05:55:44 × edwardk quits (sid47016@haskell/developer/edwardk) (Ping timeout: 245 seconds)
2021-04-21 05:55:44 × stylewarning quits (stylewarni@gateway/web/irccloud.com/x-llgsamgivilxjltg) (Ping timeout: 245 seconds)
2021-04-21 05:55:44 × Codaraxis_ quits (Codaraxis@gateway/vpn/mullvad/codaraxis) (Remote host closed the connection)
2021-04-21 05:55:44 edwardk_ is now known as edwardk
2021-04-21 05:55:44 × tapas quits (sid467876@gateway/web/irccloud.com/x-dpxzueexrqylgrju) (Ping timeout: 245 seconds)
2021-04-21 05:55:45 × parisienne quits (sid383587@gateway/web/irccloud.com/x-aiygzsqhowxpopox) (Ping timeout: 245 seconds)
2021-04-21 05:55:45 stylewarning joins (stylewarni@gateway/web/irccloud.com/session)
2021-04-21 05:55:45 × stylewarning quits (stylewarni@gateway/web/irccloud.com/session) (Changing host)
2021-04-21 05:55:45 stylewarning joins (stylewarni@gateway/web/irccloud.com/x-gsvymsjokvoizmft)
2021-04-21 05:55:52 × ephemera_ quits (~E@122.34.1.187) (Ping timeout: 245 seconds)
2021-04-21 05:55:59 parisienne joins (sid383587@gateway/web/irccloud.com/x-vydbxjnkijiazrlk)
2021-04-21 05:55:59 chele joins (~chele@5.53.222.202)
2021-04-21 05:56:05 ephemera_ joins (~E@122.34.1.187)
2021-04-21 05:56:21 ashesham` joins (~user@d8D87D1B0.access.telenet.be)
2021-04-21 05:56:25 tapas joins (sid467876@gateway/web/irccloud.com/x-bsjadohtpruxmywx)
2021-04-21 05:56:36 × sclv quits (sid39734@haskell/developer/sclv) (Ping timeout: 245 seconds)
2021-04-21 05:56:37 × cyberlard quits (~cyberlard@unaffiliated/jludwig) (Ping timeout: 245 seconds)
2021-04-21 05:56:51 <gnumonic> i've been doing dependently typed experiments for a few days so that actually does strike me as simple-ish :p
2021-04-21 05:56:57 cyberlard joins (~cyberlard@unaffiliated/jludwig)
2021-04-21 05:57:23 exarkun_ joins (~exarkun@14.79.69.34.bc.googleusercontent.com)
2021-04-21 05:57:49 × exarkun quits (~exarkun@14.79.69.34.bc.googleusercontent.com) (Ping timeout: 245 seconds)
2021-04-21 05:57:49 × nh2 quits (sid309956@gateway/web/irccloud.com/x-vqylohvjgsiigvkd) (Ping timeout: 245 seconds)
2021-04-21 05:57:49 × alanz quits (sid110616@gateway/web/irccloud.com/x-ephuaztzuzimomxa) (Ping timeout: 245 seconds)
2021-04-21 05:57:51 × jackhill quits (~jackhill@marsh.hcoop.net) (Ping timeout: 245 seconds)
2021-04-21 05:58:01 sclv joins (sid39734@haskell/developer/sclv)
2021-04-21 05:58:07 jackhill joins (~jackhill@marsh.hcoop.net)
2021-04-21 05:58:29 × loller_ quits (uid358106@gateway/web/irccloud.com/x-knsjtabxhwvomwzb) (Ping timeout: 245 seconds)
2021-04-21 05:58:29 × pepeiborra quits (sid443799@gateway/web/irccloud.com/x-nirrncfqraegkpgk) (Ping timeout: 245 seconds)
2021-04-21 05:58:42 × aizen_s quits (sid462968@gateway/web/irccloud.com/x-gzlgfjzfpthijryy) (Ping timeout: 245 seconds)
2021-04-21 05:58:42 × nshepperd quits (nshepperd@2600:3c03::f03c:92ff:fe28:92c9) (Ping timeout: 245 seconds)
2021-04-21 05:58:42 × davean quits (~davean@davean.sciesnet.net) (Ping timeout: 245 seconds)
2021-04-21 05:58:58 davean joins (~davean@davean.sciesnet.net)
2021-04-21 05:58:59 nshepperd joins (nshepperd@2600:3c03::f03c:92ff:fe28:92c9)
2021-04-21 05:59:14 nh2 joins (sid309956@gateway/web/irccloud.com/x-sfwmjcpeywrfgggs)
2021-04-21 05:59:31 × ptrcmd quits (~ptrcmd@unaffiliated/petercommand) (Ping timeout: 245 seconds)
2021-04-21 05:59:32 alanz joins (sid110616@gateway/web/irccloud.com/x-qjhghsxjfupjbdeb)
2021-04-21 05:59:32 loller_ joins (uid358106@gateway/web/irccloud.com/x-jiaqaybiuqrwtvzc)
2021-04-21 05:59:38 ptrcmd joins (~ptrcmd@unaffiliated/petercommand)
2021-04-21 05:59:49 pepeiborra joins (sid443799@gateway/web/irccloud.com/x-sswqhnrrevrotjio)
2021-04-21 05:59:50 <wavemode> afaik a type which is a Monoid would necessarily have kind *. That is why instances are declared like (for example) Monoid [a], not Monoid []
2021-04-21 05:59:56 × stylewarning quits (stylewarni@gateway/web/irccloud.com/x-gsvymsjokvoizmft) (Ping timeout: 245 seconds)
2021-04-21 06:00:06 Alleria joins (~textual@2603-7000-3040-0000-e52b-abc5-9db9-302a.res6.spectrum.com)
2021-04-21 06:00:29 Alleria is now known as Guest57813
2021-04-21 06:00:43 aizen_s joins (sid462968@gateway/web/irccloud.com/x-pjdnfdcsawunazxf)
2021-04-21 06:01:02 stylewarning joins (stylewarni@gateway/web/irccloud.com/x-zhwbhuctetrnaybq)
2021-04-21 06:02:40 <joel135> A monoid of kind * -> * would be a monad :)
2021-04-21 06:02:56 thc202 joins (~thc202@unaffiliated/thc202)
2021-04-21 06:03:50 <wroathe> joel135: So where's my Monad equivalent of mempty ;P
2021-04-21 06:04:22 <joel135> return
2021-04-21 06:04:31 × Guest57813 quits (~textual@2603-7000-3040-0000-e52b-abc5-9db9-302a.res6.spectrum.com) (Ping timeout: 245 seconds)
2021-04-21 06:04:38 <wroathe> joel135: That would require putting at least one thing in the container, would it not?
2021-04-21 06:05:11 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 240 seconds)
2021-04-21 06:05:14 × hexfive quits (~hexfive@50.35.83.177) (Quit: i must go. my people need me.)
2021-04-21 06:05:23 danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
2021-04-21 06:05:34 coot joins (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl)
2021-04-21 06:05:40 <gnumonic> wonder if you could do something like this: class (KindOf b ~ Type, Monoid b) => ToMonoid (f :: Type -> b) where (...)
2021-04-21 06:05:42 <wroathe> % pure 3 :: [Int]
2021-04-21 06:05:42 <yahb> wroathe: [3]
2021-04-21 06:06:36 <wroathe> % mempty :: [Int]
2021-04-21 06:06:36 <yahb> wroathe: []
2021-04-21 06:07:33 <joel135> :t mempty
2021-04-21 06:07:34 <lambdabot> Monoid a => a
2021-04-21 06:07:39 <joel135> :t return
2021-04-21 06:07:40 <lambdabot> Monad m => a -> m a
2021-04-21 06:07:57 × dave_uy quits (~david@108.61.193.26) (Quit: The Lounge - https://thelounge.chat)
2021-04-21 06:08:03 <joel135> Monad m => 1 -> m
2021-04-21 06:08:11 <joel135> Monad m => m
2021-04-21 06:09:03 <wroathe> joel135: I'm not following... Is there a function for this Monad m => m?
2021-04-21 06:09:35 <joel135> I'd perhaps say that return gives you an empty container of structure, which may in turn house more than zero data.
2021-04-21 06:09:55 <joel135> No, I'm just doing pseudo-haskell math.
2021-04-21 06:10:27 <wroathe> The use case is that I've got a datatype that's a tree-like structure where I want the user to be able to choose the type of the container that contains each nodes child nodes, and I'm defining a function where I want to initialize that field to an "empty" container
2021-04-21 06:11:05 dave_uy joins (~david@108.61.193.26)
2021-04-21 06:11:21 <joel135> So you want forall a. Monoid (t a) ?
2021-04-21 06:11:35 <wroathe> Yeah, maybe that's it...
2021-04-21 06:12:44 <wroathe> joel135: I'm still not very familiar with explicit quantification, but I think I understand what you're suggesting there

All times are in UTC.