Home liberachat/#haskell: Logs Calendar

Logs on 2024-07-12 (liberachat/#haskell)

00:01:00 <probie> LambdaCase and TupleSections are not really extensions I care about in this context. They don't leak out of libraries
00:03:08 <probie> If use LambdaCase or TupleSections, no-one but those actually touching my code care. If I use multi-param type classes or rank-n types, perhaps I'm scaring someone off?
00:03:59 xff0x joins (~xff0x@2405:6580:b080:900:9f96:9dea:14c6:fcb5)
00:04:17 × glguy quits (g@libera/staff/glguy) (*.net *.split)
00:04:17 × mikess quits (~mikess@user/mikess) (*.net *.split)
00:04:17 × sroso quits (~sroso@user/SrOso) (*.net *.split)
00:04:17 × pavonia quits (~user@user/siracusa) (*.net *.split)
00:04:17 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (*.net *.split)
00:04:17 × swistak quits (~swistak@185.21.216.141) (*.net *.split)
00:04:17 × segfaultfizzbuzz quits (~segfaultf@23-93-79-84.fiber.dynamic.sonic.net) (*.net *.split)
00:04:17 × L29Ah quits (~L29Ah@wikipedia/L29Ah) (*.net *.split)
00:04:17 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (*.net *.split)
00:04:17 × fun-safe-math quits (~fun-safe-@24.21.106.247) (*.net *.split)
00:04:17 × Luj9 quits (~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5) (*.net *.split)
00:04:17 × mud quits (~mud@user/kadoban) (*.net *.split)
00:04:17 × _0xa quits (~user@user/0xa/x-3134607) (*.net *.split)
00:04:17 × sus quits (1b7af6299f@user/zeromomentum) (*.net *.split)
00:04:18 × jmcantrell quits (644f1bed9a@user/jmcantrell) (*.net *.split)
00:04:18 × sm quits (~znc@plaintextaccounting/sm) (*.net *.split)
00:04:18 × tinwood quits (~tinwood@canonical/tinwood) (*.net *.split)
00:04:18 × xerox quits (~edi@user/edi) (*.net *.split)
00:04:18 × tjbc quits (~tjbc@user/fliife) (*.net *.split)
00:04:18 × flukiluke quits (~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) (*.net *.split)
00:04:18 × catties quits (~catties@user/meow/catties) (*.net *.split)
00:04:18 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (*.net *.split)
00:04:18 × dumptruckman quits (~dumptruck@69-164-210-35.ip.linodeusercontent.com) (*.net *.split)
00:04:18 × ursa-major quits (114efe6c39@2a03:6000:1812:100::11f3) (*.net *.split)
00:04:18 × titibandit quits (e33ffbab65@user/titibandit) (*.net *.split)
00:04:18 × jakzale quits (6291399afa@user/jakzale) (*.net *.split)
00:04:18 × pmk_ quits (6afe4476a1@2a03:6000:1812:100::26d) (*.net *.split)
00:04:18 × dagi78319 quits (~dagit@2001:558:6025:38:71c6:9d58:7252:8976) (*.net *.split)
00:04:18 × mhatta quits (~mhatta@www21123ui.sakura.ne.jp) (*.net *.split)
00:04:18 × TMA quits (tma@twin.jikos.cz) (*.net *.split)
00:04:18 × tomboy64 quits (~tomboy64@user/tomboy64) (*.net *.split)
00:04:18 × She quits (haveident@libera/staff/she/her) (*.net *.split)
00:04:19 × jrm quits (~jrm@user/jrm) (*.net *.split)
00:04:19 × mrmonday quits (~robert@what.i.hope.is.not.a.tabernaevagant.es) (*.net *.split)
00:04:19 × Teacup quits (~teacup@user/teacup) (*.net *.split)
00:04:19 × jackdk quits (sid373013@cssa/jackdk) (*.net *.split)
00:04:19 × systemfault quits (sid267009@about/typescript/member/systemfault) (*.net *.split)
00:04:19 × taktoa[c] quits (sid282096@id-282096.tinside.irccloud.com) (*.net *.split)
00:04:19 × chessai quits (sid225296@id-225296.lymington.irccloud.com) (*.net *.split)
00:04:19 × caasih quits (sid13241@id-13241.ilkley.irccloud.com) (*.net *.split)
00:04:19 × lexi-lambda quits (sid92601@id-92601.hampstead.irccloud.com) (*.net *.split)
00:04:19 × mankyKitty quits (sid31287@id-31287.helmsley.irccloud.com) (*.net *.split)
00:04:19 × haasn quits (sid579015@id-579015.hampstead.irccloud.com) (*.net *.split)
00:04:19 × aspen quits (sid449115@id-449115.helmsley.irccloud.com) (*.net *.split)
00:04:19 × piele quits (~piele@tbonesteak.creativeserver.net) (*.net *.split)
00:04:19 × lbseale quits (~quassel@user/ep1ctetus) (*.net *.split)
00:04:19 × rembo10 quits (~rembo10@main.remulis.com) (*.net *.split)
00:04:19 × ell quits (~ellie@user/ellie) (*.net *.split)
00:04:19 × dibblego quits (~dibblego@haskell/developer/dibblego) (*.net *.split)
00:04:19 × vulpine quits (xfnw@user/meow/xfnw) (*.net *.split)
00:04:19 × Hafydd quits (~Hafydd@user/hafydd) (*.net *.split)
00:04:19 × apache2 quits (apache2@anubis.0x90.dk) (*.net *.split)
00:04:19 × carbolymer quits (~carbolyme@dropacid.net) (*.net *.split)
00:04:19 × auri quits (~auri@fsf/member/auri) (*.net *.split)
00:04:19 × Philonous quits (~Philonous@user/philonous) (*.net *.split)
00:04:19 × dfordvm quits (~dfordivam@160.16.87.223.v6.sakura.ne.jp) (*.net *.split)
00:04:19 × phma quits (~phma@host-67-44-208-89.hnremote.net) (*.net *.split)
00:04:20 × tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (*.net *.split)
00:04:20 × sam113101 quits (~sam@24.157.253.231) (*.net *.split)
00:04:20 × Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (*.net *.split)
00:04:20 × yahb2 quits (~yahb2@user/tomsmeding/bot/yahb2) (*.net *.split)
00:04:20 × bliminse quits (~bliminse@user/bliminse) (*.net *.split)
00:04:20 × kritzefitz quits (~kritzefit@debian/kritzefitz) (*.net *.split)
00:04:20 × mauke quits (~mauke@user/mauke) (*.net *.split)
00:04:20 × Batzy quits (~quassel@user/batzy) (*.net *.split)
00:04:20 × peutri quits (~peutri@bobo.desast.re) (*.net *.split)
00:04:20 × myxos quits (~myxos@syn-065-028-251-121.res.spectrum.com) (*.net *.split)
00:04:20 × krei-se quits (~krei-se@p5085d24b.dip0.t-ipconnect.de) (*.net *.split)
00:04:20 × migas97 quits (~migas@static.140.65.63.178.clients.your-server.de) (*.net *.split)
00:04:20 × leah2 quits (~leah@vuxu.org) (*.net *.split)
00:04:20 × mrmr155334346 quits (~mrmr@user/mrmr) (*.net *.split)
00:04:20 × _xor quits (~xor@ip-208-102-243-175.dynamic.fuse.net) (*.net *.split)
00:04:20 × lewisje quits (~lewisje@74.215.19.22) (*.net *.split)
00:04:20 × xsarnik quits (xsarnik@lounge.fi.muni.cz) (*.net *.split)
00:04:20 × raym quits (~ray@user/raym) (*.net *.split)
00:04:21 × tolt quits (~weechat-h@li219-154.members.linode.com) (*.net *.split)
00:04:21 × kimiamania quits (~65804703@user/kimiamania) (*.net *.split)
00:04:21 × mzg quits (mzg@abusers.hu) (*.net *.split)
00:04:21 × dunj3 quits (~dunj3@kingdread.de) (*.net *.split)
00:04:21 × gabriel_sevecek quits (~gabriel@188-167-229-200.dynamic.chello.sk) (*.net *.split)
00:04:21 × gawen quits (~gawen@user/gawen) (*.net *.split)
00:04:21 × it_ quits (~quassel@v2202212189510211193.supersrv.de) (*.net *.split)
00:04:21 × koz quits (~koz@121.99.240.58) (*.net *.split)
00:04:21 × wagle quits (~wagle@quassel.wagle.io) (*.net *.split)
00:04:21 × mjacob quits (~mjacob@adrastea.uberspace.de) (*.net *.split)
00:04:21 × xelxebar quits (~xelxebar@wilsonb.com) (*.net *.split)
00:04:21 × paotsaq quits (~paotsaq@127.209.37.188.rev.vodafone.pt) (*.net *.split)
00:04:21 × stefan-_ quits (~cri@42dots.de) (*.net *.split)
00:04:21 × Raito_Bezarius quits (~Raito@wireguard/tunneler/raito-bezarius) (*.net *.split)
00:04:21 × quintasan quits (~quassel@quintasan.pl) (*.net *.split)
00:04:21 × tdammers_ quits (~tdammers@41-138-178-143.ftth.glasoperator.nl) (*.net *.split)
00:04:21 × lockna_ quits (~lockna@static.139.16.130.94.clients.your-server.de) (*.net *.split)
00:04:21 × joeyh_ quits (~joeyh@kitenet.net) (*.net *.split)
00:04:21 × Dykam quits (Dykam@dykam.nl) (*.net *.split)
00:04:21 × vgtw quits (~vgtw@user/vgtw) (*.net *.split)
00:04:21 × spider quits (spider@tilde.cafe) (*.net *.split)
00:04:21 × Axman6 quits (~Axman6@user/axman6) (*.net *.split)
00:04:21 × Square2 quits (~Square4@user/square) (*.net *.split)
00:04:21 × sp1ff` quits (~user@c-73-11-70-111.hsd1.wa.comcast.net) (*.net *.split)
00:04:22 × oo_miguel quits (~Thunderbi@78.10.207.46) (*.net *.split)
00:04:22 × cheater quits (~Username@user/cheater) (*.net *.split)
00:04:22 × JamesMowery quits (~JamesMowe@ip98-167-207-182.ph.ph.cox.net) (*.net *.split)
00:04:22 × smalltalkman quits (uid545680@id-545680.hampstead.irccloud.com) (*.net *.split)
00:04:22 × leeb quits (~leeb@tk2-243-31079.vs.sakura.ne.jp) (*.net *.split)
00:04:22 × erisco quits (~erisco@d24-141-66-165.home.cgocable.net) (*.net *.split)
00:04:22 × duncan quits (c6181279e3@user/meow/duncan) (*.net *.split)
00:04:22 × Xe quits (~cadey@perl/impostor/xe) (*.net *.split)
00:04:22 × opqdonut quits (opqdonut@pseudo.fixme.fi) (*.net *.split)
00:04:22 × kronicmage quits (~kronicmag@neotame.csclub.uwaterloo.ca) (*.net *.split)
00:04:22 × landonf quits (landonf@mac68k.info) (*.net *.split)
00:04:22 × hiredman quits (~hiredman@frontier1.downey.family) (*.net *.split)
00:04:22 × turlando quits (~turlando@user/turlando) (*.net *.split)
00:04:22 × xacktm quits (xacktm@user/xacktm) (*.net *.split)
00:04:22 × hughjfchen quits (~hughjfche@vmi556545.contaboserver.net) (*.net *.split)
00:04:22 × pierrot quits (~pi@user/pierrot) (*.net *.split)
00:04:22 × tt123109783 quits (~tt1231@2603:6010:8700:4a81:219f:50d3:618a:a6ee) (*.net *.split)
00:04:22 × tabemann__ quits (~tabemann@2600:1700:7990:24e0:bdf5:2044:ddb4:b631) (*.net *.split)
00:04:22 × drdo quits (~drdo@bl5-29-74.dsl.telepac.pt) (*.net *.split)
00:04:22 × petrichor quits (~znc-user@user/petrichor) (*.net *.split)
00:04:23 × dy quits (sid3438@user/dy) (*.net *.split)
00:04:23 × snek quits (sid280155@id-280155.lymington.irccloud.com) (*.net *.split)
00:04:23 × rubin55 quits (sid175221@id-175221.hampstead.irccloud.com) (*.net *.split)
00:04:23 × PotatoGim quits (sid99505@id-99505.lymington.irccloud.com) (*.net *.split)
00:04:23 × Fangs quits (sid141280@id-141280.hampstead.irccloud.com) (*.net *.split)
00:04:23 × aristid quits (sid1599@id-1599.uxbridge.irccloud.com) (*.net *.split)
00:04:23 × SrPx quits (sid108780@id-108780.uxbridge.irccloud.com) (*.net *.split)
00:04:23 × sa quits (sid1055@id-1055.tinside.irccloud.com) (*.net *.split)
00:04:23 × tok quits (da65c7b04b@user/tok) (*.net *.split)
00:04:23 × davean quits (~davean@davean.sciesnet.net) (*.net *.split)
00:04:23 × dostoyevsky2 quits (~sck@user/dostoyevsky2) (*.net *.split)
00:04:23 × earthy quits (~arthurvl@2a02-a469-f5e2-1-83d2-ca43-57a2-dc81.fixed6.kpn.net) (*.net *.split)
00:04:23 × Vq quits (~vq@81-231-76-8-no600.tbcn.telia.com) (*.net *.split)
00:04:23 × df quits (~ben@justworks.xyz) (*.net *.split)
00:04:23 × Aleksejs quits (~Aleksejs@107.170.21.106) (*.net *.split)
00:04:23 × xnyhps quits (~xnyhps@2a02:2770:3:0:216:3eff:fe67:3288) (*.net *.split)
00:04:23 × adamCS quits (~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com) (*.net *.split)
00:04:23 × koala_man quits (~vidar@157.146.251.23.bc.googleusercontent.com) (*.net *.split)
00:04:23 × siers quits (~ij@user/ij) (*.net *.split)
00:04:23 × wryish quits (~wryish@2605:4c40:119:efa3:0:727d:19eb:1) (*.net *.split)
00:04:23 × motherfsck quits (~motherfsc@user/motherfsck) (*.net *.split)
00:04:23 × hueso quits (~root@user/hueso) (*.net *.split)
00:04:23 × juri_ quits (~juri@implicitcad.org) (*.net *.split)
00:04:23 × ethantwardy quits (user@user/ethantwardy) (*.net *.split)
00:04:23 × lockywolf quits (~lockywolf@public.lockywolf.net) (*.net *.split)
00:04:23 × YuutaW quits (~YuutaW@mail.yuuta.moe) (*.net *.split)
00:04:24 × arcadewise quits (52968ed80d@2a03:6000:1812:100::3df) (*.net *.split)
00:04:24 × jleightcap quits (7bc4014b62@user/jleightcap) (*.net *.split)
00:04:24 × whereiseveryone quits (206ba86c98@2a03:6000:1812:100::2e4) (*.net *.split)
00:04:24 × zmt01 quits (~zmt00@user/zmt00) (*.net *.split)
00:04:24 × filwisher quits (2e6936c793@2a03:6000:1812:100::170) (*.net *.split)
00:04:24 × YoungFrog quits (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) (*.net *.split)
00:04:24 × TheCoffeMaker quits (~TheCoffeM@user/thecoffemaker) (*.net *.split)
00:04:24 × remmie quits (~ian@tilde.team) (*.net *.split)
00:04:24 × m5zs7k quits (aquares@web10.mydevil.net) (*.net *.split)
00:04:24 × tureba quits (~tureba@tureba.org) (*.net *.split)
00:04:24 × mrvdb quits (~mrvdb@2001:19f0:5000:8582:5400:ff:fe07:3df5) (*.net *.split)
00:04:24 × Ekho quits (~Ekho@user/ekho) (*.net *.split)
00:04:24 × nullie quits (~nullie@2a01:4f8:c2c:6177::1) (*.net *.split)
00:04:24 × pie_ quits (~pie_bnc@user/pie/x-2818909) (*.net *.split)
00:04:24 × EvanR quits (~EvanR@user/evanr) (*.net *.split)
00:04:24 × nitrix quits (~nitrix@user/meow/nitrix) (*.net *.split)
00:04:24 × benjaminl quits (~benjaminl@user/benjaminl) (*.net *.split)
00:04:24 × incertia quits (~incertia@209.122.137.252) (*.net *.split)
00:04:24 × remexre quits (~remexre@user/remexre) (*.net *.split)
00:04:24 × tv quits (~tv@user/tv) (*.net *.split)
00:04:24 × cptaffe quits (~cptaffe@user/cptaffe) (*.net *.split)
00:04:24 × bionade24 quits (~quassel@2a03:4000:33:45b::1) (*.net *.split)
00:04:24 × eL_Bart0 quits (eL_Bart0@dietunichtguten.org) (*.net *.split)
00:04:24 × hamishmack quits (sid389057@id-389057.hampstead.irccloud.com) (*.net *.split)
00:04:24 × geekosaur quits (sid609282@xmonad/geekosaur) (*.net *.split)
00:04:25 × xal quits (~xal@mx1.xal.systems) (*.net *.split)
00:04:25 × c_wraith quits (~c_wraith@adjoint.us) (*.net *.split)
00:04:25 × mmaruseacph2 quits (~mihai@mihai.page) (*.net *.split)
00:04:25 × Angelz quits (Angelz@user/angelz) (*.net *.split)
00:04:25 × doyougnu quits (~doyougnu@syn-045-046-170-068.res.spectrum.com) (*.net *.split)
00:04:25 × albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (*.net *.split)
00:04:25 × deriamis_ quits (deriamis@ec2-54-187-167-69.us-west-2.compute.amazonaws.com) (*.net *.split)
00:04:25 × emergence quits (emergence@2607:5300:60:5910:dcad:beff:feef:5bc) (*.net *.split)
00:04:25 × enikar quits (~enikar@user/enikar) (*.net *.split)
00:04:25 × bryanv quits (~quassel@2603:c028:4503:7500:45b7:933:ab17:bc10) (*.net *.split)
00:04:25 × meejah quits (~meejah@104.236.166.239) (*.net *.split)
00:04:25 × ario quits (~ario@159.65.220.102) (*.net *.split)
00:04:25 × sweater quits (~sweater@206.81.18.26) (*.net *.split)
00:04:25 × aws quits (~alews@user/aws) (*.net *.split)
00:04:46 <haskellbridge> <geekosaur> rank-n types, possibly yes. MPTC/fundeps are pretty much unavoidable and have been for at least 20 years
00:06:11 Pixi joins (~Pixi@user/pixi)
00:06:25 tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net)
00:06:37 sam113101 joins (~sam@24.157.253.231)
00:07:05 Square2 joins (~Square4@user/square)
00:07:05 mikess joins (~mikess@user/mikess)
00:07:05 sroso joins (~sroso@user/SrOso)
00:07:05 motherfsck joins (~motherfsc@user/motherfsck)
00:07:05 hueso joins (~root@user/hueso)
00:07:05 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
00:07:05 swistak joins (~swistak@185.21.216.141)
00:07:05 sp1ff` joins (~user@c-73-11-70-111.hsd1.wa.comcast.net)
00:07:05 oo_miguel joins (~Thunderbi@78.10.207.46)
00:07:05 juri_ joins (~juri@implicitcad.org)
00:07:05 segfaultfizzbuzz joins (~segfaultf@23-93-79-84.fiber.dynamic.sonic.net)
00:07:05 cheater joins (~Username@user/cheater)
00:07:05 ethantwardy joins (user@user/ethantwardy)
00:07:05 lockywolf joins (~lockywolf@public.lockywolf.net)
00:07:05 L29Ah joins (~L29Ah@wikipedia/L29Ah)
00:07:05 JamesMowery joins (~JamesMowe@ip98-167-207-182.ph.ph.cox.net)
00:07:05 smalltalkman joins (uid545680@id-545680.hampstead.irccloud.com)
00:07:05 takuan joins (~takuan@178-116-218-225.access.telenet.be)
00:07:05 leeb joins (~leeb@tk2-243-31079.vs.sakura.ne.jp)
00:07:05 fun-safe-math joins (~fun-safe-@24.21.106.247)
00:07:05 Luj9 joins (~Luj@2a01:e0a:de4:a0e1:be24:11ff:febc:b5b5)
00:07:05 mud joins (~mud@user/kadoban)
00:07:05 YuutaW joins (~YuutaW@mail.yuuta.moe)
00:07:05 erisco joins (~erisco@d24-141-66-165.home.cgocable.net)
00:07:05 duncan joins (c6181279e3@user/meow/duncan)
00:07:05 _0xa joins (~user@user/0xa/x-3134607)
00:07:05 arcadewise joins (52968ed80d@2a03:6000:1812:100::3df)
00:07:05 jleightcap joins (7bc4014b62@user/jleightcap)
00:07:05 sus joins (1b7af6299f@user/zeromomentum)
00:07:05 jmcantrell joins (644f1bed9a@user/jmcantrell)
00:07:05 whereiseveryone joins (206ba86c98@2a03:6000:1812:100::2e4)
00:07:05 Xe joins (~cadey@perl/impostor/xe)
00:07:05 zmt01 joins (~zmt00@user/zmt00)
00:07:05 filwisher joins (2e6936c793@2a03:6000:1812:100::170)
00:07:05 opqdonut joins (opqdonut@pseudo.fixme.fi)
00:07:05 YoungFrog joins (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be)
00:07:05 kronicmage joins (~kronicmag@neotame.csclub.uwaterloo.ca)
00:07:05 landonf joins (landonf@mac68k.info)
00:07:05 hiredman joins (~hiredman@frontier1.downey.family)
00:07:05 TheCoffeMaker joins (~TheCoffeM@user/thecoffemaker)
00:07:05 remmie joins (~ian@tilde.team)
00:07:05 m5zs7k joins (aquares@web10.mydevil.net)
00:07:05 sm joins (~znc@plaintextaccounting/sm)
00:07:05 turlando joins (~turlando@user/turlando)
00:07:05 tinwood joins (~tinwood@canonical/tinwood)
00:07:05 tureba joins (~tureba@tureba.org)
00:07:05 mrvdb joins (~mrvdb@2001:19f0:5000:8582:5400:ff:fe07:3df5)
00:07:05 xacktm joins (xacktm@user/xacktm)
00:07:05 hughjfchen joins (~hughjfche@vmi556545.contaboserver.net)
00:07:05 pierrot joins (~pi@user/pierrot)
00:07:05 tt123109783 joins (~tt1231@2603:6010:8700:4a81:219f:50d3:618a:a6ee)
00:07:05 Ekho joins (~Ekho@user/ekho)
00:07:05 nullie joins (~nullie@2a01:4f8:c2c:6177::1)
00:07:05 xerox joins (~edi@user/edi)
00:07:05 tjbc joins (~tjbc@user/fliife)
00:07:05 flukiluke joins (~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962)
00:07:05 catties joins (~catties@user/meow/catties)
00:07:05 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
00:07:05 dumptruckman joins (~dumptruck@69-164-210-35.ip.linodeusercontent.com)
00:07:05 ursa-major joins (114efe6c39@2a03:6000:1812:100::11f3)
00:07:05 jakzale joins (6291399afa@user/jakzale)
00:07:05 titibandit joins (e33ffbab65@user/titibandit)
00:07:05 pmk_ joins (6afe4476a1@2a03:6000:1812:100::26d)
00:07:05 dagi78319 joins (~dagit@2001:558:6025:38:71c6:9d58:7252:8976)
00:07:05 mhatta joins (~mhatta@www21123ui.sakura.ne.jp)
00:07:05 TMA joins (tma@twin.jikos.cz)
00:07:05 tomboy64 joins (~tomboy64@user/tomboy64)
00:07:05 pie_ joins (~pie_bnc@user/pie/x-2818909)
00:07:05 EvanR joins (~EvanR@user/evanr)
00:07:05 nitrix joins (~nitrix@user/meow/nitrix)
00:07:05 benjaminl joins (~benjaminl@user/benjaminl)
00:07:05 tabemann__ joins (~tabemann@2600:1700:7990:24e0:bdf5:2044:ddb4:b631)
00:07:05 incertia joins (~incertia@209.122.137.252)
00:07:05 remexre joins (~remexre@user/remexre)
00:07:05 glguy joins (g@libera/staff/glguy)
00:07:05 tv joins (~tv@user/tv)
00:07:05 drdo joins (~drdo@bl5-29-74.dsl.telepac.pt)
00:07:05 She joins (haveident@libera/staff/she/her)
00:07:05 petrichor joins (~znc-user@user/petrichor)
00:07:05 cptaffe joins (~cptaffe@user/cptaffe)
00:07:05 jrm joins (~jrm@user/jrm)
00:07:05 bionade24 joins (~quassel@2a03:4000:33:45b::1)
00:07:05 mrmonday joins (~robert@what.i.hope.is.not.a.tabernaevagant.es)
00:07:05 Teacup joins (~teacup@user/teacup)
00:07:05 eL_Bart0 joins (eL_Bart0@dietunichtguten.org)
00:07:05 geekosaur joins (sid609282@xmonad/geekosaur)
00:07:05 hamishmack joins (sid389057@id-389057.hampstead.irccloud.com)
00:07:05 jackdk joins (sid373013@cssa/jackdk)
00:07:05 systemfault joins (sid267009@about/typescript/member/systemfault)
00:07:05 taktoa[c] joins (sid282096@id-282096.tinside.irccloud.com)
00:07:05 chessai joins (sid225296@id-225296.lymington.irccloud.com)
00:07:05 SrPx joins (sid108780@id-108780.uxbridge.irccloud.com)
00:07:05 caasih joins (sid13241@id-13241.ilkley.irccloud.com)
00:07:05 lexi-lambda joins (sid92601@id-92601.hampstead.irccloud.com)
00:07:05 PotatoGim joins (sid99505@id-99505.lymington.irccloud.com)
00:07:05 dy joins (sid3438@user/dy)
00:07:05 snek joins (sid280155@id-280155.lymington.irccloud.com)
00:07:05 mankyKitty joins (sid31287@id-31287.helmsley.irccloud.com)
00:07:05 rubin55 joins (sid175221@id-175221.hampstead.irccloud.com)
00:07:05 sa joins (sid1055@id-1055.tinside.irccloud.com)
00:07:05 Fangs joins (sid141280@id-141280.hampstead.irccloud.com)
00:07:05 aristid joins (sid1599@id-1599.uxbridge.irccloud.com)
00:07:05 haasn joins (sid579015@id-579015.hampstead.irccloud.com)
00:07:05 aspen joins (sid449115@id-449115.helmsley.irccloud.com)
00:07:05 xal joins (~xal@mx1.xal.systems)
00:07:05 piele joins (~piele@tbonesteak.creativeserver.net)
00:07:05 lbseale joins (~quassel@user/ep1ctetus)
00:07:05 tok joins (da65c7b04b@user/tok)
00:07:05 davean joins (~davean@davean.sciesnet.net)
00:07:05 c_wraith joins (~c_wraith@adjoint.us)
00:07:05 mmaruseacph2 joins (~mihai@mihai.page)
00:07:05 Angelz joins (Angelz@user/angelz)
00:07:05 doyougnu joins (~doyougnu@syn-045-046-170-068.res.spectrum.com)
00:07:05 Axman6 joins (~Axman6@user/axman6)
00:07:05 dostoyevsky2 joins (~sck@user/dostoyevsky2)
00:07:05 rembo10 joins (~rembo10@main.remulis.com)
00:07:05 ell joins (~ellie@user/ellie)
00:07:05 dibblego joins (~dibblego@haskell/developer/dibblego)
00:07:05 vulpine joins (xfnw@user/meow/xfnw)
00:07:05 earthy joins (~arthurvl@2a02-a469-f5e2-1-83d2-ca43-57a2-dc81.fixed6.kpn.net)
00:07:05 Hafydd joins (~Hafydd@user/hafydd)
00:07:05 apache2 joins (apache2@anubis.0x90.dk)
00:07:05 carbolymer joins (~carbolyme@dropacid.net)
00:07:05 Vq joins (~vq@81-231-76-8-no600.tbcn.telia.com)
00:07:05 auri joins (~auri@fsf/member/auri)
00:07:05 Philonous joins (~Philonous@user/philonous)
00:07:05 albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
00:07:05 dfordvm joins (~dfordivam@160.16.87.223.v6.sakura.ne.jp)
00:07:05 df joins (~ben@justworks.xyz)
00:07:05 Aleksejs joins (~Aleksejs@107.170.21.106)
00:07:05 deriamis_ joins (deriamis@ec2-54-187-167-69.us-west-2.compute.amazonaws.com)
00:07:05 xnyhps joins (~xnyhps@2a02:2770:3:0:216:3eff:fe67:3288)
00:07:05 emergence joins (emergence@2607:5300:60:5910:dcad:beff:feef:5bc)
00:07:05 wryish joins (~wryish@2605:4c40:119:efa3:0:727d:19eb:1)
00:07:05 siers joins (~ij@user/ij)
00:07:05 koala_man joins (~vidar@157.146.251.23.bc.googleusercontent.com)
00:07:05 adamCS joins (~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com)
00:07:05 enikar joins (~enikar@user/enikar)
00:07:05 bryanv joins (~quassel@2603:c028:4503:7500:45b7:933:ab17:bc10)
00:07:05 aws joins (~alews@user/aws)
00:07:05 sweater joins (~sweater@206.81.18.26)
00:07:05 ario joins (~ario@159.65.220.102)
00:07:05 meejah joins (~meejah@104.236.166.239)
00:07:07 × haskellbridge quits (~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection)
00:07:48 pavonia joins (~user@user/siracusa)
00:07:50 haskellbridge joins (~hackager@syn-024-093-192-219.res.spectrum.com)
00:07:50 ChanServ sets mode +v haskellbridge
00:07:55 × Ekho quits (~Ekho@user/ekho) (Max SendQ exceeded)
00:07:55 × m5zs7k quits (aquares@web10.mydevil.net) (Max SendQ exceeded)
00:08:13 m5zs7k joins (aquares@web10.mydevil.net)
00:09:03 phma joins (~phma@host-67-44-208-89.hnremote.net)
00:09:49 029ABLN24 joins (~phma@host-67-44-208-89.hnremote.net)
00:09:49 Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
00:09:49 yahb2 joins (~yahb2@user/tomsmeding/bot/yahb2)
00:09:49 bliminse joins (~bliminse@user/bliminse)
00:09:49 kritzefitz joins (~kritzefit@debian/kritzefitz)
00:09:49 mauke joins (~mauke@user/mauke)
00:09:49 Batzy joins (~quassel@user/batzy)
00:09:49 peutri joins (~peutri@bobo.desast.re)
00:09:49 myxos joins (~myxos@syn-065-028-251-121.res.spectrum.com)
00:09:49 krei-se joins (~krei-se@p5085d24b.dip0.t-ipconnect.de)
00:09:49 migas97 joins (~migas@static.140.65.63.178.clients.your-server.de)
00:09:49 leah2 joins (~leah@vuxu.org)
00:09:49 mrmr155334346 joins (~mrmr@user/mrmr)
00:09:49 _xor joins (~xor@ip-208-102-243-175.dynamic.fuse.net)
00:09:49 lewisje joins (~lewisje@74.215.19.22)
00:09:49 xsarnik joins (xsarnik@lounge.fi.muni.cz)
00:09:49 raym joins (~ray@user/raym)
00:09:49 tolt joins (~weechat-h@li219-154.members.linode.com)
00:09:49 kimiamania joins (~65804703@user/kimiamania)
00:09:49 mzg joins (mzg@abusers.hu)
00:09:49 dunj3 joins (~dunj3@kingdread.de)
00:09:49 gabriel_sevecek joins (~gabriel@188-167-229-200.dynamic.chello.sk)
00:09:49 gawen joins (~gawen@user/gawen)
00:09:49 it_ joins (~quassel@v2202212189510211193.supersrv.de)
00:09:49 koz joins (~koz@121.99.240.58)
00:09:49 wagle joins (~wagle@quassel.wagle.io)
00:09:49 mjacob joins (~mjacob@adrastea.uberspace.de)
00:09:49 xelxebar joins (~xelxebar@wilsonb.com)
00:09:49 paotsaq joins (~paotsaq@127.209.37.188.rev.vodafone.pt)
00:09:49 stefan-_ joins (~cri@42dots.de)
00:09:49 Raito_Bezarius joins (~Raito@wireguard/tunneler/raito-bezarius)
00:09:49 quintasan joins (~quassel@quintasan.pl)
00:09:49 tdammers_ joins (~tdammers@41-138-178-143.ftth.glasoperator.nl)
00:09:49 lockna_ joins (~lockna@static.139.16.130.94.clients.your-server.de)
00:09:49 joeyh_ joins (~joeyh@kitenet.net)
00:09:49 Dykam joins (Dykam@dykam.nl)
00:09:49 vgtw joins (~vgtw@user/vgtw)
00:09:49 spider joins (spider@tilde.cafe)
00:09:49 iridium.libera.chat sets mode +v yahb2
00:09:52 eviltwin_b joins (~eviltwin_@xmonad/geekosaur)
00:10:32 × eviltwin_b quits (~eviltwin_@xmonad/geekosaur) (Client Quit)
00:11:11 × sa quits (sid1055@id-1055.tinside.irccloud.com) (Ping timeout: 262 seconds)
00:11:15 <geekosaur> (dunn if this survived the netsplit) rank-n types, possibly yes. MPTC/fundeps are pretty much unavoidable and have been for at least 20 years
00:12:50 sa joins (sid1055@id-1055.tinside.irccloud.com)
00:15:35 × 029ABLN24 quits (~phma@host-67-44-208-89.hnremote.net) (Ping timeout: 250 seconds)
00:18:59 × Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
00:20:45 Ekho joins (~Ekho@user/ekho)
00:23:21 zhuberty joins (~zhuberty@user/zhuberty)
00:27:01 × foul_owl quits (~kerry@185.219.141.162) (Ping timeout: 256 seconds)
00:41:16 foul_owl joins (~kerry@174-21-147-232.tukw.qwest.net)
00:44:27 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
00:45:26 <davean> I like lambdacase but its DEFINATELY an extension, not fixing a problem.
00:48:17 poscat0x04 joins (~poscat@user/poscat)
00:48:22 × poscat quits (~poscat@user/poscat) (Ping timeout: 268 seconds)
00:55:58 ryanbooker joins (uid4340@id-4340.hampstead.irccloud.com)
01:00:30 × xff0x quits (~xff0x@2405:6580:b080:900:9f96:9dea:14c6:fcb5) (Ping timeout: 256 seconds)
01:06:46 × emmanuelux quits (~emmanuelu@user/emmanuelux) (Quit: au revoir)
01:07:07 xff0x joins (~xff0x@2405:6580:b080:900:cb48:b50f:16dd:ff64)
01:15:49 × Pozyomka quits (~pyon@user/pyon) (Quit: brb)
01:23:57 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
01:32:28 jpyamamoto joins (~jpyamamot@user/jpyamamoto)
01:43:58 × Inst quits (~Inst@user/Inst) (Remote host closed the connection)
01:44:23 Inst joins (~Inst@user/Inst)
01:50:06 aforemny joins (~aforemny@2001:9e8:6ce2:b100:2ae8:9df1:3efc:f7d5)
01:51:37 × aforemny_ quits (~aforemny@i59F516D8.versanet.de) (Ping timeout: 272 seconds)
01:55:16 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds)
02:10:55 <monochrom> I don't have my idea of "modern haskell", but I have my idea of "not-annoying haskell", and it includes LambdaCase, BlockArguments, ScopedTypeVariables. :)
02:11:25 <bsima> +1
02:14:05 × xff0x quits (~xff0x@2405:6580:b080:900:cb48:b50f:16dd:ff64) (Ping timeout: 240 seconds)
02:16:08 Pozyomka joins (~pyon@user/pyon)
02:22:36 × jpyamamoto quits (~jpyamamot@user/jpyamamoto) (Remote host closed the connection)
02:29:53 × td_ quits (~td@i5387092C.versanet.de) (Ping timeout: 252 seconds)
02:31:28 td_ joins (~td@i53870910.versanet.de)
02:31:58 <yin> fyi TupleSections and ScopedTypeVariables are part of GHC2021+ and LambdaCase is part of GHC2024
02:32:13 <yin> https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/control.html#extension-GHC2024
02:48:59 troydm joins (~troydm@user/troydm)
02:54:59 <davean> ScopedTypeVariables is part of non-broken Haskell.
02:55:22 <davean> I'd argue TupleSections is too, because it removes the one special case. That said, I'm less sure of that one.
03:01:04 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
03:19:56 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 252 seconds)
03:21:39 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
03:26:51 aforemny_ joins (~aforemny@2001:9e8:6ceb:9800:f0b2:9010:cc:b689)
03:28:07 × aforemny quits (~aforemny@2001:9e8:6ce2:b100:2ae8:9df1:3efc:f7d5) (Ping timeout: 260 seconds)
03:33:20 × dfg quits (~dfg@user/dfg) (Server closed connection)
03:33:35 dfg joins (~dfg@user/dfg)
03:33:55 <mauke> :t (, "f", ,)
03:33:56 <lambdabot> t1 -> t2 -> t3 -> (t1, [Char], t2, t3)
03:36:58 yin gasps
03:38:09 × segfaultfizzbuzz quits (~segfaultf@23-93-79-84.fiber.dynamic.sonic.net) (Remote host closed the connection)
03:40:43 × troydm quits (~troydm@user/troydm) (Ping timeout: 268 seconds)
03:41:41 <jle`> i have been rethinking tuple sections a bit lately. a lot of modern languages allow trailing commas in these sort of things, but tuplesections make this impossible
03:42:05 <jle`> after programming in different languages for a while it seems like trailing commas is sort of a modern given
03:42:39 <mauke> :t [, "f", ,]
03:42:40 <lambdabot> error: parse error on input ‘,’
03:44:04 <dibblego> @type \p -> over p . cons
03:44:05 <lambdabot> Cons b b a a => ASetter s t b b -> a -> s -> t
03:44:51 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
03:49:35 <dolio> It sounds very modern to cache in a nice feature to instead have a mediocre solution to non-problems created by bad tools. :þ
03:49:45 <dolio> Cash in, I guess.
03:50:56 × ryanbooker quits (uid4340@id-4340.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
03:53:19 × poscat0x04 quits (~poscat@user/poscat) (Ping timeout: 260 seconds)
03:55:39 poscat joins (~poscat@user/poscat)
03:57:25 <monochrom> I am more extreme. I want both leading commas and trailing commas! [, 1, 2, 3,]. But I get your point, my desire is only driven by bad tools.
03:58:45 <yin> i want no commas
03:58:49 <yin> lisp <3
03:59:33 <monochrom> :(
03:59:35 <monochrom> :D
04:06:41 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
04:07:30 <haskellbridge> <maerwald> Get out
04:08:59 × Fijxu quits (~Fijxu@user/fijxu) (Server closed connection)
04:09:38 Fijxu joins (~Fijxu@user/fijxu)
04:10:11 <probie> monochrom: Clojure has leading and trailing commas and commas wherever else you want them because they're just treated as whitespace characters. It's also the same for GraphQL (albeit it's not a programming language)
04:13:11 <haskellbridge> <maerwald> Clojure is trash
04:14:36 rosco joins (~rosco@175.136.155.137)
04:17:58 <probie> I'm not exactly going to go out of my way to write Clojure, but it's certainly not at the bottom of my hierarchy of tolerable languages. All other things being equal, I'd take it over JavaScript (although probably not TypeScript)
04:27:34 × YoungFrog quits (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in)
04:27:55 YoungFrog joins (~youngfrog@2a02:a03f:c9db:fc00:e986:8b08:7baa:1e2a)
04:30:52 × L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection timed out)
04:31:46 × yin quits (~yin@user/zero) (Ping timeout: 246 seconds)
04:33:38 meritamen joins (~user@user/meritamen)
04:34:20 × meritamen quits (~user@user/meritamen) (Remote host closed the connection)
04:52:34 × rosco quits (~rosco@175.136.155.137) (Quit: Lost terminal)
04:55:02 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
04:55:57 × foul_owl quits (~kerry@174-21-147-232.tukw.qwest.net) (Ping timeout: 268 seconds)
04:58:57 × euleritian quits (~euleritia@77.22.252.56) (Read error: Connection reset by peer)
04:59:09 euleritian joins (~euleritia@77.22.252.56)
05:08:09 × euleritian quits (~euleritia@77.22.252.56) (Read error: Connection reset by peer)
05:08:29 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
05:09:09 foul_owl joins (~kerry@185.216.231.179)
05:09:09 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
05:10:01 euleritian joins (~euleritia@77.22.252.56)
05:18:44 × img quits (~img@user/img) (Server closed connection)
05:19:02 img joins (~img@user/img)
05:25:44 acidjnk_new joins (~acidjnk@p200300d6e72cfb32118c9e6089f03830.dip0.t-ipconnect.de)
05:26:16 <jackdk> Nixlang has space-separated lists and space-separated function application, which is a perennial source of entertainment^Wbugs. Lisp can get away with no commas because it has parens for function application. I wish more languages used sexps as syntax, they're delightful to edit and lay out
05:26:29 × Hobbyboy quits (Hobbyboy@hobbyboy.co.uk) (Server closed connection)
05:28:15 Hobbyboy joins (Hobbyboy@hobbyboy.co.uk)
05:30:24 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
05:32:13 danse-nr3 joins (~danse-nr3@151.57.171.215)
05:41:41 × danse-nr3 quits (~danse-nr3@151.57.171.215) (Remote host closed the connection)
05:42:03 danse-nr3 joins (~danse-nr3@151.57.171.215)
05:46:56 sord937 joins (~sord937@gateway/tor-sasl/sord937)
05:52:47 × Square2 quits (~Square4@user/square) (Ping timeout: 260 seconds)
05:59:23 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
06:03:41 × nek0 quits (~nek0@user/nek0) (Server closed connection)
06:03:57 nek0 joins (~nek0@2a01:4f8:222:2b41::12)
06:03:57 × nek0 quits (~nek0@2a01:4f8:222:2b41::12) (Changing host)
06:03:57 nek0 joins (~nek0@user/nek0)
06:05:17 Square joins (~Square@user/square)
06:08:16 <haskellbridge> <sm> https://discourse.haskell.org/t/information-about-my-programming-language-project-lemma/9937 is interesting. Commas or newlines are equivalent
06:19:58 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 260 seconds)
06:21:58 ChaiTRex joins (~ChaiTRex@user/chaitrex)
06:27:21 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
06:29:11 czy joins (~user@fortigate.wolfson.cam.ac.uk)
06:35:29 × ft quits (~ft@p4fc2ab80.dip0.t-ipconnect.de) (Quit: leaving)
06:38:05 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
06:39:01 × echoreply quits (~echoreply@45.32.163.16) (Quit: WeeChat 2.8)
06:39:33 echoreply joins (~echoreply@45.32.163.16)
06:40:30 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 260 seconds)
06:40:53 × noctuks quits (IEHAXjvqp6@user/noctux) (Server closed connection)
06:41:11 noctuks joins (jNrZ4rwLcI@user/noctux)
06:42:57 chexum joins (~quassel@gateway/tor-sasl/chexum)
06:58:11 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
07:07:39 × euleritian quits (~euleritia@77.22.252.56) (Ping timeout: 256 seconds)
07:07:55 × rvalue quits (~rvalue@user/rvalue) (Read error: Connection reset by peer)
07:08:25 rvalue joins (~rvalue@user/rvalue)
07:12:00 euleritian joins (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de)
07:12:48 × euleritian quits (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
07:16:43 euleritian joins (~euleritia@77.22.252.56)
07:17:28 barodo joins (~barodo@149.50.189.151)
07:18:25 × barodo quits (~barodo@149.50.189.151) (Client Quit)
07:26:46 kenran joins (~user@user/kenran)
07:40:34 × kenran quits (~user@user/kenran) (Remote host closed the connection)
07:47:32 dhil joins (~dhil@2001:8e0:2014:3100:a85b:6416:b5a0:a3a6)
07:49:26 × euleritian quits (~euleritia@77.22.252.56) (Ping timeout: 252 seconds)
07:49:53 euleritian joins (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de)
07:52:16 mreh joins (~matthew@host86-160-168-12.range86-160.btcentralplus.com)
07:53:44 × dminuoso quits (~weechat@user/dminuoso) (Server closed connection)
07:54:10 weechat2 joins (~weechat@user/dminuoso)
07:55:02 simendsjo joins (~user@31-209-41-23.cust.bredband2.com)
07:58:23 × Typedfern quits (~Typedfern@182.red-83-37-43.dynamicip.rima-tde.net) (Server closed connection)
07:58:46 Typedfern joins (~Typedfern@182.red-83-37-43.dynamicip.rima-tde.net)
08:00:52 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
08:00:52 kenran joins (~user@user/kenran)
08:05:35 × Franciman quits (~Franciman@mx1.fracta.dev) (Ping timeout: 256 seconds)
08:07:34 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
08:07:43 × poscat quits (~poscat@user/poscat) (Ping timeout: 256 seconds)
08:09:50 × euleritian quits (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
08:10:07 poscat joins (~poscat@user/poscat)
08:10:09 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
08:17:58 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Remote host closed the connection)
08:19:37 × Square quits (~Square@user/square) (Ping timeout: 256 seconds)
08:24:29 michalz joins (~michalz@185.246.207.218)
08:25:51 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
08:26:09 × danse-nr3 quits (~danse-nr3@151.57.171.215) (Quit: Leaving)
08:26:46 euleritian joins (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de)
08:27:41 × euleritian quits (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
08:27:59 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
08:33:06 takuan joins (~takuan@178-116-218-225.access.telenet.be)
08:33:54 acidjnk_new3 joins (~acidjnk@p200300d6e72cfb326c97883dc2703faf.dip0.t-ipconnect.de)
08:36:35 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
08:36:57 × infinity0 quits (~infinity0@pwned.gg) (Ping timeout: 272 seconds)
08:37:41 × acidjnk_new quits (~acidjnk@p200300d6e72cfb32118c9e6089f03830.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
08:39:13 × TactfulCitrus quits (~al@2a02:8012:87a6:0:bee8:7ef6:2b1b:f311) (Ping timeout: 246 seconds)
08:41:43 euleritian joins (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de)
08:49:47 × raym quits (~ray@user/raym) (Ping timeout: 264 seconds)
08:51:26 × ghodawalaaman quits (~thelounge@user/thelounge8234) (Quit: Ping timeout (120 seconds))
08:51:34 raym joins (~ray@user/raym)
08:51:51 ghodawalaaman joins (~thelounge@194-195-113-248.ip.linodeusercontent.com)
08:52:09 ghodawalaaman is now known as Guest857
08:57:44 danse-nr3 joins (~danse-nr3@151.57.150.40)
08:59:27 × Guest857 quits (~thelounge@194-195-113-248.ip.linodeusercontent.com) (Changing host)
08:59:27 Guest857 joins (~thelounge@user/thelounge8234)
09:00:54 × kenran quits (~user@user/kenran) (Remote host closed the connection)
09:01:16 × euleritian quits (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de) (Ping timeout: 246 seconds)
09:01:35 euleritian joins (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de)
09:05:18 Guest857 is now known as ghodawalaaman
09:05:30 CiaoSen joins (~Jura@2a05:5800:2b4:7a00:e6b9:7aff:fe80:3d03)
09:08:53 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 240 seconds)
09:12:18 cfricke joins (~cfricke@user/cfricke)
09:13:29 × simendsjo quits (~user@31-209-41-23.cust.bredband2.com) (Remote host closed the connection)
09:14:29 Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
09:17:36 chele joins (~chele@user/chele)
09:22:41 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
09:25:01 misterfish joins (~misterfis@87.215.131.102)
09:28:05 × driib3 quits (~driib@vmi931078.contaboserver.net) (Quit: The Lounge - https://thelounge.chat)
09:28:18 × tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
09:28:43 driib3 joins (~driib@vmi931078.contaboserver.net)
09:31:29 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
09:35:01 simendsjo joins (~user@31-209-41-68.cust.bredband2.com)
09:36:04 × michalz quits (~michalz@185.246.207.218) (Quit: ZNC 1.9.0 - https://znc.in)
09:37:15 × cheater quits (~Username@user/cheater) (Ping timeout: 260 seconds)
09:41:56 killer joins (~killer@2603:c021:8004:5ddd:9f39:b2ed:a098:162f)
09:42:53 × killer quits (~killer@2603:c021:8004:5ddd:9f39:b2ed:a098:162f) (Client Quit)
09:44:27 L29Ah joins (~L29Ah@wikipedia/L29Ah)
09:46:33 gmg joins (~user@user/gehmehgeh)
09:47:26 infinity0 joins (~infinity0@pwned.gg)
09:51:45 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
09:55:36 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
10:00:05 × mikess quits (~mikess@user/mikess) (Ping timeout: 240 seconds)
10:01:09 × califax quits (~califax@user/califx) (Remote host closed the connection)
10:02:21 califax joins (~califax@user/califx)
10:07:11 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 264 seconds)
10:17:27 <danse-nr3> i like this dev's style cs-syd.eu/posts/2024-07-08_announcing-opt-env-conf
10:17:51 × euleritian quits (~euleritia@dynamic-176-006-187-089.176.6.pool.telefonica.de) (Ping timeout: 268 seconds)
10:19:15 × CiaoSen quits (~Jura@2a05:5800:2b4:7a00:e6b9:7aff:fe80:3d03) (Ping timeout: 260 seconds)
10:19:15 euleritian joins (~euleritia@dynamic-176-006-192-149.176.6.pool.telefonica.de)
10:19:43 alexherbo2 joins (~alexherbo@2a02-8440-311a-ab9d-102a-b36a-de33-8b22.rev.sfr.net)
10:23:26 × euleritian quits (~euleritia@dynamic-176-006-192-149.176.6.pool.telefonica.de) (Ping timeout: 252 seconds)
10:29:29 × alexherbo2 quits (~alexherbo@2a02-8440-311a-ab9d-102a-b36a-de33-8b22.rev.sfr.net) (Remote host closed the connection)
10:29:50 alexherbo2 joins (~alexherbo@2a02-8440-311a-ab9d-102a-b36a-de33-8b22.rev.sfr.net)
10:36:14 czy joins (~user@fortigate.wolfson.cam.ac.uk)
10:36:35 × simendsjo quits (~user@31-209-41-68.cust.bredband2.com) (Ping timeout: 264 seconds)
10:38:15 cheater joins (~Username@user/cheater)
10:39:24 × cheater quits (~Username@user/cheater) (Read error: Connection reset by peer)
10:40:10 cheater joins (~Username@user/cheater)
10:41:56 × ridcully quits (~ridcully@p508ac2b4.dip0.t-ipconnect.de) (Quit: WeeChat 4.3.2)
10:42:14 ridcully joins (~ridcully@p508ac2b4.dip0.t-ipconnect.de)
11:01:35 xff0x joins (~xff0x@2405:6580:b080:900:bf0c:5535:de21:7813)
11:05:02 × dhil quits (~dhil@2001:8e0:2014:3100:a85b:6416:b5a0:a3a6) (Ping timeout: 268 seconds)
11:05:33 yin joins (~yin@user/zero)
11:08:05 × sroso quits (~sroso@user/SrOso) (Quit: Leaving :))
11:08:05 kenran joins (~user@user/kenran)
11:10:36 nullobject joins (~josh@user/nullobject)
11:11:10 __monty__ joins (~toonn@user/toonn)
11:14:34 × nullobject quits (~josh@user/nullobject) (Client Quit)
11:18:01 nullobject joins (~josh@user/nullobject)
11:22:39 × mreh quits (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 256 seconds)
11:24:15 × nullobject quits (~josh@user/nullobject) (Quit: WeeChat 3.5)
11:26:26 weechat2 is now known as dminuoso
11:31:04 nullobject joins (~nullobjec@user/nullobject)
11:32:10 × chiselfuse quits (~chiselfus@user/chiselfuse) (Ping timeout: 260 seconds)
11:34:34 chiselfuse joins (~chiselfus@user/chiselfuse)
11:35:15 × haritz quits (~hrtz@user/haritz) (Remote host closed the connection)
11:35:46 haritz joins (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk)
11:37:34 × haritz quits (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host)
11:37:34 haritz joins (~hrtz@user/haritz)
11:48:13 × nullobject quits (~nullobjec@user/nullobject) (Ping timeout: 246 seconds)
11:54:37 × alexherbo2 quits (~alexherbo@2a02-8440-311a-ab9d-102a-b36a-de33-8b22.rev.sfr.net) (Remote host closed the connection)
11:54:57 alexherbo2 joins (~alexherbo@2a02-8440-311a-ab9d-102a-b36a-de33-8b22.rev.sfr.net)
12:07:56 × tomku quits (~tomku@user/tomku) (Ping timeout: 252 seconds)
12:08:10 tomku joins (~tomku@user/tomku)
12:11:11 × kenran quits (~user@user/kenran) (Remote host closed the connection)
12:13:55 CiaoSen joins (~Jura@2a05:5800:2b4:7a00:e6b9:7aff:fe80:3d03)
12:16:01 × califax quits (~califax@user/califx) (Remote host closed the connection)
12:17:08 califax joins (~califax@user/califx)
12:22:23 kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be)
12:25:11 × califax quits (~califax@user/califx) (Remote host closed the connection)
12:25:39 × danse-nr3 quits (~danse-nr3@151.57.150.40) (Quit: Leaving)
12:25:50 rvalue- joins (~rvalue@user/rvalue)
12:26:22 califax joins (~califax@user/califx)
12:26:44 × rvalue quits (~rvalue@user/rvalue) (Ping timeout: 268 seconds)
12:27:23 × tomku quits (~tomku@user/tomku) (Remote host closed the connection)
12:27:37 tomku joins (~tomku@user/tomku)
12:29:55 ph88 joins (~ph88@2a02:8109:9e26:c800:d825:8718:98d7:1cb9)
12:30:03 <ph88> hi all !
12:30:27 <ph88> How can i define that k must be a type in this type signature? https://bpa.st/PA7Q
12:32:28 <mauke> :t 1 :: (Int :: *)
12:32:29 <lambdabot> Int
12:33:26 <mauke> I wonder if you could just say ... (response :: Type) in that type signature
12:33:42 rvalue- is now known as rvalue
12:35:27 × califax quits (~califax@user/califx) (Remote host closed the connection)
12:36:58 califax joins (~califax@user/califx)
12:38:43 × tomku quits (~tomku@user/tomku) (Remote host closed the connection)
12:38:57 tomku joins (~tomku@user/tomku)
12:39:11 × califax quits (~califax@user/califx) (Remote host closed the connection)
12:39:44 <ph88> Not in scope: type constructor or class ‘Type’
12:40:16 califax joins (~califax@user/califx)
12:40:37 <mauke> Data.Kind? or where was it defined
12:41:16 <ph88> mauke, i tried with star, not sure where i should put the signature https://bpa.st/3TNA
12:42:58 ubert joins (~Thunderbi@p200300ecdf24f18b8c1e05593c61bd0b.dip0.t-ipconnect.de)
12:43:05 <mauke> (response :: *)
12:44:04 <mauke> wait, that still doesn't make sense
12:46:24 <mauke> if "k must be a type", then response would be a value, so what is it doing in a type signature?
12:47:21 euleritian joins (~euleritia@dynamic-176-006-193-058.176.6.pool.telefonica.de)
12:50:27 JuanDaugherty joins (~juan@user/JuanDaugherty)
12:54:38 <ph88> hmm let me think about this for a bit
12:56:30 mreh joins (~matthew@host86-160-168-12.range86-160.btcentralplus.com)
13:01:52 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
13:02:22 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
13:19:37 danse-nr3 joins (~danse-nr3@151.43.98.142)
13:19:52 × danse-nr3 quits (~danse-nr3@151.43.98.142) (Remote host closed the connection)
13:20:17 danse-nr3 joins (~danse-nr3@151.43.98.142)
13:20:53 × euleritian quits (~euleritia@dynamic-176-006-193-058.176.6.pool.telefonica.de) (Ping timeout: 240 seconds)
13:21:42 euleritian joins (~euleritia@dynamic-176-001-218-022.176.1.pool.telefonica.de)
13:26:23 xdminsy joins (~xdminsy@117.147.70.227)
13:32:52 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
13:35:28 ystael joins (~ystael@user/ystael)
13:36:01 × euleritian quits (~euleritia@dynamic-176-001-218-022.176.1.pool.telefonica.de) (Ping timeout: 246 seconds)
13:54:28 × tomku quits (~tomku@user/tomku) (Remote host closed the connection)
13:54:42 tomku joins (~tomku@user/tomku)
13:58:20 × alexherbo2 quits (~alexherbo@2a02-8440-311a-ab9d-102a-b36a-de33-8b22.rev.sfr.net) (Remote host closed the connection)
13:58:39 alexherbo2 joins (~alexherbo@2a02-8440-311a-ab9d-102a-b36a-de33-8b22.rev.sfr.net)
14:08:23 <yin> > (7 :: (Num k => k :: (Type :: Type)))
14:08:24 <lambdabot> error:
14:08:25 <lambdabot> Not in scope: type constructor or class ‘Type’error:
14:08:25 <lambdabot> Not in scope: type constructor or class ‘Type’
14:08:40 <yin> > (7 :: (Num k => k :: (Data.Kind.Type :: Data.Kind.Type)))
14:08:41 <lambdabot> error:
14:08:42 <lambdabot> Not in scope: type constructor or class ‘Data.Kind.Type’
14:08:42 <lambdabot> No module named ‘Data.Kind’ is imported.error:
14:08:47 <yin> damn it
14:08:47 <danse-nr3> hoogle Type
14:08:52 <danse-nr3> @hoogle Type
14:08:52 <lambdabot> Data.Kind type Type = Type
14:08:52 <lambdabot> module GHC.Exception.Type
14:08:52 <lambdabot> GHC.Exts data TYPE (a :: RuntimeRep)
14:09:01 <yin> > (7 :: (Num k => k :: (* :: *)))
14:09:02 <lambdabot> 7
14:09:02 <danse-nr3> > import Data.Kind
14:09:04 <lambdabot> <hint>:1:1: error: parse error on input ‘import’
14:09:27 <yin> > (7 :: (Num k => k :: (* :: (* :: *)))) -- this is my point
14:09:27 <danse-nr3> % import Data.Kind
14:09:27 <yahb2> <no output>
14:09:28 <lambdabot> 7
14:10:01 <danse-nr3> % (7 :: (Num k => k :: (Type :: Type)))
14:10:01 <yahb2> 7
14:10:10 <yin> mauke: ph88: this^
14:10:26 × alexherbo2 quits (~alexherbo@2a02-8440-311a-ab9d-102a-b36a-de33-8b22.rev.sfr.net) (Remote host closed the connection)
14:11:05 Sgeo joins (~Sgeo@user/sgeo)
14:11:19 <haskellbridge> <mauke> @let import Data.Kind
14:11:51 <danse-nr3> @let import Data.Kind
14:11:52 <lambdabot> Defined.
14:12:05 <danse-nr3> hmm... not sure that's what you wanted
14:13:55 <yin> kinds have metakinds which in turn have metametakinds ad infinitum (actually i think there's a limit in haskell but whatever)
14:14:36 × JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
14:14:46 <haskellbridge> <mauke> Now Type should exist in lambdabot
14:15:23 <yin> > (7 :: (Num k => k :: (Type :: (Type :: Type))))
14:15:24 <lambdabot> 7
14:15:28 alexherbo2 joins (~alexherbo@30.151.22.93.rev.sfr.net)
14:15:29 <danse-nr3> i thought you wanted that, but the `Defined` reply confused me
14:15:37 <yin> > (7 :: (Num k => k :: (Type :: (Type :: (Type :: Type)))))
14:15:38 <lambdabot> 7
14:15:47 <yin> > (7 :: (Num k => k :: (Type :: (Type :: (Type :: (Type :: Type))))))
14:15:48 <lambdabot> 7
14:15:50 <yin> etc...
14:18:28 <yin> not that related, but this reminded me of something i learned not long ago about how the derivation hierarchy goes in physics: position, velocity, acceleration, jerk, snap/jounce, crackle and pop
14:20:36 <Leary> The original error was "Expected a type, but ‘response’ has kind ‘k’". That means /response/ should be a Type, not k---TypeInType is moot.
14:22:51 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 260 seconds)
14:25:11 pavonia joins (~user@user/siracusa)
14:27:02 <kuribas> I guess the confusing is between "k is a type" and "k is Type"
14:27:14 <kuribas> One is (k :: *), the other (k ~ *)
14:28:39 <yin> exactly
14:29:07 <kuribas> It's something that can be confusing at first when dealing with dependent types.
14:29:55 <yin> imo haskell should do something about this, but i'm happy enough that we moved away from *
14:29:59 × misterfish quits (~misterfis@87.215.131.102) (Ping timeout: 264 seconds)
14:30:12 dhil joins (~dhil@2001:8e0:2014:3100:6d7c:ff84:7411:4b4e)
14:30:16 × CiaoSen quits (~Jura@2a05:5800:2b4:7a00:e6b9:7aff:fe80:3d03) (Ping timeout: 246 seconds)
14:30:58 <yin> our type system needs a type system goddammit
14:31:13 <kuribas> -XDependentTypes :)
14:31:43 × CrunchyFlakes quits (~CrunchyFl@146.52.130.128) (Read error: Connection reset by peer)
14:32:32 × czy quits (~user@fortigate.wolfson.cam.ac.uk) (Ping timeout: 268 seconds)
14:34:09 euleritian joins (~euleritia@dynamic-176-003-089-142.176.3.pool.telefonica.de)
14:34:12 CrunchyFlakes joins (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de)
14:34:45 <kuribas> Our type system has a type system, it's called Kinds.
14:35:05 <kuribas> it used to be simple: kind = * | kind -> kind
14:35:13 <srk> yin: it also goes the other way around https://en.wikipedia.org/wiki/Absement#Higher_integrals :D
14:35:28 <kuribas> But then we allowed lifting values in types, "constraint kinds", etc...
14:36:23 <kuribas> All of this to hide the fact that haskell isn't really dependently typed, and type level programming is not what makes haskell great.
14:39:54 <yin> srk: "abserk"
14:41:05 <EvanR> abasement
14:41:16 <EvanR> apenthouse
14:42:00 <yin> what's abs+pop ?
14:42:50 × m1dnight quits (~christoph@82.146.125.185) (Quit: WeeChat 4.2.2)
14:43:06 <yin> kuribas: :)
14:43:16 m1dnight joins (~christoph@82.146.125.185)
14:44:26 CiaoSen joins (~Jura@2a05:5800:2b4:7a00:e6b9:7aff:fe80:3d03)
14:47:34 <srk> yin: seems to only go up to absounce :(
14:47:36 cpressey joins (~weechat@176.254.71.203)
14:48:14 <yin> srk: absounce sounds like something you're low in on mondays
14:49:53 <yin> my absounce is constant on mondays
14:50:33 <yin> need to angle it up
14:50:52 <yin> and then you feel the weight of all its derivatives
14:51:38 <yin> until you get a litte movement
14:51:55 <srk> :))
15:00:05 × TMA quits (tma@twin.jikos.cz) (Ping timeout: 240 seconds)
15:04:12 TMA joins (tma@twin.jikos.cz)
15:06:22 × chele quits (~chele@user/chele) (Remote host closed the connection)
15:07:54 ubert1 joins (~Thunderbi@p200300ecdf24f17cdfae8dfb94d1c609.dip0.t-ipconnect.de)
15:08:53 × TMA quits (tma@twin.jikos.cz) (Ping timeout: 240 seconds)
15:08:53 × ubert quits (~Thunderbi@p200300ecdf24f18b8c1e05593c61bd0b.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
15:08:53 ubert1 is now known as ubert
15:15:35 × yin quits (~yin@user/zero) (Ping timeout: 260 seconds)
15:16:38 cfricke joins (~cfricke@user/cfricke)
15:21:22 TMA joins (tma@twin.jikos.cz)
15:21:51 forell joins (~forell@user/forell)
15:34:40 × cfricke quits (~cfricke@user/cfricke) (Ping timeout: 246 seconds)
15:37:45 ft joins (~ft@p4fc2ab80.dip0.t-ipconnect.de)
15:41:37 × kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
15:44:18 mikess joins (~mikess@user/mikess)
15:48:59 cfricke joins (~cfricke@user/cfricke)
16:00:46 <Leary> Is there a nice way to convince haddock to break up long types line by line? Putting a one-space comment ("-- ^ ") on one argument works, but looking at it is giving me rabies.
16:02:12 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
16:05:41 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 4.2.2)
16:09:58 × tomku quits (~tomku@user/tomku) (Ping timeout: 268 seconds)
16:10:00 × CiaoSen quits (~Jura@2a05:5800:2b4:7a00:e6b9:7aff:fe80:3d03) (Ping timeout: 256 seconds)
16:10:13 tomku joins (~tomku@user/tomku)
16:12:47 × danse-nr3 quits (~danse-nr3@151.43.98.142) (Quit: Leaving)
16:24:03 × CrunchyFlakes quits (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
16:25:36 <Leary> Marginal improvement: use {- | -} or {- ^ -}. At least they're symmetric, and absent of trailing spaces? It's enough to keep rabies at bay, but I might still get a flu.
16:26:35 CrunchyFlakes joins (~CrunchyFl@146.52.130.128)
16:30:19 × dhil quits (~dhil@2001:8e0:2014:3100:6d7c:ff84:7411:4b4e) (Ping timeout: 246 seconds)
16:39:34 × cpressey quits (~weechat@176.254.71.203) (Ping timeout: 268 seconds)
16:44:23 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 264 seconds)
16:44:49 × srk quits (~sorki@user/srk) (Ping timeout: 268 seconds)
16:45:05 × ystael quits (~ystael@user/ystael) (Ping timeout: 256 seconds)
16:45:34 srk joins (~sorki@user/srk)
16:47:03 ystael joins (~ystael@user/ystael)
16:51:25 × alexherbo2 quits (~alexherbo@30.151.22.93.rev.sfr.net) (Remote host closed the connection)
17:03:10 econo_ joins (uid147250@id-147250.tinside.irccloud.com)
17:08:42 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
17:15:08 Jackneill joins (~Jackneill@217-197-184-151.pool.digikabel.hu)
17:20:58 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
17:21:35 × hueso quits (~root@user/hueso) (Quit: No Ping reply in 180 seconds.)
17:22:46 hueso joins (~root@user/hueso)
17:25:52 yin joins (~yin@user/zero)
17:28:01 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
17:35:47 ash3en joins (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8)
17:41:32 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
17:45:21 ash3en is now known as ultima12
17:48:28 × motherfsck quits (~motherfsc@user/motherfsck) (Quit: quit)
17:53:38 × Pixi quits (~Pixi@user/pixi) (Quit: Leaving)
17:56:48 tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net)
18:14:16 × _________ quits (~nobody@user/noodly) (Ping timeout: 246 seconds)
18:15:32 _________ joins (~nobody@user/noodly)
18:22:22 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
18:23:17 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds)
18:23:43 Lord_of_Life_ is now known as Lord_of_Life
18:26:05 cheater_ joins (~Username@user/cheater)
18:27:36 Pixi joins (~Pixi@user/pixi)
18:28:47 × cheater quits (~Username@user/cheater) (Ping timeout: 264 seconds)
18:28:51 cheater_ is now known as cheater
18:34:47 × CrunchyFlakes quits (~CrunchyFl@146.52.130.128) (Read error: Connection reset by peer)
18:37:21 CrunchyFlakes joins (~CrunchyFl@146.52.130.128)
18:41:07 × mreh quits (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Remote host closed the connection)
18:44:05 takuan joins (~takuan@178-116-218-225.access.telenet.be)
18:50:01 motherfsck joins (~motherfsc@user/motherfsck)
18:58:54 × tomku quits (~tomku@user/tomku) (Remote host closed the connection)
18:59:08 tomku joins (~tomku@user/tomku)
19:00:40 misterfish joins (~misterfis@84.53.85.146)
19:01:28 target_i joins (~target_i@user/target-i/x-6023099)
19:03:19 × ultima12 quits (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8) (Ping timeout: 250 seconds)
19:04:57 × euphores quits (~SASL_euph@user/euphores) (Quit: Leaving.)
19:06:36 machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net)
19:09:14 × xdminsy quits (~xdminsy@117.147.70.227) (Quit: Konversation terminated!)
19:09:14 christiaanb joins (uid84827@id-84827.lymington.irccloud.com)
19:11:00 alexherbo2 joins (~alexherbo@2a02-8440-311a-ab9d-bd9d-bb5a-6bfa-4981.rev.sfr.net)
19:16:20 euphores joins (~SASL_euph@user/euphores)
19:16:44 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
19:16:49 × incertia quits (~incertia@209.122.137.252) (Ping timeout: 268 seconds)
19:18:31 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
19:23:06 cpressey joins (~weechat@176.254.71.203)
19:33:42 incertia joins (~incertia@209.122.137.252)
19:33:57 × superbil quits (~superbil@114-32-231-70.hinet-ip.hinet.net) (*.net *.split)
19:34:18 superbil joins (~superbil@114-32-231-70.hinet-ip.hinet.net)
19:35:23 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
19:35:38 × tomku quits (~tomku@user/tomku) (Remote host closed the connection)
19:35:53 tomku joins (~tomku@user/tomku)
19:36:35 × cpressey quits (~weechat@176.254.71.203) (Ping timeout: 264 seconds)
19:42:25 ash3en joins (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8)
19:45:31 destituion joins (~destituio@ti0185q160-0175.bb.online.no)
19:50:07 catties is now known as Catty
19:50:07 × ash3en quits (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8) (Ping timeout: 250 seconds)
19:50:31 cpressey joins (~weechat@176.254.71.203)
19:51:25 hugo- joins (hugo@quicksilver.lysator.liu.se)
19:52:29 × hgolden_ quits (~hgolden@2603:8000:9d00:3ed1:2678:8497:aa5c:7fa9) (Remote host closed the connection)
19:52:47 ash3en joins (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8)
19:53:15 hgolden joins (~hgolden@2603:8000:9d00:3ed1:2678:8497:aa5c:7fa9)
19:54:26 Square joins (~Square@user/square)
19:56:46 × mniip_ quits (mniip@libera/staff/mniip) (*.net *.split)
19:56:53 mniip joins (mniip@libera/staff/mniip)
20:03:51 <ph88> i tried to make a piece of code abstract while working with typeclasses, after that code is done i want to get back the concrete type, i can do it with unsafeCoerce. Is there another way? Perhaps i can match case on all the possible instances of the typeclass?
20:04:10 <ph88> or is there perhaps a better design pattern ?
20:06:35 × ash3en quits (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8) (Ping timeout: 250 seconds)
20:07:59 <tomsmeding> ph88: type classes are open (anyone can add an additional instance), so you cannot case match on the types of a type class
20:08:08 <tomsmeding> what would that even mean for MultiParamTypeClasses?
20:09:03 <tomsmeding> at the place where you passed the value (of concrete type) to a function that expects some abstracted type, you remember that it's actually the concrete type
20:09:07 <tomsmeding> so there you can "convert back", i.e. do nothing
20:14:34 ash3en joins (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8)
20:16:36 <Leary> I rather suspect we're dealing with an existential, not a universal. ph88? If it's so, you need to wrap up something like a `Typeable` constraint with the value and use `cast`.
20:17:01 <tomsmeding> possibly, but in that case I would suggest not using an existential if possible
20:17:06 <ph88> i have put all of those types that implement the type class into a single list wrapped in this type https://bpa.st/7ZYQ they need to be in a single list because the abstract code works like that. The abstract code will change the values through the typeclass. Afterwards i need to put them back together in their original shape.
20:17:12 <ph88> yes existential
20:17:34 <tomsmeding> as in, if you currently have a function that takes an (exists a. C a => a), rewrite it to take an 'a' and give it a 'C a' constraint
20:18:17 × cpressey quits (~weechat@176.254.71.203) (Ping timeout: 256 seconds)
20:18:24 <tomsmeding> what about a HList with the All constraint on its type-level list?
20:18:31 <tomsmeding> then the type of the HList reflects what's inside
20:18:44 <tomsmeding> so if you know what that type-level list is, you can get them back out in a type-safe manner
20:19:21 cpressey joins (~weechat@176.254.71.203)
20:19:30 <ph88> the abstract code can not know what the types are inside the existential .. otherwise my code won't be modular (i want to split that part out into a library later)
20:19:52 <tomsmeding> if a function takes any 'a', then it certainly doesn't know what that 'a' is
20:21:08 <ph88> true, just at the moment it can operate on it through the typeclass
20:21:14 <tomsmeding> indeed
20:21:22 <tomsmeding> no need for an existential to achieve modularity ;)
20:22:07 <ph88> existential was needed to put all of the types into some kind of key-value data structure where i get the key through the typeclass and is further agnostic about the relation between the different values
20:22:49 <tomsmeding> can the key-value data structure be a DMap instead? https://hackage.haskell.org/package/dependent-map-0.4.0.0/docs/Data-Dependent-Map.html
20:23:15 <tomsmeding> (the type of its 'lookup' method is instructive as to what it does)
20:23:39 <ph88> basically i'm going from an object graph (as in database objects) .. to key-value .. then query to add second keys to objects, then i want to ask on the old object what it's relations where with first key, and then look for that object with the first key and get the refreshed second key
20:23:46 <tomsmeding> (click through to GCompare and GOrdering to see _how_ it does that)
20:25:00 <tomsmeding> I'm having trouble following that without more specifics :)
20:25:27 <tomsmeding> as I understand it, you have a bunch of objects with associated keys, and the objects are different types
20:25:35 <tomsmeding> but the key and the object are related somehow
20:26:00 <tomsmeding> you want to put the objects in a Map-like thing where you can retrieve them given their key, and operate on them knowing that the objects implement a certain type class
20:26:23 <tomsmeding> and yet you somehow want to not lose the type information of those objects
20:26:46 <tomsmeding> can the keys be of type 'Key a' for an object of type 'Object a'?
20:26:57 <tomsmeding> (could be 'newtype Object a = Object a', for example, if you so desire)
20:27:03 <ph88> so what's the difference between Map and DMap ? With DMap you can use a GADT for key and with Map you can't ?
20:27:25 <tomsmeding> yes, with DMap you can have a _type-indexed_ key, and you type-safely get a type-indexed object back
20:27:40 <tomsmeding> so with my Key and Object, if you find a value for a 'Key Int', you'll get an 'Object Int' back
20:27:57 <tomsmeding> you can put the typeclass info in Object if you want
20:28:28 <ph88> that's nice
20:29:01 <tomsmeding> then the code that works with the DMap needs to know about Object enough that it can get the typeclass info out of it
20:29:22 <ph88> i will put this in my notes for a to look at once i want to shell this out to a library, i think practically to make progress Typeable + cast will get me there a bit faster
20:29:35 <tomsmeding> that may well be true :)
20:29:58 <tomsmeding> but moooooore type safety
20:30:13 <ph88> ye i like that :)
20:31:52 <tomsmeding> the thing with DMap, though, is that from comparison of the keys you should be able to get equality info on the _types_
20:32:12 <tomsmeding> i.e. if you get a 'Key a' and a 'Key b', and you want them to compare equal, you should be able to conjure up evidence that 'a ~ b'
20:32:35 <tomsmeding> this typically means that Key contains, or looks like, a singleton for 'a'
20:32:49 <tomsmeding> or it doesn't and you unsafeCoerce up that evidence
20:33:07 <tomsmeding> which, if you encapsulate things well enough, could be a not-too-bad way to go about things
20:33:26 <tomsmeding> (i.e. if you can manage that no-one who is not yourself can create a Key with bad values inside)
20:35:31 <ph88> Well i imagine when i have Key Int and Key String than both types can give me back a bunch of values, like a filter ?
20:36:07 <tomsmeding> a Key Int and a Key String should never be able to compare equal
20:36:15 <tomsmeding> because surely they're keys for different objects!
20:36:21 <tomsmeding> (the objects are even different types!)
20:37:03 <tomsmeding> so if you have stored an object o1 :: Object Int under key k1 :: Key Int, then you'll definitely never retrieve o1 when you do a lookup for key k2 :: Key String
20:37:22 <Leary> You can have them map to a list or set of targets, however.
20:37:30 <tomsmeding> (well, unless you unsafeCoerce'd your GCompare instance of Key and you messed it up :D)
20:37:46 <tomsmeding> of course, it's just a Map, you can put lists in there
20:37:57 <tomsmeding> it will have to be a list that takes an additional type variable though
20:38:14 <tomsmeding> data List1 a t = List1 [a t]
20:38:36 <ph88> i meant to ask can i get all the keys and objects back if i specific a type Key Int ... and do the same again for Key String ... then i expect to have two results of different objects
20:38:56 <tomsmeding> DMap is just a Map with stronger typing
20:38:59 <tomsmeding> think of it as a Map
20:39:53 × alexherbo2 quits (~alexherbo@2a02-8440-311a-ab9d-bd9d-bb5a-6bfa-4981.rev.sfr.net) (Remote host closed the connection)
20:40:13 alexherbo2 joins (~alexherbo@2a02-8440-311a-ab9d-bd9d-bb5a-6bfa-4981.rev.sfr.net)
20:40:15 <tomsmeding> it's really mundane, in a way
20:40:34 <ph88> ok
20:41:30 <tomsmeding> Map.insert :: k -> v -> Map k v -> Map k v
20:41:32 <tomsmeding> DMap.insert :: k a -> v a -> DMap k v -> DMap k v
20:41:54 <tomsmeding> Map.lookup :: k -> Map k v -> Maybe v
20:41:56 <tomsmeding> DMap.lookup :: k a -> DMap k v -> Maybe (v a)
20:43:08 × cpressey quits (~weechat@176.254.71.203) (Ping timeout: 256 seconds)
20:43:21 <tomsmeding> the point of this all is that 1. you can put objects with different types in the same container, and 2. they retain their types
20:43:57 <tomsmeding> it may take a little bit of thinking to shape it all in a way that it fits this particular API
20:44:36 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
20:49:58 cpressey joins (~weechat@176.254.71.203)
20:58:11 × misterfish quits (~misterfis@84.53.85.146) (Ping timeout: 264 seconds)
20:59:43 × ash3en quits (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8) (Remote host closed the connection)
21:01:23 × kimiamania quits (~65804703@user/kimiamania) (Quit: PegeLinux)
21:01:44 kimiamania joins (~65804703@user/kimiamania)
21:07:46 × cpressey quits (~weechat@176.254.71.203) (Ping timeout: 264 seconds)
21:12:59 × AlexZenon quits (~alzenon@5.139.233.228) (Ping timeout: 252 seconds)
21:14:58 ultima12 joins (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8)
21:26:24 AlexZenon joins (~alzenon@5.139.233.228)
21:26:54 × CrunchyFlakes quits (~CrunchyFl@146.52.130.128) (Read error: Connection reset by peer)
21:26:59 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
21:28:20 × ultima12 quits (~ash3en@2a01:c22:8c1d:e900:34c:3f3:8550:afd8) (Remote host closed the connection)
21:29:30 CrunchyFlakes joins (~CrunchyFl@ip92348280.dynamic.kabel-deutschland.de)
21:33:32 pavonia joins (~user@user/siracusa)
21:37:17 <EvanR> those types are an example where the logic is infallible but haskell's type system can actually do it
21:37:20 <EvanR> can't*
21:37:46 <EvanR> behind the scenes there is a cornerstone "believe-me" undefined or something
21:38:02 <EvanR> or unsafeCoerce
21:38:28 <EvanR> haskell is unsound and incomplete!
21:38:32 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:41:22 × AlexZenon quits (~alzenon@5.139.233.228) (Ping timeout: 264 seconds)
21:42:18 × motherfsck quits (~motherfsc@user/motherfsck) (Quit: quit)
21:43:30 <geekosaur> unsafeCoerce is the "believe me!"
21:46:06 motherfsck joins (~motherfsc@user/motherfsck)
21:47:21 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
21:47:42 <tomsmeding> EvanR: there isn't
21:47:50 <tomsmeding> the magic is in the GCompare instance for the key
21:48:09 <tomsmeding> I lied, Map.lookup has an additional Ord k constraint, and DMap.lookup has a GCompare k constraint
21:48:23 <EvanR> GCompare...
21:48:29 <tomsmeding> https://hackage.haskell.org/package/some-1.0.1/docs/Data-GADT-Compare.html#t:GCompare
21:48:36 <tomsmeding> see the typing of GEQ
21:48:53 <tomsmeding> you'll need to create type equality information from an equality comparison on the keys
21:49:02 × motherfsck quits (~motherfsc@user/motherfsck) (Client Quit)
21:49:03 <tomsmeding> which then allows DMap to do things safely
21:49:38 <EvanR> I see gcompare, but how is that implemented for the keys
21:49:40 <tomsmeding> now how _you_ are going to create that type equality is up to you; you could compare singletons, which is safe, or you could believe that whatever ID system you cooked up is sound and 'unsafeCoerce Refl' your way out of it
21:49:47 <tomsmeding> EvanR: you implement it
21:49:52 <tomsmeding> GCompare is to DMap as Ord is to Map
21:49:52 <EvanR> with unsafeCoerce
21:49:55 <tomsmeding> no
21:49:59 <tomsmeding> you put a proper singleton in your keys
21:50:09 <tomsmeding> so that you can compare the singletons and get a type equality out
21:50:27 motherfsck joins (~motherfsc@user/motherfsck)
21:50:43 <EvanR> one singleton type for every `a' in the usage of DMap ?
21:51:00 <tomsmeding> what do you mean with a "singleton type"?
21:51:07 <tomsmeding> every _key_ has a singleton in it
21:51:09 <c_wraith> Or just have your key type be a GADT where comparing the constructors is sufficient to prove type equality
21:51:21 <tomsmeding> which is essentially a DIY singleton
21:51:36 <c_wraith> Except without all the machinery which isn't needed for this case :)
21:52:20 × target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving)
21:52:22 <c_wraith> in general, DMap seems optimized to work with GADTs
21:53:05 <tomsmeding> yeah, I have never actually used the 'singletons' library
21:53:07 <tomsmeding> I roll my own GADTs
21:53:17 <EvanR> ok if you only are planning to work with specific a, you can implement a GADT k which has correct GCompare powers by construction
21:53:43 <EvanR> DMap got more sophisticated since last I checked
21:53:49 <tomsmeding> you'll need to describe the family of a's that you're going to use
21:54:03 <tomsmeding> remember that GADTs are data types and hence can be recursive :)
21:54:11 <tomsmeding> so you can describe a whole recursive family of types just with a few constructors
21:54:34 <EvanR> sounds like a blast
21:57:22 <EvanR> this is all a lot of machinery to basically pull off what elixir people do, use the "map" structure to implement records
21:58:53 AlexZenon joins (~alzenon@5.139.233.228)
21:59:41 <tomsmeding> the record can be dynamic, though
21:59:56 <EvanR> dynamic?
21:59:59 <tomsmeding> I once used a DMap to store metadata about every AST node in a compiler
22:00:18 <tomsmeding> there were many AST nodes, but the family of types that they could represent was nicely describable
22:00:30 <tomsmeding> (the AST was well-typed with well-typed well-scoped De Bruijn indices)
22:03:24 × turlando quits (~turlando@user/turlando) (Quit: No Ping reply in 180 seconds.)
22:03:25 <tomsmeding> EvanR: and the point is that "a map from every AST node to some metadata" is certainly not a record
22:04:21 <EvanR> no because the keys aren't fields
22:04:48 turlando joins (~turlando@user/turlando)
22:05:38 <tomsmeding> (it's bed time over here, see y'al)
22:07:00 × raym quits (~ray@user/raym) (Ping timeout: 256 seconds)
22:08:49 raym joins (~ray@user/raym)
22:17:54 <ph88> good night !
22:20:37 × gentauro quits (~gentauro@user/gentauro) (Read error: Connection reset by peer)
22:20:40 × ph88 quits (~ph88@2a02:8109:9e26:c800:d825:8718:98d7:1cb9) (Remote host closed the connection)
22:21:22 × alexherbo2 quits (~alexherbo@2a02-8440-311a-ab9d-bd9d-bb5a-6bfa-4981.rev.sfr.net) (Remote host closed the connection)
22:24:50 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
22:25:31 CiaoSen joins (~Jura@2a05:5800:2b4:7a00:e6b9:7aff:fe80:3d03)
22:25:59 gentauro joins (~gentauro@user/gentauro)
22:38:14 × destituion quits (~destituio@ti0185q160-0175.bb.online.no) (Ping timeout: 252 seconds)
22:43:50 × acidjnk_new3 quits (~acidjnk@p200300d6e72cfb326c97883dc2703faf.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
22:47:03 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
22:51:08 destituion joins (~destituio@2a02:2121:6bd:3eb7:9c85:17:84a5:7a89)
23:12:49 tabemann__ is now known as tabemann
23:18:35 × christiaanb quits (uid84827@id-84827.lymington.irccloud.com) (Quit: Connection closed for inactivity)
23:25:13 × Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
23:36:37 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 246 seconds)
23:39:25 acidjnk_new3 joins (~acidjnk@p200300d6e72cfb326c97883dc2703faf.dip0.t-ipconnect.de)
23:42:35 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
23:43:15 tcard_ joins (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
23:46:15 × tcard quits (~tcard@p5361199-ipxg23901hodogaya.kanagawa.ocn.ne.jp) (Ping timeout: 256 seconds)
23:51:47 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
23:52:10 × CiaoSen quits (~Jura@2a05:5800:2b4:7a00:e6b9:7aff:fe80:3d03) (Ping timeout: 268 seconds)
23:54:48 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
23:57:05 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
23:57:50 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
23:59:30 × dolio quits (~dolio@130.44.134.54) (Quit: ZNC 1.8.2 - https://znc.in)

All times are in UTC on 2024-07-12.