Logs on 2021-04-22 (freenode/#haskell)
| 00:00:47 | → | Guest78317 joins (~laudiacay@67.176.215.84) |
| 00:02:19 | × | Synthetica quits (uid199651@gateway/web/irccloud.com/x-mucvjdtabxcscdzz) (Quit: Connection closed for inactivity) |
| 00:03:41 | × | DavidEichmann quits (~david@147.136.46.217.dyn.plus.net) (Ping timeout: 245 seconds) |
| 00:12:05 | → | hypercube joins (hypercube@gateway/vpn/protonvpn/hypercube) |
| 00:12:32 | → | Jd007 joins (~Jd007@162.156.11.151) |
| 00:14:23 | × | puke quits (~vroom@217.138.252.184) (Quit: puke) |
| 00:17:51 | × | andreas303 quits (~andreas@gateway/tor-sasl/andreas303) (Remote host closed the connection) |
| 00:18:13 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 00:18:31 | → | xsperry joins (~as@unaffiliated/xsperry) |
| 00:19:20 | × | star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Ping timeout: 268 seconds) |
| 00:22:00 | → | andreas303 joins (~andreas@gateway/tor-sasl/andreas303) |
| 00:22:48 | → | aVikingTrex joins (~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) |
| 00:28:03 | → | star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) |
| 00:30:26 | × | myShoggoth quits (~myShoggot@75.164.11.109) (Ping timeout: 240 seconds) |
| 00:33:04 | × | nineonin_ quits (~nineonine@50.216.62.2) (Ping timeout: 252 seconds) |
| 00:34:04 | × | Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007) |
| 00:42:32 | × | jonatan quits (~nate@h77-53-70-163.cust.a3fiber.se) (Ping timeout: 240 seconds) |
| 00:42:57 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 00:43:41 | × | geiger_ quits (~geiger@0543f40b.skybroadband.com) (Ping timeout: 252 seconds) |
| 00:49:01 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 252 seconds) |
| 00:49:42 | → | jonatan joins (~nate@h77-53-70-163.cust.a3fiber.se) |
| 00:51:26 | × | earthy_ quits (~arthurvl@deban2.xs4all.space) (Ping timeout: 260 seconds) |
| 00:52:19 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 00:53:29 | → | olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber) |
| 00:57:12 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 00:58:27 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 01:00:35 | × | ep1ctetus quits (~epictetus@ip72-194-54-201.sb.sd.cox.net) (Read error: Connection reset by peer) |
| 01:03:14 | × | jb55 quits (~jb55@gateway/tor-sasl/jb55) (Remote host closed the connection) |
| 01:03:19 | × | minoru_shiraeesh quits (~shiraeesh@46.34.207.53) (Ping timeout: 252 seconds) |
| 01:03:56 | → | jb55 joins (~jb55@gateway/tor-sasl/jb55) |
| 01:06:52 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds) |
| 01:10:02 | × | geekosaur quits (930099da@rrcs-147-0-153-218.central.biz.rr.com) (Ping timeout: 240 seconds) |
| 01:12:09 | → | jijimofo joins (~cmo@S010610561191f5d6.lb.shawcable.net) |
| 01:14:37 | × | conal quits (~conal@64.71.133.70) (Read error: Connection reset by peer) |
| 01:15:56 | → | conal joins (~conal@64.71.133.70) |
| 01:17:03 | <jijimofo> | hi all, can anyone tell me why this puts up a black screen and then exits? it's sdl2 and sdl-cairo |
| 01:17:07 | <jijimofo> | https://pastebin.com/XRX8CsFW |
| 01:17:30 | <jijimofo> | i know it's not strictly a haskell problem |
| 01:17:55 | <jijimofo> | hmm, i should've tried a c version before posting, sorry |
| 01:18:08 | <jijimofo> | will do that |
| 01:19:26 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 265 seconds) |
| 01:21:15 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 01:23:07 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:d0df:45b4:dde8:f059) (Ping timeout: 260 seconds) |
| 01:24:37 | × | hypercube quits (hypercube@gateway/vpn/protonvpn/hypercube) (Quit: WeeChat 3.1) |
| 01:25:49 | → | nineonine joins (~nineonine@50.216.62.2) |
| 01:26:11 | × | xff0x quits (~xff0x@2001:1a81:5253:e800:55a6:95d0:743f:3c74) (Ping timeout: 245 seconds) |
| 01:28:17 | → | xff0x joins (~xff0x@2001:1a81:5291:ee00:8d5:6829:975f:eb62) |
| 01:32:55 | → | rajivr joins (uid269651@gateway/web/irccloud.com/x-poljwzteeqldftix) |
| 01:33:25 | × | loller_ quits (uid358106@gateway/web/irccloud.com/x-gvifcnmgsfzryozd) (Quit: Connection closed for inactivity) |
| 01:34:07 | × | nicholasbulka quits (~nicholasb@2601:900:4301:da0:bdc9:711a:32b8:207e) (Remote host closed the connection) |
| 01:34:23 | → | quinn joins (~quinn@c-73-223-224-163.hsd1.ca.comcast.net) |
| 01:35:31 | → | nicholasbulka joins (~nicholasb@2601:900:4301:da0:bdc9:711a:32b8:207e) |
| 01:35:54 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:a379:3b67:4750:2ccb) |
| 01:36:43 | × | Sheilong quits (uid293653@gateway/web/irccloud.com/x-dwdeqarjvkrgtrrf) () |
| 01:36:52 | <wrunt> | do you need to put 't' into 'r' somehow? |
| 01:37:26 | <wrunt> | ah sorry, you create it with 'r' |
| 01:38:50 | <jijimofo> | wrunt: yeah, r is the renderer from which i get a texture, t |
| 01:42:34 | <wrunt> | is there any kind of double-buffering going on, and you're looking at the blank buffer? |
| 01:42:51 | × | nicholasbulka quits (~nicholasb@2601:900:4301:da0:bdc9:711a:32b8:207e) (Ping timeout: 245 seconds) |
| 01:43:08 | <jijimofo> | hmm, running 'cabal update' and then trying again results in the sdl funs working as they should but not the sdl-cairo funs |
| 01:43:15 | → | myShoggoth joins (~myShoggot@75.164.11.109) |
| 01:43:55 | <jijimofo> | wrunt, i think that's what present is supposed to do. you draw with the api and then call present to make the calls actually happen, or at least that's my understanding |
| 01:47:01 | → | vv8 joins (~egp_@2.95.117.163) |
| 01:52:54 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 01:56:54 | <jijimofo> | wrunt: you weren't far off, i forgot to copy the texture back into the renderer before presenting it |
| 01:57:37 | × | Guest78317 quits (~laudiacay@67.176.215.84) (Ping timeout: 265 seconds) |
| 01:58:01 | × | myShoggoth quits (~myShoggot@75.164.11.109) (Remote host closed the connection) |
| 01:58:03 | <jijimofo> | thanks for being my rubber duck guys |
| 01:58:27 | → | myShoggoth joins (~myShoggot@75.164.11.109) |
| 01:59:21 | <wrunt> | \o/ |
| 01:59:59 | × | myShoggoth quits (~myShoggot@75.164.11.109) (Client Quit) |
| 02:02:33 | × | urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna) |
| 02:04:32 | × | jijimofo quits (~cmo@S010610561191f5d6.lb.shawcable.net) (Ping timeout: 240 seconds) |
| 02:13:23 | × | jao quits (~jao@pdpc/supporter/professional/jao) (Ping timeout: 246 seconds) |
| 02:16:40 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 02:27:48 | → | earthy_ joins (~arthurvl@deban2.xs4all.space) |
| 02:29:04 | × | _xor quits (~xor@74.215.46.133) (Quit: brb) |
| 02:29:28 | → | _xor joins (~xor@74.215.46.133) |
| 02:32:50 | → | Lycurgus joins (~niemand@98.4.118.65) |
| 02:34:58 | → | lawr3nce joins (~lawr3nce@gateway/tor-sasl/lawr3nce) |
| 02:36:41 | × | lawr3nce quits (~lawr3nce@gateway/tor-sasl/lawr3nce) (Remote host closed the connection) |
| 02:36:47 | × | justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) (Quit: WeeChat 3.0.1) |
| 02:37:55 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 252 seconds) |
| 02:38:16 | × | theDon quits (~td@94.134.91.185) (Ping timeout: 245 seconds) |
| 02:38:39 | × | lawid quits (~quassel@2a02:8109:b5c0:5334:265e:beff:fe2a:dde8) (Quit: lawid) |
| 02:40:17 | → | theDon joins (~td@94.134.91.246) |
| 02:41:54 | → | lawr3nce joins (~lawr3nce@gateway/tor-sasl/lawr3nce) |
| 02:43:45 | → | FinnElija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) |
| 02:43:45 | finn_elija | is now known as Guest414 |
| 02:43:45 | FinnElija | is now known as finn_elija |
| 02:47:09 | × | Guest414 quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 240 seconds) |
| 02:49:11 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 02:52:13 | × | nineonine quits (~nineonine@50.216.62.2) (Ping timeout: 252 seconds) |
| 02:53:21 | × | carlomagno quits (~cararell@148.87.23.7) (Quit: Leaving.) |
| 02:55:23 | → | lawr3nce_ joins (~lawr3nce@gateway/tor-sasl/lawr3nce) |
| 02:56:21 | × | lawr3nce quits (~lawr3nce@gateway/tor-sasl/lawr3nce) (Ping timeout: 240 seconds) |
| 02:56:35 | × | machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 265 seconds) |
| 02:57:08 | → | hypercube joins (hypercube@gateway/vpn/protonvpn/hypercube) |
| 02:58:46 | × | hypercube quits (hypercube@gateway/vpn/protonvpn/hypercube) (Client Quit) |
| 03:00:01 | → | drbean_ joins (~drbean@TC210-63-209-150.static.apol.com.tw) |
| 03:07:17 | → | nicholasbulka joins (~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832) |
| 03:09:01 | × | aVikingTrex quits (~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 250 seconds) |
| 03:11:37 | × | nicholasbulka quits (~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832) (Ping timeout: 250 seconds) |
| 03:22:51 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 03:24:22 | → | aVikingTrex joins (~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) |
| 03:31:28 | → | fresheyeball joins (~isaac@c-71-237-105-37.hsd1.co.comcast.net) |
| 03:53:39 | → | Guest78317 joins (~laudiacay@67.176.215.84) |
| 03:56:05 | → | plutoniix joins (~q@ppp-58-8-174-127.revip2.asianet.co.th) |
| 03:56:39 | → | gnumonic joins (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) |
| 03:58:13 | × | Guest78317 quits (~laudiacay@67.176.215.84) (Ping timeout: 252 seconds) |
| 03:59:50 | → | hypercube joins (hypercube@gateway/vpn/protonvpn/hypercube) |
| 04:02:22 | × | lawr3nce_ quits (~lawr3nce@gateway/tor-sasl/lawr3nce) (Remote host closed the connection) |
| 04:05:33 | × | roconnor quits (~roconnor@host-45-58-216-246.dyn.295.ca) (Ping timeout: 260 seconds) |
| 04:09:34 | × | faustind quits (0e0843e1@gateway/web/cgi-irc/kiwiirc.com/ip.14.8.67.225) (Ping timeout: 265 seconds) |
| 04:33:30 | × | snowflake quits (~snowflake@gateway/tor-sasl/snowflake) (Remote host closed the connection) |
| 04:35:55 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 04:39:37 | × | howdoi quits (uid224@gateway/web/irccloud.com/x-bfpmhrutqdycibjm) (Quit: Connection closed for inactivity) |
| 04:40:40 | → | nineonine joins (~nineonine@50.216.62.2) |
| 04:40:52 | × | nineonine quits (~nineonine@50.216.62.2) (Remote host closed the connection) |
| 04:41:14 | → | nineonine joins (~nineonine@50.216.62.2) |
| 04:42:30 | × | Wuzzy quits (~Wuzzy@p5790e74f.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 04:42:55 | × | waleee-cl quits (uid373333@gateway/web/irccloud.com/x-bpfgsdmlrafbmgyu) (Quit: Connection closed for inactivity) |
| 04:43:45 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Read error: Connection reset by peer) |
| 04:43:55 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 04:45:02 | × | sm2n quits (~sm2n@bras-base-hmtnon143hw-grc-13-70-54-76-62.dsl.bell.ca) (Remote host closed the connection) |
| 04:45:12 | → | malumore joins (~malumore@151.62.117.136) |
| 04:45:16 | → | sm2n joins (~sm2n@bras-base-hmtnon143hw-grc-13-70-54-76-62.dsl.bell.ca) |
| 04:45:53 | → | snowflake joins (~snowflake@gateway/tor-sasl/snowflake) |
| 04:46:22 | → | Jd007 joins (~Jd007@162.156.11.151) |
| 05:02:41 | → | rj__ joins (~x@gateway/tor-sasl/rj) |
| 05:02:45 | × | rj_ quits (~x@gateway/tor-sasl/rj) (Ping timeout: 240 seconds) |
| 05:05:30 | × | fresheyeball quits (~isaac@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9) |
| 05:06:26 | × | Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007) |
| 05:11:14 | × | drbean_ quits (~drbean@TC210-63-209-150.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in) |
| 05:13:08 | → | sord937 joins (~sord937@gateway/tor-sasl/sord937) |
| 05:14:04 | × | kiweun quits (~kiweun@2607:fea8:2a62:9600:68a0:cf01:7577:43eb) (Remote host closed the connection) |
| 05:19:25 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 05:19:37 | × | Tario quits (~Tario@201.192.165.173) (Ping timeout: 252 seconds) |
| 05:24:51 | × | unyu quits (~pyon@unaffiliated/pyon) (Remote host closed the connection) |
| 05:24:58 | → | moduli-of-pyon joins (~pyon@unaffiliated/pyon) |
| 05:26:15 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:a379:3b67:4750:2ccb) (Ping timeout: 260 seconds) |
| 05:29:52 | × | Lycurgus quits (~niemand@98.4.118.65) (Ping timeout: 240 seconds) |
| 05:31:56 | → | Aquazi joins (uid312403@gateway/web/irccloud.com/x-osbdsklzblynzobo) |
| 05:38:35 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:17c1:9e20:deae:8139) |
| 05:39:01 | × | marinelli quits (~marinelli@gateway/tor-sasl/marinelli) (Quit: marinelli) |
| 05:54:06 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 05:55:43 | × | Spanktar quits (~Spanktar@195.140.213.38) (Remote host closed the connection) |
| 05:55:49 | → | ashesham` joins (~user@d8D87D1B0.access.telenet.be) |
| 05:56:36 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 245 seconds) |
| 06:00:04 | → | chele joins (~chele@5.53.222.202) |
| 06:01:36 | → | wonko7 joins (~wonko7@62.115.229.50) |
| 06:02:18 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 252 seconds) |
| 06:03:19 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 06:05:58 | × | jassob quits (~jassob@korrob.vth.sgsnet.se) (Ping timeout: 240 seconds) |
| 06:07:09 | → | jassob joins (~jassob@korrob.vth.sgsnet.se) |
| 06:07:26 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 06:07:37 | × | Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer) |
| 06:11:12 | → | thc202 joins (~thc202@unaffiliated/thc202) |
| 06:11:52 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 06:12:37 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 06:12:55 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 06:16:24 | → | danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) |
| 06:20:29 | × | nineonine quits (~nineonine@50.216.62.2) (Ping timeout: 246 seconds) |
| 06:21:09 | → | knupfer joins (~Thunderbi@200116b82b4d2f00f5d1796d1da5bdee.dip.versatel-1u1.de) |
| 06:24:41 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 06:28:10 | → | Varis joins (~Tadas@unaffiliated/varis) |
| 06:28:27 | → | michalz joins (~user@185.246.204.56) |
| 06:29:31 | × | knupfer quits (~Thunderbi@200116b82b4d2f00f5d1796d1da5bdee.dip.versatel-1u1.de) (Ping timeout: 245 seconds) |
| 06:30:41 | → | nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 06:32:12 | → | mikoto-chan joins (~anass@gateway/tor-sasl/mikoto-chan) |
| 06:35:14 | → | coot joins (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) |
| 06:42:46 | × | dilinger quits (~dilinger@spindle.queued.net) (Remote host closed the connection) |
| 06:44:13 | → | bitmagie joins (~Thunderbi@200116b8066f180081bca216285e01e4.dip.versatel-1u1.de) |
| 06:44:47 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 06:48:32 | → | Sornaensis joins (~Sornaensi@077213200034.dynamic.telenor.dk) |
| 06:51:05 | → | Sorna joins (~Sornaensi@79.142.232.102.static.router4.bolignet.dk) |
| 06:53:02 | × | gzj quits (~gzj@unaffiliated/gzj) (Quit: Leaving) |
| 06:53:32 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 06:53:41 | × | Sornaensis quits (~Sornaensi@077213200034.dynamic.telenor.dk) (Ping timeout: 245 seconds) |
| 06:54:08 | → | Lowl3v3l joins (~Lowl3v3l@dslb-002-207-103-026.002.207.pools.vodafone-ip.de) |
| 06:57:41 | earthy_ | is now known as earthy |
| 06:58:14 | → | nineonine joins (~nineonine@50.216.62.2) |
| 07:00:46 | × | timCF quits (~i.tkachuk@200-149-20-81.sta.estpak.ee) (Quit: leaving) |
| 07:01:18 | → | m0rphism joins (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) |
| 07:01:43 | × | aVikingTrex quits (~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 250 seconds) |
| 07:02:32 | × | nineonine quits (~nineonine@50.216.62.2) (Ping timeout: 240 seconds) |
| 07:03:06 | × | bitmagie quits (~Thunderbi@200116b8066f180081bca216285e01e4.dip.versatel-1u1.de) (Quit: bitmagie) |
| 07:03:11 | → | Synthetica joins (uid199651@gateway/web/irccloud.com/x-ycrvxeagazjstjgn) |
| 07:04:32 | × | bitmapper quits (uid464869@gateway/web/irccloud.com/x-zaklydynoasermoj) (Quit: Connection closed for inactivity) |
| 07:05:38 | → | cfricke joins (~cfricke@unaffiliated/cfricke) |
| 07:14:08 | → | dilinger joins (~dilinger@spindle.queued.net) |
| 07:15:38 | × | limbo quits (ar@45.63.9.236) (Ping timeout: 240 seconds) |
| 07:17:33 | → | limbo joins (ar@45.63.9.236) |
| 07:18:49 | → | nicholasbulka joins (~nicholasb@c-73-21-82-200.hsd1.ga.comcast.net) |
| 07:22:52 | × | nicholasbulka quits (~nicholasb@c-73-21-82-200.hsd1.ga.comcast.net) (Ping timeout: 240 seconds) |
| 07:27:08 | → | idhugo_ joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) |
| 07:30:10 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 07:35:40 | nckx | is now known as raghavgururajan9 |
| 07:35:50 | raghavgururajan9 | is now known as nckx |
| 07:45:42 | → | kritzefitz joins (~kritzefit@212.86.56.80) |
| 07:52:14 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving) |
| 08:02:51 | × | kritzefitz quits (~kritzefit@212.86.56.80) (Ping timeout: 245 seconds) |
| 08:03:11 | → | idhugo__ joins (~idhugo@87-49-45-4-mobile.dk.customer.tdc.net) |
| 08:03:19 | → | kritzefitz joins (~kritzefit@2003:5b:203b:200::10:49) |
| 08:04:17 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 08:05:15 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 08:05:54 | × | idhugo_ quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 260 seconds) |
| 08:07:10 | → | hendursaga joins (~weechat@gateway/tor-sasl/hendursaga) |
| 08:07:56 | × | hypercube quits (hypercube@gateway/vpn/protonvpn/hypercube) (Ping timeout: 246 seconds) |
| 08:09:09 | × | hendursa1 quits (~weechat@gateway/tor-sasl/hendursaga) (Ping timeout: 240 seconds) |
| 08:11:28 | → | sgibber2018 joins (d055ed90@208.85.237.144) |
| 08:13:58 | × | plutoniix quits (~q@ppp-58-8-174-127.revip2.asianet.co.th) (Ping timeout: 252 seconds) |
| 08:14:13 | → | faustind joins (8508bb0b@gateway/web/cgi-irc/kiwiirc.com/ip.133.8.187.11) |
| 08:19:31 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 08:20:19 | × | RusAlex quits (~Chel@unaffiliated/rusalex) (Ping timeout: 268 seconds) |
| 08:20:42 | → | aidecoe joins (~aidecoe@unaffiliated/aidecoe) |
| 08:25:43 | → | RusAlex joins (~Chel@unaffiliated/rusalex) |
| 08:27:44 | × | Tene quits (~tene@poipu/supporter/slacker/tene) (Ping timeout: 268 seconds) |
| 08:28:37 | × | ByronJohnson quits (~bairyn@unaffiliated/bob0) (Ping timeout: 252 seconds) |
| 08:32:14 | → | LKoen joins (~LKoen@11.160.9.109.rev.sfr.net) |
| 08:32:40 | × | earthy quits (~arthurvl@deban2.xs4all.space) (Ping timeout: 252 seconds) |
| 08:33:45 | → | guest421` joins (~user@49.5.6.87) |
| 08:34:24 | → | Tene joins (~tene@poipu/supporter/slacker/tene) |
| 08:34:27 | → | ByronJohnson joins (~bairyn@unaffiliated/bob0) |
| 08:35:06 | × | sgibber2018 quits (d055ed90@208.85.237.144) (Quit: Connection closed) |
| 08:35:09 | → | earthy joins (~arthurvl@deban2.xs4all.space) |
| 08:35:45 | <guest421`> | MaybeT IO a, MaybeT IO is a monad, but to value [MaybeT IO a], is there a monad for it? |
| 08:36:04 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 08:36:19 | <guest421`> | there's a List Transformer? |
| 08:36:51 | <guest421`> | data ListT m a = ListT m [a]? |
| 08:37:29 | <guest421`> | so we could have ListT (MaybeT IO) a? |
| 08:38:16 | <guest421`> | or data ListT m a = ListT [m a]? |
| 08:38:45 | <merijn> | You could, yes. But the semantics of ListT are...tricky |
| 08:39:05 | <merijn> | guest421`: When you're looking for ListT you might want conduit/pipes instead |
| 08:39:08 | <merijn> | @hackage conduit |
| 08:39:09 | <lambdabot> | https://hackage.haskell.org/package/conduit |
| 08:39:12 | <merijn> | @hackage pipes |
| 08:39:12 | <lambdabot> | https://hackage.haskell.org/package/pipes |
| 08:40:06 | <guest421`> | merijn: actually I'm thnking about using `traverse` to IO actions, for example there's [Url], and fetchUrl :: Url -> MaybeT IO ByteString, |
| 08:40:09 | → | jess joins (jess@freenode/staff/jess) |
| 08:40:09 | → | Lycurgus joins (~niemand@98.4.118.65) |
| 08:40:29 | <guest421`> | traverse fetchUrl [Url] |
| 08:41:40 | <merijn> | That doesn't need ListT, though? |
| 08:41:59 | <merijn> | like, "traverse fetchUrl" works just fine on a list of URLs |
| 08:43:00 | <guest421`> | merijn: but `traverse` "collect" that result, it product a type MaybeT IO (Maybe [a]) |
| 08:43:17 | <guest421`> | merijn: what if I'd like [IO-Actions-Results] |
| 08:43:31 | <merijn> | eh, that's just map? |
| 08:43:45 | <merijn> | That doesn't look, right though |
| 08:43:46 | <guest421`> | merijn: yes, but fmap doesn't do IO |
| 08:44:22 | <merijn> | if "fetchUrl :: Url -> MaybeT IO ByteString" then "traverse fetchUrl :: MaybeT IO [ByteString]" |
| 08:44:31 | <merijn> | eh |
| 08:44:38 | <merijn> | Missing list argument, but you get the idea |
| 08:45:13 | <guest421`> | merijn: <guest421`> traverse fetchUrl [Url] |
| 08:45:28 | <merijn> | :t traverse `asAppliedTo` (undefined :: () -> MaybeT IO ByteString) |
| 08:45:29 | <lambdabot> | error: |
| 08:45:29 | <lambdabot> | Not in scope: type constructor or class ‘ByteString’ |
| 08:45:29 | <lambdabot> | Perhaps you meant one of these: |
| 08:45:35 | <merijn> | :t traverse `asAppliedTo` (undefined :: () -> MaybeT IO String) |
| 08:45:36 | <lambdabot> | Traversable t => (() -> MaybeT IO String) -> t () -> MaybeT IO (t String) |
| 08:46:29 | <guest421`> | merijn: why ListT is tricky? |
| 08:46:39 | <merijn> | Well, what does it mean? |
| 08:47:11 | <guest421`> | <merijn> You could, yes. But the semantics of ListT are...tricky |
| 08:47:57 | <guest421`> | there's MaybeT, EitherT, StateT blabla, even ContT, but no ListT? |
| 08:48:28 | <merijn> | There is a ListT, but it's definition is questionable |
| 08:58:13 | × | pavonia quits (~user@unaffiliated/siracusa) (Quit: Bye!) |
| 08:59:33 | × | dsrt^ quits (dsrt@ip98-184-89-2.mc.at.cox.net) () |
| 09:00:05 | <lovesegfault> | Hi everyone, could someone review this small exercise program I wrote? https://github.com/lovesegfault/exercism/blob/main/haskell/leap/src/LeapYear.hs |
| 09:00:05 | × | addem[m] quits (addemmatri@gateway/shell/matrix.org/x-dihufvgbnekkaxvh) (Quit: Idle for 30+ days) |
| 09:00:28 | <lovesegfault> | Not sure if I'm doing this the right way :P |
| 09:00:46 | <lovesegfault> | it works, I'm more concerned about it being idiomatic |
| 09:00:52 | <guest421`> | merijn: traverse fetchUrl [Url] , when one of those IO actions return a MaybeT (return Nothing) :: MaybeT IO ByteString, what traverse will return? |
| 09:02:35 | <merijn> | Nothing, but if you don't want that, then don't use MaybeT? |
| 09:02:47 | <merijn> | Like, that's literally the only purpose of MaybeT |
| 09:03:12 | <guest421`> | merijn: I should use fetchUrl :: Url -> IO (Maybe a)? |
| 09:03:37 | <guest421`> | merijn: IO is too difficult on value level to express |
| 09:08:49 | ← | jakalx parts (~jakalx@base.jakalx.net) ("Error from remote client") |
| 09:10:05 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 09:10:15 | → | Sorny joins (~Sornaensi@077213200034.dynamic.telenor.dk) |
| 09:10:26 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 09:11:18 | × | malumore quits (~malumore@151.62.117.136) (Remote host closed the connection) |
| 09:12:22 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 09:12:31 | ← | jakalx parts (~jakalx@base.jakalx.net) ("Error from remote client") |
| 09:13:11 | × | Sorna quits (~Sornaensi@79.142.232.102.static.router4.bolignet.dk) (Ping timeout: 240 seconds) |
| 09:13:54 | <wrunt> | lovesegfault: Looks ok. You may want to use Int rather than Integer, unless you anticipate the year exceeding 'maxBound :: Int'. You could also use logic rather than pattern matching, and use 'isDiv' infix, i.e. 'isLeapYear year = year `isDiv` 4 || (not $ year `isDiv` 100) || year `isDiv` 400' |
| 09:14:27 | → | minoru_shiraeesh joins (~shiraeesh@46.34.207.53) |
| 09:15:02 | <lovesegfault> | woah, what is $ in haskell? |
| 09:15:12 | → | kiweun joins (~kiweun@2607:fea8:2a62:9600:5d11:937f:5f24:4c8b) |
| 09:15:13 | <wrunt> | hm, my logic may be off there... |
| 09:15:56 | <wrunt> | $ is called apply, and basically says evaluate everything on my right before passing it to the function on my left |
| 09:16:09 | → | malumore joins (~malumore@151.62.117.136) |
| 09:16:19 | <xsperry> | @src ($) |
| 09:16:20 | <lambdabot> | f $ x = f x |
| 09:16:33 | <wrunt> | (not $ year `isDiv` 100) is equivalent to (not (year `isDiv` 100)) |
| 09:16:36 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 09:17:07 | <wrunt> | er, $ is not called apply, I must be tired :) |
| 09:17:22 | <merijn> | I wouldn't use $ there, just use parens... |
| 09:17:24 | <xsperry> | it works the way it does because of it its low precedence, infixr 0 $ |
| 09:17:41 | × | zaquest quits (~notzaques@5.128.210.178) (Remote host closed the connection) |
| 09:17:47 | <merijn> | Like "(not $ year `isDiv` 100)" is just "not (year `isDiv` 100)" but worse >.> |
| 09:17:59 | <lovesegfault> | do I need to create that leapMatch in order to pattern match? or can I do it all with only isLeapYear? |
| 09:18:08 | <wrunt> | lovesegfault: listen to merijn :) |
| 09:18:17 | → | nfip^ joins (nfip@ip98-184-89-2.mc.at.cox.net) |
| 09:18:47 | <lovesegfault> | I like this `` infix business, makes things more readable |
| 09:18:53 | → | zaquest joins (~notzaques@5.128.210.178) |
| 09:19:29 | <xsperry> | lovesegfault, you can pattern match without creating a new function, with case |
| 09:19:31 | × | kiweun quits (~kiweun@2607:fea8:2a62:9600:5d11:937f:5f24:4c8b) (Ping timeout: 250 seconds) |
| 09:19:46 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Remote host closed the connection) |
| 09:19:49 | <lovesegfault> | xsperry: Oh, nice, /me googles how |
| 09:20:15 | <merijn> | > case even 3 of True -> "Yay!"; False -> "Nay!" |
| 09:20:17 | <lambdabot> | "Nay!" |
| 09:21:50 | <lovesegfault> | oh, nice! |
| 09:21:53 | lovesegfault | rewrites it |
| 09:22:34 | <lovesegfault> | updated version: https://github.com/lovesegfault/exercism/blob/main/haskell/leap/src/LeapYear.hs |
| 09:23:11 | × | minoru_shiraeesh quits (~shiraeesh@46.34.207.53) (Ping timeout: 240 seconds) |
| 09:23:49 | <lovesegfault> | Hm, what is the standard code formatting tool for haskell? |
| 09:23:59 | <olligobber> | :t isDiv |
| 09:24:00 | <lambdabot> | error: Variable not in scope: isDiv |
| 09:24:17 | <merijn> | lovesegfault: There is none |
| 09:24:59 | × | moduli-of-pyon quits (~pyon@unaffiliated/pyon) (Quit: See ya.) |
| 09:25:07 | <lovesegfault> | merijn: Oh, interesting, is there a leading one at least? (e.g. Black for Python) |
| 09:25:12 | <merijn> | No |
| 09:25:18 | <lovesegfault> | fascinating |
| 09:25:31 | ← | sammyh parts (~sammyh@vps-15813cea.vps.ovh.net) () |
| 09:25:40 | <merijn> | and tbh, auto-formatters are a bad crutch |
| 09:26:08 | <merijn> | As summarised by: https://twitter.com/comerijn/status/1257804634833420292 |
| 09:27:14 | <lovesegfault> | fair enough :) |
| 09:27:25 | <maerwald> | there are plenty of formatters though |
| 09:27:37 | <lovesegfault> | I'm playing with ormolu right now |
| 09:27:41 | <maerwald> | brittany, ormolu and stylish-haskell are common |
| 09:28:46 | <lovesegfault> | So, in Rust I tend to do these chains of Iterator ops: https://github.com/lovesegfault/exercism/blob/5a7f942130c82e60025d9a8787fb7eae8efd0c0e/rust/acronym/src/lib.rs#L2-L11 |
| 09:28:52 | <lovesegfault> | what does this look like in Haskell? |
| 09:33:46 | × | nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds) |
| 09:35:41 | × | Guest5350 quits (~textual@2603-7000-3040-0000-3d14-5885-3d03-0546.res6.spectrum.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 09:36:01 | × | totte quits (~totte@chakra/totte) (Quit: ZNC - http://znc.in) |
| 09:37:02 | → | ClaudiusMaximus joins (~claude@cpc98210-croy26-2-0-cust137.19-2.cable.virginm.net) |
| 09:37:19 | → | Pickchea joins (~private@unaffiliated/pickchea) |
| 09:37:21 | × | ClaudiusMaximus quits (~claude@cpc98210-croy26-2-0-cust137.19-2.cable.virginm.net) (Changing host) |
| 09:37:21 | → | ClaudiusMaximus joins (~claude@unaffiliated/claudiusmaximus) |
| 09:41:41 | → | slaterr joins (~bc8134e3@199.204.85.195) |
| 09:41:43 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 09:42:51 | → | Sornaensis joins (~Sornaensi@79.142.232.102.static.router4.bolignet.dk) |
| 09:44:36 | → | fendor joins (~fendor@178.165.129.61.wireless.dyn.drei.com) |
| 09:44:40 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 09:45:39 | → | Guest78317 joins (~laudiacay@67.176.215.84) |
| 09:45:49 | <slaterr> | lovesegfault, you could use function composition: https://paste.tomsmeding.com/DxpWsvlW . alternatively, you can use (&) function to get left to right chaining |
| 09:46:02 | × | Sorny quits (~Sornaensi@077213200034.dynamic.telenor.dk) (Ping timeout: 268 seconds) |
| 09:46:20 | <lovesegfault> | @src (&) |
| 09:46:20 | <lambdabot> | Source not found. Sorry about this, I know it's a bit silly. |
| 09:46:28 | <slaterr> | @hoogle (&) |
| 09:46:28 | <lambdabot> | Data.Function (&) :: a -> (a -> b) -> b |
| 09:46:28 | <lambdabot> | Control.Lens.Lens (&) :: () => a -> (a -> b) -> b |
| 09:46:28 | <lambdabot> | Control.Lens.Operators (&) :: () => a -> (a -> b) -> b |
| 09:46:41 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 09:46:47 | <slaterr> | you want Data.Function.(&) |
| 09:47:31 | <lovesegfault> | Ah, nice |
| 09:48:57 | <slaterr> | > "oh my god" & splitWhen (\c -> isSpace c || c `elem` ['-', '_']) & concatMap (take 1) & map toUpper |
| 09:48:59 | <lambdabot> | "OMG" |
| 09:49:14 | → | zva joins (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) |
| 09:49:17 | → | gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh) |
| 09:49:17 | <lovesegfault> | Super cool |
| 09:49:57 | <tomsmeding> | concatMap (take 1) == map head |
| 09:49:58 | × | Guest78317 quits (~laudiacay@67.176.215.84) (Ping timeout: 260 seconds) |
| 09:50:09 | <slaterr> | head will error on an empty list |
| 09:50:15 | <tomsmeding> | hm, unless yes that |
| 09:52:48 | <lovesegfault> | where does splitWhen come from? Looking here: https://hoogle.haskell.org/?hoogle=splitwhen I would imagine I just had to do `import Data.List (splitWhen)`? |
| 09:53:19 | <slaterr> | split package, https://hackage.haskell.org/package/split-0.2.3.4/docs/Data-List-Split.html |
| 09:53:45 | → | DavidEichmann joins (~david@147.136.46.217.dyn.plus.net) |
| 09:55:15 | <slaterr> | for serious work, you want Text over String, so you'd use https://hackage.haskell.org/package/text-1.2.4.1/docs/Data-Text.html#v:splitOn. but I took this question to be more about functions chaining than about string processing |
| 09:57:17 | <slaterr> | or rather, Data.Text.split |
| 09:57:26 | <lovesegfault> | Yup |
| 10:02:43 | <lovesegfault> | Why doesn't this work? https://gist.github.com/4e5242468f437d571cd3a2e2968e8cc5 |
| 10:03:02 | <lovesegfault> | (not as a solution to the acronym thing, but rather that it fails to typecheck altogether) |
| 10:03:28 | × | heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 10:03:29 | <lovesegfault> | error: https://gist.github.com/5199c7b058be9e3666c2751a4ad31b88 |
| 10:04:35 | <slaterr> | swap the order of concat and split |
| 10:05:00 | <lovesegfault> | Oh :D |
| 10:05:10 | <lovesegfault> | so the pipelines go backwards |
| 10:05:29 | <slaterr> | also it is common do something like this, import qualified Data.Text as T, then you can do T.concat |
| 10:05:34 | <slaterr> | yes |
| 10:05:37 | <slaterr> | @src (.) |
| 10:05:37 | <lambdabot> | (f . g) x = f (g x) |
| 10:06:37 | → | idhugo_ joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) |
| 10:07:46 | <xsperry> | . is basically ascii equivalent of ∘ in math. https://en.wikipedia.org/wiki/Function_composition |
| 10:07:53 | <lovesegfault> | what's the right way to verbalize this: map :: (Char -> Char) -> Text -> Text |
| 10:08:07 | <lovesegfault> | i.e. how do I say that out loud |
| 10:09:04 | × | idhugo__ quits (~idhugo@87-49-45-4-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds) |
| 10:10:51 | <slaterr> | I'm not sure about the "official" version, but I'd say that map takes a function from char to char, text, and returns text. |
| 10:11:19 | <slaterr> | (even though, technically, it takes char to char function, and returns a function from Text to Text) |
| 10:12:07 | <lovesegfault> | Ah, yes, I like the second version :D |
| 10:12:27 | → | Alleria joins (~textual@zrcout.mskcc.org) |
| 10:12:34 | <lovesegfault> | is Rust's skip_while Haskell's span, kind of? |
| 10:12:34 | <dibblego> | Optic' Text Char |
| 10:12:45 | <lovesegfault> | Optic? |
| 10:12:51 | Alleria | is now known as Guest94131 |
| 10:14:28 | <slaterr> | maybe dropWhile? |
| 10:14:34 | <slaterr> | > dropWhile (<5) [1..10] |
| 10:14:36 | <lambdabot> | [5,6,7,8,9,10] |
| 10:16:08 | <slaterr> | or T.drop for Text |
| 10:16:36 | <slaterr> | :t T.dropWhile |
| 10:16:37 | <lambdabot> | (Char -> Bool) -> T.Text -> T.Text |
| 10:16:38 | → | philderbeast joins (~textual@bras-base-vldvpq5901w-grc-06-184-144-244-252.dsl.bell.ca) |
| 10:16:42 | <lovesegfault> | oh, nice! |
| 10:19:08 | <lovesegfault> | Is there a .chain() that lets me concat iterators? is is it just concat? |
| 10:19:55 | × | unlink_ quits (~unlink2@p57b8541f.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 10:20:05 | → | unlink2 joins (~unlink2@p200300ebcf12ad00ad652fa1ddae7806.dip0.t-ipconnect.de) |
| 10:20:55 | <slaterr> | example of input and output? |
| 10:22:45 | <lovesegfault> | word = "abcd"; word.chars().take(1).chain(word.chars().skip(2)).collect() -> "acd" |
| 10:23:22 | <lovesegfault> | word.chars().take(1).chain(word.chars().take(2)).collect() -> "aab" |
| 10:23:44 | → | minoru_shiraeesh joins (~shiraeesh@46.34.207.53) |
| 10:26:24 | <slaterr> | > let word = "abcd" in T.concat [T.take 1 word, T.drop 2 word] |
| 10:26:26 | <lambdabot> | error: |
| 10:26:26 | <lambdabot> | • Couldn't match expected type ‘T.Text’ with actual type ‘[Char]’ |
| 10:26:26 | <lambdabot> | • In the second argument of ‘T.take’, namely ‘word’ |
| 10:27:15 | <slaterr> | it should work with OverloadedStrings extension |
| 10:27:46 | × | nfip^ quits (nfip@ip98-184-89-2.mc.at.cox.net) () |
| 10:27:54 | lovesegfault | googles extension |
| 10:28:29 | <idnar> | > let word = T.pack "abcd" in T.concat [T.take 1 word, T.drop 2 word] |
| 10:28:31 | <lambdabot> | "acd" |
| 10:28:38 | <slaterr> | {-# LANGUAGE OverloadedStrings #-} on top of .hs file, or Extensions: OverloadedStrings in cabal so that you can use it in all the files in that project |
| 10:29:37 | <opqdonut> | btw does OverloadedStrings give you pattern matching on Text? |
| 10:29:56 | <opqdonut> | (I expect not, but I'm willing to be surprised :) |
| 10:29:57 | <slaterr> | this makes string literals polymorphic, so "abcd" is Data.String.IsString t => t, not String |
| 10:30:46 | <slaterr> | opqdonut it does |
| 10:30:51 | <opqdonut> | cool |
| 10:30:59 | <idnar> | > let word = T.pack "abcd" in mconcat [T.take 1, T.drop 2] word |
| 10:31:02 | <lambdabot> | "acd" |
| 10:31:26 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 10:32:21 | <lovesegfault> | Sweet |
| 10:32:46 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:33:07 | <idnar> | (that is possibly too cute) |
| 10:34:12 | <xsperry> | :t mconcat |
| 10:34:14 | <lambdabot> | Monoid a => [a] -> a |
| 10:35:21 | <idnar> | the Monoid/Semigroup instance for functions gives f <> g = \x -> f x <> g x |
| 10:35:47 | <olligobber> | > (drop <> take) 3 "anagram" |
| 10:35:49 | <lambdabot> | "gramana" |
| 10:37:30 | <slaterr> | > let word = T.pack "abcd" in (T.take 1 <> T.drop 2) word |
| 10:37:32 | <lambdabot> | "acd" |
| 10:37:52 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 10:38:10 | <lovesegfault> | what do I do if I want to map on [Text] ? I keep getting Expected type: Text -> [[Char]] |
| 10:38:31 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:39:14 | <slaterr> | > map _ (undefined :: [Text]) |
| 10:39:16 | <lambdabot> | error: |
| 10:39:16 | <lambdabot> | Not in scope: type constructor or class ‘Text’ |
| 10:39:16 | <lambdabot> | Perhaps you meant ‘T.Text’ (imported from Data.Text) |
| 10:39:23 | <slaterr> | > map _ (undefined :: [T.Text]) |
| 10:39:28 | <lambdabot> | error: |
| 10:39:28 | <lambdabot> | • Found hole: _ :: T.Text -> b |
| 10:39:28 | <lambdabot> | Where: ‘b’ is a rigid type variable bound by |
| 10:39:41 | <idnar> | lovesegfault: sounds like you have Text vs String confusion |
| 10:39:45 | <slaterr> | it will work, just give it a Text -> Text function |
| 10:39:47 | <lovesegfault> | https://gist.github.com/e4d2141f1c7846972f2a967b18c234e5 |
| 10:40:02 | <lovesegfault> | I thought my map here was giving me a Text? |
| 10:43:18 | <idnar> | `\w -> T.pack (take 1 w + (filter isUpper . dropWhile isUpper) w)` is String -> Text |
| 10:43:49 | <slaterr> | map (\w -> T.take 1 w `T.append` (T.filter isUpper . T.dropWhile isUpper) w) |
| 10:43:58 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 10:44:01 | <lovesegfault> | :O |
| 10:44:12 | <slaterr> | :t filter |
| 10:44:14 | <lambdabot> | (a -> Bool) -> [a] -> [a] |
| 10:44:16 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:44:30 | <slaterr> | w is Text, not [Char] (aka String) |
| 10:45:30 | <lovesegfault> | A bit annoying that I need to T. everything :( |
| 10:45:43 | <idnar> | <> is nicer than `T.append` imo |
| 10:46:07 | <lovesegfault> | idnar: is there a name for that operator? |
| 10:46:19 | → | geowiesnot joins (~user@87-89-181-157.abo.bbox.fr) |
| 10:47:14 | <lovesegfault> | woohoo the tests pass! |
| 10:47:15 | <idnar> | not sure |
| 10:47:41 | → | heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 10:47:52 | <lovesegfault> | any suggestions? https://gist.github.com/c858a83b4960a8bbc11ca9c5229b1983 |
| 10:48:10 | <lovesegfault> | or, rather, how may I improve? |
| 10:48:39 | <slaterr> | :t (<>) |
| 10:48:40 | <lambdabot> | Semigroup a => a -> a -> a |
| 10:48:46 | <ClaudiusMaximus> | @check (<>) == (mappend :: String -> String -> String) |
| 10:48:47 | <lambdabot> | error: |
| 10:48:48 | <lambdabot> | • No instance for (Eq (String -> String -> String)) arising from a use of ‘=... |
| 10:49:12 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 10:50:20 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:52:01 | × | heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 245 seconds) |
| 10:53:35 | <slaterr> | @pl (\c -> isSpace c || c `elem` ['-', '_']) |
| 10:53:35 | <lambdabot> | liftM2 (||) isSpace (`elem` "-_") |
| 10:53:45 | <slaterr> | yeah, probably not an improvement |
| 10:53:58 | <lovesegfault> | What's this @pl business? |
| 10:54:33 | <slaterr> | it rewrites the function using pointfree style |
| 10:55:21 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 10:55:29 | <slaterr> | @pl (\xs -> map (take 10) xs) |
| 10:55:29 | <lambdabot> | map (take 10) |
| 10:55:39 | <lovesegfault> | Ah, I see |
| 10:55:41 | <lovesegfault> | nice |
| 10:55:47 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:57:02 | <idnar> | (\w -> T.take 1 w <> (T.filter isUpper . T.dropWhile isUpper) w) is (T.take 1 <> (T.filter isUpper . T.dropWhile isUpper)) |
| 10:57:51 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 10:58:04 | <idnar> | extra parens maybe unneeded |
| 10:58:21 | <lovesegfault> | oh, nic |
| 10:59:31 | <lovesegfault> | Alright, time for bed |
| 10:59:40 | <lovesegfault> | thanks everyone for all the help today, I learned a bunch and had fun! |
| 10:59:56 | <slaterr> | good night! |
| 11:00:36 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 260 seconds) |
| 11:01:10 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 11:01:32 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:05:44 | → | mastarija joins (~mastarija@78-3-215-13.adsl.net.t-com.hr) |
| 11:05:48 | → | jk1006 joins (~jk1006@193.16.224.5) |
| 11:06:36 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 11:06:41 | ← | jk1006 parts (~jk1006@193.16.224.5) () |
| 11:07:17 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:07:31 | <xsperry> | idnar, indeed, parens aren't need, this works: map (T.take 1 <> T.filter isUpper . T.dropWhile isUpper) |
| 11:07:56 | → | heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 11:09:43 | → | idhugo__ joins (~idhugo@87-49-45-4-mobile.dk.customer.tdc.net) |
| 11:10:22 | → | aVikingTrex joins (~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) |
| 11:10:53 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:17c1:9e20:deae:8139) (Ping timeout: 250 seconds) |
| 11:12:02 | × | idhugo_ quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 246 seconds) |
| 11:12:34 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 11:12:51 | × | heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 245 seconds) |
| 11:12:59 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 268 seconds) |
| 11:13:16 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:14:20 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 11:15:46 | → | kiweun joins (~kiweun@2607:fea8:2a62:9600:3d40:49bb:2ec6:f11e) |
| 11:17:01 | × | geowiesnot quits (~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 245 seconds) |
| 11:18:19 | <gnumonic> | why would something not typecheck if I fully apply a type-level function with an explicit argument, yet typecheck perfectly fine if I use a type family that does the same thing? (not sure if i'm asking that right) |
| 11:18:20 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
| 11:19:28 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:19:56 | × | kiweun quits (~kiweun@2607:fea8:2a62:9600:3d40:49bb:2ec6:f11e) (Ping timeout: 245 seconds) |
| 11:21:43 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 11:22:22 | → | zmijunkie joins (~Adium@87.122.210.20) |
| 11:22:29 | <gnumonic> | example: https://gist.github.com/gnumonik/9eff3523012ace3b9e6f7c21710ba89a |
| 11:22:57 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:4c23:9944:9bc8:e9ca) |
| 11:23:05 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 11:23:26 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 11:23:41 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 245 seconds) |
| 11:26:24 | <merijn> | oof |
| 11:26:33 | <merijn> | That needs a content warning >.> |
| 11:26:52 | <merijn> | What's the appropriate media rating for -XKitchenSink ? :p |
| 11:29:07 | <gnumonic> | if the math gods didn't want me to use every compiler extension at once they wouldn't have given them to me :P |
| 11:33:59 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 11:35:30 | × | LKoen quits (~LKoen@11.160.9.109.rev.sfr.net) (Remote host closed the connection) |
| 11:39:17 | <Lycurgus> | math gods |
| 11:39:34 | <merijn> | Yeah, you know |
| 11:40:04 | <merijn> | Chtulhu, Yog-Sothoth |
| 11:41:27 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Remote host closed the connection) |
| 11:41:40 | <Lycurgus> | lovecraft is gonna be cancelled |
| 11:42:17 | <Lycurgus> | in the queue if not already in process |
| 11:43:08 | <merijn> | uh |
| 11:43:37 | <merijn> | Lovecraft was cancelled decades ago, but since he's dead nobody really cares anyway |
| 11:43:46 | <Lycurgus> | the kipling, conrad, et. al. queue;that is if cancel culture doesn't get cancelled first |
| 11:44:14 | <merijn> | Anyway, that's solidly offtopic |
| 11:44:47 | <Lycurgus> | yeah I was about to reach for math/fp figures likely to be cancelled |
| 11:44:51 | <hpc> | cancel culture is secretly call-cc culture :D |
| 11:44:55 | Lycurgus | looks around the room |
| 11:45:07 | → | machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 11:46:31 | → | totte joins (~totte@chakra/totte) |
| 11:47:03 | × | seveg quits (~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) (Ping timeout: 260 seconds) |
| 11:47:33 | → | geekosaur joins (930099da@rrcs-147-0-153-218.central.biz.rr.com) |
| 11:47:43 | × | Irenes quits (~irenes@NixOS/user/irenes) (Ping timeout: 250 seconds) |
| 11:47:50 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 11:48:07 | → | seveg joins (~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) |
| 11:51:04 | → | heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 11:54:34 | <Lycurgus> | merijn, did you infer the ghc flags from that gist? |
| 11:54:57 | → | berberman_ joins (~berberman@unaffiliated/berberman) |
| 11:55:26 | × | heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 11:55:50 | → | raehik1 joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 11:55:51 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Read error: Connection reset by peer) |
| 11:55:55 | × | berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 260 seconds) |
| 11:58:00 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds) |
| 11:58:30 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 11:58:41 | → | vgtw_ joins (~vgtw@gateway/tor-sasl/vgtw) |
| 11:59:09 | × | vgtw quits (~vgtw@gateway/tor-sasl/vgtw) (Ping timeout: 240 seconds) |
| 11:59:10 | vgtw_ | is now known as vgtw |
| 12:01:10 | → | Irenes joins (~irenes@NixOS/user/irenes) |
| 12:02:27 | → | nan` joins (~nan`@unaffiliated/nan/x-5405850) |
| 12:04:28 | → | wavemode_ joins (~wavemode@097-070-075-143.res.spectrum.com) |
| 12:04:50 | × | wavemode quits (~wavemode@097-070-075-143.res.spectrum.com) (Read error: Connection reset by peer) |
| 12:07:47 | → | LKoen joins (~LKoen@11.160.9.109.rev.sfr.net) |
| 12:08:04 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 265 seconds) |
| 12:08:16 | × | dsal quits (sid13060@gateway/web/irccloud.com/x-rdrbgbyktkhrytkf) (Ping timeout: 245 seconds) |
| 12:08:41 | × | star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Ping timeout: 245 seconds) |
| 12:09:11 | → | dsal joins (sid13060@gateway/web/irccloud.com/x-qtgpxhcseaxflmxx) |
| 12:09:34 | × | dexterlb quits (~dexterlb@2a01:9e40:2:2::2) (Read error: Connection reset by peer) |
| 12:10:02 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 12:16:08 | × | Lycurgus quits (~niemand@98.4.118.65) (Quit: Exeunt) |
| 12:18:41 | × | Kaeipi quits (~Kaiepi@47.54.252.148) (Ping timeout: 240 seconds) |
| 12:22:50 | → | Kaiepi joins (~Kaiepi@47.54.252.148) |
| 12:24:06 | × | sagax quits (~sagax_nb@213.138.71.146) (Ping timeout: 245 seconds) |
| 12:24:26 | → | stree joins (~stree@68.36.8.116) |
| 12:25:12 | × | tsaka_ quits (~torstein@athedsl-4519432.home.otenet.gr) (Ping timeout: 240 seconds) |
| 12:25:44 | → | nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 12:25:47 | → | cheater1 joins (~user@unaffiliated/cheater) |
| 12:25:50 | × | faustind quits (8508bb0b@gateway/web/cgi-irc/kiwiirc.com/ip.133.8.187.11) (Quit: Connection closed) |
| 12:26:25 | × | cheater quits (~user@unaffiliated/cheater) (Ping timeout: 252 seconds) |
| 12:30:04 | → | urodna joins (~urodna@unaffiliated/urodna) |
| 12:30:47 | → | LKoen_ joins (~LKoen@11.160.9.109.rev.sfr.net) |
| 12:31:36 | × | Kaiepi quits (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
| 12:32:00 | → | roconnor joins (~roconnor@host-45-58-225-218.dyn.295.ca) |
| 12:32:22 | → | Kaeipi joins (~Kaiepi@47.54.252.148) |
| 12:32:27 | × | albethere quits (sid457088@gateway/web/irccloud.com/x-bchjzdmqztgxrmnd) (Ping timeout: 245 seconds) |
| 12:32:53 | × | darthThorik quits (sid39589@gateway/web/irccloud.com/x-agxewrbiyijpmjiw) (Ping timeout: 245 seconds) |
| 12:33:01 | × | LKoen quits (~LKoen@11.160.9.109.rev.sfr.net) (Ping timeout: 252 seconds) |
| 12:33:27 | × | mastarija quits (~mastarija@78-3-215-13.adsl.net.t-com.hr) (Quit: Leaving) |
| 12:34:40 | → | albethere joins (sid457088@gateway/web/irccloud.com/x-egqhysbcgqwwryxs) |
| 12:35:03 | → | darthThorik joins (sid39589@gateway/web/irccloud.com/x-oqamjdqpvpmmnlft) |
| 12:36:46 | × | Kaeipi quits (~Kaiepi@47.54.252.148) (Ping timeout: 245 seconds) |
| 12:39:30 | → | timCF joins (~i.tkachuk@200-149-20-81.sta.estpak.ee) |
| 12:40:40 | → | Kaiepi joins (~Kaiepi@47.54.252.148) |
| 12:41:11 | × | theDon quits (~td@94.134.91.246) (Ping timeout: 245 seconds) |
| 12:41:27 | → | theDon joins (~td@94.134.91.246) |
| 12:42:03 | <timCF> | Hello! Is there any standard function like `foldM` to work with `ExceptT Text m acc` values? Where `m` is some IO-like monad and every iteration of fold might return `throwE e` and interrupt all computation sequence? |
| 12:45:59 | <Ferdirand> | :t foldM |
| 12:46:01 | <lambdabot> | (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m b |
| 12:47:14 | <Ferdirand> | :t foldM (flip id) |
| 12:47:16 | <lambdabot> | (Foldable t, Monad m) => b -> t (b -> m b) -> m b |
| 12:47:50 | <Ferdirand> | disclaimer: I have no idea what I'm doing |
| 12:48:41 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Ping timeout: 245 seconds) |
| 12:48:55 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 12:49:55 | <Ferdirand> | or maybe that's not what you meant |
| 12:52:11 | → | heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 12:53:05 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 12:54:24 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 12:56:20 | × | heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds) |
| 12:59:06 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 240 seconds) |
| 12:59:25 | → | dexterlb joins (~dexterlb@2a01:9e40:2:2::2) |
| 13:01:15 | → | nicholasbulka joins (~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832) |
| 13:04:06 | × | Irenes quits (~irenes@NixOS/user/irenes) (*.net *.split) |
| 13:04:06 | × | seveg quits (~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) (*.net *.split) |
| 13:04:07 | × | jess quits (jess@freenode/staff/jess) (*.net *.split) |
| 13:04:07 | × | aidecoe quits (~aidecoe@unaffiliated/aidecoe) (*.net *.split) |
| 13:04:07 | × | limbo quits (ar@45.63.9.236) (*.net *.split) |
| 13:04:07 | × | dilinger quits (~dilinger@spindle.queued.net) (*.net *.split) |
| 13:04:07 | × | cfricke quits (~cfricke@unaffiliated/cfricke) (*.net *.split) |
| 13:04:07 | × | coot quits (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (*.net *.split) |
| 13:04:08 | × | jonatan quits (~nate@h77-53-70-163.cust.a3fiber.se) (*.net *.split) |
| 13:04:08 | × | tabemann quits (~travisb@2600:1700:7990:24e0:1797:6b66:735:4572) (*.net *.split) |
| 13:04:08 | × | codedmart quits (codedmart@2600:3c01::f03c:92ff:fefe:8511) (*.net *.split) |
| 13:04:08 | × | juri_ quits (~juri@178.63.35.222) (*.net *.split) |
| 13:04:09 | × | alx741 quits (~alx741@186.178.109.231) (*.net *.split) |
| 13:04:09 | × | sdrodge_ quits (~sdrodge@unaffiliated/sdrodge) (*.net *.split) |
| 13:04:09 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (*.net *.split) |
| 13:04:09 | × | mrchampion quits (~mrchampio@38.18.109.23) (*.net *.split) |
| 13:04:10 | × | Forlorn_ quits (~Forlorn@unaffiliated/forlorn) (*.net *.split) |
| 13:04:10 | × | caasih quits (sid13241@gateway/web/irccloud.com/x-ywhvuyflycmojjfa) (*.net *.split) |
| 13:04:11 | × | ibloom quits (sid350277@gateway/web/irccloud.com/x-yhokoaaxqmoudodu) (*.net *.split) |
| 13:04:11 | × | alexknvl quits (sid259568@gateway/web/irccloud.com/x-wdxobfzstmpkvclf) (*.net *.split) |
| 13:04:11 | × | beaky quits (~beaky@2a03:b0c0:0:1010::17cf:7003) (*.net *.split) |
| 13:04:11 | × | ahf quits (ahf@irssi/staff/ahf) (*.net *.split) |
| 13:04:11 | × | kaletaa quits (~kaletaa@188.34.177.83) (*.net *.split) |
| 13:04:11 | × | kloeri quits (~kloeri@freenode/staff/exherbo.kloeri) (*.net *.split) |
| 13:04:11 | × | joeytwiddle quits (~joeytwidd@162.243.115.31) (*.net *.split) |
| 13:04:12 | × | lovesegfault quits (~bemeurer@37.219.94.34.bc.googleusercontent.com) (*.net *.split) |
| 13:04:12 | × | TMA quits (tma@twin.jikos.cz) (*.net *.split) |
| 13:05:36 | → | Irenes joins (~irenes@NixOS/user/irenes) |
| 13:05:36 | → | seveg joins (~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) |
| 13:05:36 | → | jess joins (jess@freenode/staff/jess) |
| 13:05:36 | → | aidecoe joins (~aidecoe@unaffiliated/aidecoe) |
| 13:05:36 | → | limbo joins (ar@45.63.9.236) |
| 13:05:36 | → | dilinger joins (~dilinger@spindle.queued.net) |
| 13:05:36 | → | cfricke joins (~cfricke@unaffiliated/cfricke) |
| 13:05:36 | → | coot joins (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) |
| 13:05:36 | → | jonatan joins (~nate@h77-53-70-163.cust.a3fiber.se) |
| 13:05:36 | → | tabemann joins (~travisb@2600:1700:7990:24e0:1797:6b66:735:4572) |
| 13:05:36 | → | codedmart joins (codedmart@2600:3c01::f03c:92ff:fefe:8511) |
| 13:05:36 | → | juri_ joins (~juri@178.63.35.222) |
| 13:05:36 | → | alx741 joins (~alx741@186.178.109.231) |
| 13:05:36 | → | sdrodge_ joins (~sdrodge@unaffiliated/sdrodge) |
| 13:05:36 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
| 13:05:36 | → | mrchampion joins (~mrchampio@38.18.109.23) |
| 13:05:36 | → | Forlorn_ joins (~Forlorn@unaffiliated/forlorn) |
| 13:05:36 | → | caasih joins (sid13241@gateway/web/irccloud.com/x-ywhvuyflycmojjfa) |
| 13:05:36 | → | lovesegfault joins (~bemeurer@37.219.94.34.bc.googleusercontent.com) |
| 13:05:36 | → | ibloom joins (sid350277@gateway/web/irccloud.com/x-yhokoaaxqmoudodu) |
| 13:05:36 | → | alexknvl joins (sid259568@gateway/web/irccloud.com/x-wdxobfzstmpkvclf) |
| 13:05:36 | → | ahf joins (ahf@irssi/staff/ahf) |
| 13:05:36 | → | kloeri joins (~kloeri@freenode/staff/exherbo.kloeri) |
| 13:05:36 | → | kaletaa joins (~kaletaa@188.34.177.83) |
| 13:05:36 | → | joeytwiddle joins (~joeytwidd@162.243.115.31) |
| 13:05:36 | → | TMA joins (tma@twin.jikos.cz) |
| 13:05:47 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 13:06:01 | → | beaky joins (~beaky@2a03:b0c0:0:1010::17cf:7003) |
| 13:06:11 | × | Narinas quits (~Narinas@187-178-93-112.dynamic.axtel.net) (Ping timeout: 240 seconds) |
| 13:08:41 | × | ahf quits (ahf@irssi/staff/ahf) (Ping timeout: 245 seconds) |
| 13:09:05 | × | gzj quits (~gzj@unaffiliated/gzj) (Read error: Connection reset by peer) |
| 13:09:26 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 13:09:34 | → | hyperisco joins (~hyperisco@d192-186-117-226.static.comm.cgocable.net) |
| 13:10:17 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 13:10:41 | × | Rudd0 quits (~Rudd0@185.189.115.103) (Ping timeout: 240 seconds) |
| 13:12:17 | → | Narinas joins (~Narinas@187-178-93-112.dynamic.axtel.net) |
| 13:13:05 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:13:25 | → | ahf joins (ahf@irssi/staff/ahf) |
| 13:13:27 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 13:14:05 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:14:25 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 13:14:51 | × | jess quits (jess@freenode/staff/jess) (Quit: Reconnecting) |
| 13:15:07 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:15:13 | → | jess joins (jess@freenode/staff/jess) |
| 13:15:27 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 13:15:31 | × | limbo quits (ar@45.63.9.236) (Max SendQ exceeded) |
| 13:16:01 | → | limbo joins (ar@45.63.9.236) |
| 13:16:06 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:16:26 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 13:16:37 | → | kiweun joins (~kiweun@2607:fea8:2a62:9600:c959:9dca:1ed1:e2e8) |
| 13:17:06 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:17:26 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 13:18:05 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:18:18 | → | son0p joins (~ff@181.136.122.143) |
| 13:18:47 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 13:19:06 | × | cfricke quits (~cfricke@unaffiliated/cfricke) (Ping timeout: 245 seconds) |
| 13:19:06 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:19:25 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 13:21:06 | × | kiweun quits (~kiweun@2607:fea8:2a62:9600:c959:9dca:1ed1:e2e8) (Ping timeout: 258 seconds) |
| 13:21:07 | × | gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:21:28 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 13:21:48 | → | Tario joins (~Tario@201.192.165.173) |
| 13:22:29 | × | hexfive quits (~hexfive@50.35.83.177) (Quit: i must go. my people need me.) |
| 13:22:35 | × | tomboy64 quits (~tomboy64@unaffiliated/tomboy64) (Ping timeout: 246 seconds) |
| 13:25:39 | → | psydruid[m] joins (psydruidma@gateway/shell/matrix.org/x-dvmwnhqcosgmszks) |
| 13:26:06 | × | gzj quits (~gzj@unaffiliated/gzj) (Ping timeout: 240 seconds) |
| 13:29:15 | → | tomboy64 joins (~tomboy64@unaffiliated/tomboy64) |
| 13:34:11 | → | carlomagno joins (~cararell@148.87.23.9) |
| 13:40:55 | × | aVikingTrex quits (~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 260 seconds) |
| 13:46:12 | → | Guest78317 joins (~laudiacay@67.176.215.84) |
| 13:46:23 | → | mmfood joins (~mmfood@185.176.246.69) |
| 13:50:35 | × | Guest78317 quits (~laudiacay@67.176.215.84) (Ping timeout: 246 seconds) |
| 13:58:16 | × | minoru_shiraeesh quits (~shiraeesh@46.34.207.53) (Ping timeout: 252 seconds) |
| 14:00:06 | × | zva quits (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds) |
| 14:01:43 | → | waleee-cl joins (uid373333@gateway/web/irccloud.com/x-hagaqbxuugljakul) |
| 14:02:52 | → | dvdp73 joins (59736826@38.104.115.89.rev.vodafone.pt) |
| 14:03:16 | × | LKoen_ quits (~LKoen@11.160.9.109.rev.sfr.net) (Remote host closed the connection) |
| 14:05:01 | → | LKoen joins (~LKoen@11.160.9.109.rev.sfr.net) |
| 14:07:05 | → | unyu joins (~pyon@unaffiliated/pyon) |
| 14:07:25 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 252 seconds) |
| 14:07:47 | → | zva joins (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) |
| 14:12:21 | → | frozenErebus joins (~frozenEre@37.231.244.249) |
| 14:14:56 | × | timCF quits (~i.tkachuk@200-149-20-81.sta.estpak.ee) (Quit: leaving) |
| 14:14:58 | × | unlink2 quits (~unlink2@p200300ebcf12ad00ad652fa1ddae7806.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 14:16:08 | → | unlink2 joins (~unlink2@p57b8541f.dip0.t-ipconnect.de) |
| 14:18:47 | → | howdoi joins (uid224@gateway/web/irccloud.com/x-kxxbpbiihnerjfdd) |
| 14:22:23 | × | sleblanc quits (~sleblanc@unaffiliated/sebleblanc) (Quit: Leaving) |
| 14:24:20 | → | star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) |
| 14:24:58 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 14:26:38 | → | Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net) |
| 14:27:04 | → | Jd007 joins (~Jd007@162.156.11.151) |
| 14:30:06 | × | gzj quits (~gzj@unaffiliated/gzj) (Ping timeout: 240 seconds) |
| 14:30:11 | → | cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net) |
| 14:30:42 | × | hendursaga quits (~weechat@gateway/tor-sasl/hendursaga) (Remote host closed the connection) |
| 14:31:07 | → | hendursaga joins (~weechat@gateway/tor-sasl/hendursaga) |
| 14:32:12 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds) |
| 14:33:04 | × | dvdp73 quits (59736826@38.104.115.89.rev.vodafone.pt) (Quit: Connection closed) |
| 14:39:44 | → | bedforddriggs joins (60fa4ff9@pool-96-250-79-249.nycmny.fios.verizon.net) |
| 14:40:12 | × | alx741 quits (~alx741@186.178.109.231) (Quit: alx741) |
| 14:42:15 | × | nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 265 seconds) |
| 14:45:20 | → | TheCavalry joins (~TheCavalr@217.146.82.202) |
| 14:45:37 | → | Deide joins (~Deide@217.155.19.23) |
| 14:46:00 | → | stree joins (~stree@68.36.8.116) |
| 14:51:43 | → | bitmapper joins (uid464869@gateway/web/irccloud.com/x-ggwmryvnqwlsouwu) |
| 14:52:20 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 14:52:55 | → | tsaka_ joins (~torstein@athedsl-4519432.home.otenet.gr) |
| 14:54:21 | → | cybai joins (~cybai@2400:4050:3122:900:f13a:fdb8:499e:2b92) |
| 14:56:09 | → | idhugo_ joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) |
| 14:58:45 | × | idhugo__ quits (~idhugo@87-49-45-4-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds) |
| 15:02:47 | × | zmijunkie quits (~Adium@87.122.210.20) (Ping timeout: 252 seconds) |
| 15:05:23 | × | ericsagnes quits (~ericsagne@2405:6580:0:5100:4c23:9944:9bc8:e9ca) (Ping timeout: 260 seconds) |
| 15:06:05 | → | lawid joins (~quassel@2a02:8109:b5c0:5334:265e:beff:fe2a:dde8) |
| 15:06:57 | → | zmijunkie joins (~Adium@87.122.210.20) |
| 15:08:30 | → | Ariakenom joins (~Ariakenom@2001:9b1:efb:fc00:4447:2758:9838:e84a) |
| 15:11:58 | × | idhugo_ quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds) |
| 15:12:42 | × | olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection) |
| 15:13:24 | <zzz> | i was playing with ghc and "quickly and dirtly" measuring performance of simple variations on functions, and something sparked my curiosity. i made 3 versions of a function that run as expected when compiled, but ghci intrigues me |
| 15:13:36 | <zzz> | https://gist.github.com/jrvieira/2820b46856ba1ec89453946557b0f427 |
| 15:14:13 | <zzz> | the second function runs faster than the third in ghci. anyone knows why? this is pure curiosity |
| 15:17:03 | <c_wraith> | zzz: ghci will use compiled code if it already exists, but interprets code if it can't find a compiled version. |
| 15:17:17 | → | kiweun joins (~kiweun@2607:fea8:2a62:9600:a107:fd5c:d069:77e4) |
| 15:17:25 | <c_wraith> | zzz: this matters because it knows where to find compiled code for map, which saves it from having to interpret all those list manipulations |
| 15:18:04 | → | ericsagnes joins (~ericsagne@2405:6580:0:5100:f641:c40f:5016:aacb) |
| 15:18:24 | <zzz> | nice |
| 15:19:01 | <zzz> | thanks, that was a uch simple answer than what i expected |
| 15:19:11 | <zzz> | much simpler |
| 15:19:32 | × | Pickchea quits (~private@unaffiliated/pickchea) (Ping timeout: 240 seconds) |
| 15:21:51 | × | kiweun quits (~kiweun@2607:fea8:2a62:9600:a107:fd5c:d069:77e4) (Ping timeout: 258 seconds) |
| 15:22:24 | <merijn> | And the interpreted bytecode doesn't get the same level of optimisation as compiled code, which is why benchmarking stuff in ghci is also generally unwise if you care about real answers :) |
| 15:23:36 | <merijn> | zzz: Also a plug for benchmarking stuff with some degree of accuracy: http://www.serpentine.com/criterion/ https://hackage.haskell.org/package/criterion |
| 15:24:08 | <zzz> | i am aware! as i said, i was just playing around |
| 15:24:21 | <merijn> | Sure, just pointing it out for the future :) |
| 15:26:55 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 15:27:53 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 15:28:10 | × | wonko7 quits (~wonko7@62.115.229.50) (Ping timeout: 265 seconds) |
| 15:28:54 | <zzz> | follow up question, while we are at it: any reason not to automate this optimization (from the 2nd to the 3rd function)? |
| 15:30:31 | <zzz> | my intuition is that it would be something the compiler could do fairly straight forwardly |
| 15:30:33 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:5c9e:8d21:d745:3944) |
| 15:31:05 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:5c9e:8d21:d745:3944) (Remote host closed the connection) |
| 15:31:11 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 15:31:55 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:5c9e:8d21:d745:3944) |
| 15:32:27 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 15:32:31 | <tomsmeding> | zzz: your second and third function do something different, they produce the result list in a different order |
| 15:33:53 | <tomsmeding> | % let s1 [] = [[]]; s1 (x:xs) = let ss = s1 xs in map (x :) ss ++ ss |
| 15:33:54 | <yahb> | tomsmeding: |
| 15:33:57 | × | cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 252 seconds) |
| 15:34:01 | <tomsmeding> | % let s2 [] = [[]]; s2 (x:xs) = let ss2 _ [] = [] ; ss2 x (y:ys) = (x:y) : y : ss2 x ys in ss2 x (s2 xs) |
| 15:34:01 | <yahb> | tomsmeding: |
| 15:34:02 | → | Sheilong joins (uid293653@gateway/web/irccloud.com/x-qhaitevlgmfrqfwo) |
| 15:34:11 | <tomsmeding> | % s1 [1..3] |
| 15:34:12 | <yahb> | tomsmeding: [[1,2,3],[1,2],[1,3],[1],[2,3],[2],[3],[]] |
| 15:34:15 | <tomsmeding> | % s2 [1..3] |
| 15:34:15 | <yahb> | tomsmeding: [[1,2,3],[2,3],[1,3],[3],[1,2],[2],[1],[]] |
| 15:34:29 | <tomsmeding> | ghc isn't going to do optimisations that change semantics :p |
| 15:35:39 | → | heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 15:36:14 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:5c9e:8d21:d745:3944) (Ping timeout: 245 seconds) |
| 15:36:14 | <zzz> | i knew that would be the answer :) you can rewrite it so that it would be the same though, can't you? |
| 15:36:27 | × | Kaiepi quits (~Kaiepi@47.54.252.148) (Read error: Connection reset by peer) |
| 15:36:38 | <tomsmeding> | incidentally this is why I like let-expressions better than while blocks for smaller things (excepting large helper methods); you can much more easily rewrite stuff because everything is compositional |
| 15:36:42 | → | Kaiepi joins (~Kaiepi@47.54.252.148) |
| 15:36:58 | <tomsmeding> | zzz: can you? |
| 15:37:24 | <c_wraith> | let's see what the list monad says! |
| 15:37:26 | <c_wraith> | > filterM (const [True, False]) [1,2,3] |
| 15:37:27 | <lambdabot> | [[1,2,3],[1,2],[1,3],[1],[2,3],[2],[3],[]] |
| 15:37:38 | <c_wraith> | ok, yeah, that makes sense |
| 15:39:15 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 15:43:06 | × | malumore quits (~malumore@151.62.117.136) (Ping timeout: 240 seconds) |
| 15:43:11 | → | knupfer joins (~Thunderbi@200116b82b4d2f00ccb7bffffea9a8f6.dip.versatel-1u1.de) |
| 15:43:54 | × | knupfer quits (~Thunderbi@200116b82b4d2f00ccb7bffffea9a8f6.dip.versatel-1u1.de) (Remote host closed the connection) |
| 15:44:02 | → | knupfer joins (~Thunderbi@200116b82b4d2f00a98dd2f64b7ff0a2.dip.versatel-1u1.de) |
| 15:44:31 | → | nineonine joins (~nineonine@2604:3d08:7785:9600:5c9e:8d21:d745:3944) |
| 15:44:36 | <zzz> | thank you for that |
| 15:44:41 | × | TheCavalry quits (~TheCavalr@217.146.82.202) (Ping timeout: 260 seconds) |
| 15:44:59 | <c_wraith> | it's exactly the same algorithm as your second version |
| 15:45:08 | <c_wraith> | It just uses more built-in tooling |
| 15:46:28 | <zzz> | tomsmeding: i don't get your let vs while argument. can you clarify? |
| 15:46:44 | × | chele quits (~chele@5.53.222.202) (Remote host closed the connection) |
| 15:46:51 | <c_wraith> | But yeah... when micro-optimizing things in this neighborhood, you usually get the best performance by carefully working to maximize sharing between adjacent results. this results in less garbage collection drag. |
| 15:47:17 | <tomsmeding> | zzz: completely subjective argument, don't attach too much value to it :) |
| 15:47:34 | <tomsmeding> | point was that in let-form, I can inline stuff so that it becomes a one-liner without thinking |
| 15:47:50 | <tomsmeding> | in where-form, the scoping of that where block is very much unclear to me |
| 15:47:52 | <c_wraith> | but that requires being careful about the order results are produced in. You can't just change the order without affecting the performance. |
| 15:47:58 | <zzz> | tomsmeding: ah ok! you said "composition" and it confused me |
| 15:48:13 | <tomsmeding> | "compositional" != "composition" |
| 15:48:29 | <zzz> | got it |
| 15:48:30 | <tomsmeding> | compositional = subexpressions have the same form as the whole expression |
| 15:48:33 | × | raehik1 quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.1) |
| 15:48:38 | <tomsmeding> | "you can compose stuff arbitrarily" |
| 15:48:56 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 15:49:31 | × | nineonine quits (~nineonine@2604:3d08:7785:9600:5c9e:8d21:d745:3944) (Ping timeout: 250 seconds) |
| 15:50:18 | <tomsmeding> | fun fact, my ghc realises that the first and second versions are really the same thing and does no work at all for the second function if you evaluate them one after another |
| 15:50:23 | <tomsmeding> | oh the joys of benchmarking |
| 15:50:32 | → | nineonine joins (~nineonine@50.216.62.2) |
| 15:50:55 | <c_wraith> | like, an order optimizing sharing might look like [[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]] |
| 15:51:32 | <c_wraith> | (admittedly, not much sharing to be found when looking at a max of 3 elements) |
| 15:54:54 | <zzz> | > filterM (const [False,True]) [1,2,3] |
| 15:54:56 | <lambdabot> | [[],[3],[2],[2,3],[1],[1,3],[1,2],[1,2,3]] |
| 15:55:04 | <zzz> | :( |
| 15:55:21 | <c_wraith> | ... ok, that particular order probably doesn't have great algorithms for. There are other ways to approach it that probably get you better results. |
| 15:55:44 | <c_wraith> | But it does have shared sublists as adjacent as possible, which was my goal |
| 15:57:47 | → | idhugo_ joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) |
| 15:57:49 | <c_wraith> | I think it'd be easier to write an algorithm for [[3],[2,3],[1,2,3],[1,3],[2],[1,2],[1],[]] |
| 15:58:03 | <tomsmeding> | I have a function that produces [[3,2,1],[2,1],[3,1],[1],[3,2],[2],[3],[]] |
| 15:58:36 | <tomsmeding> | but it's only marginally faster than the map version, and zzz's third function is a lot faster still |
| 15:58:51 | <zzz> | for this particular problem i would just generate 2^n binary numbers where 000 => [] , 001 => [1] , 010 => [2] , ... 110 => [2,3] , 111 => [1,2,3] |
| 15:59:39 | <tomsmeding> | c_wraith: s4 input = let go base [] = [base] ; go base (x:xs) = go (x : base) xs ++ go base xs in go [] input |
| 16:00:16 | × | slaterr quits (~bc8134e3@199.204.85.195) (Quit: CGI:IRC (Session timeout)) |
| 16:00:27 | <c_wraith> | It's true, I was maintaining the subsequence property, instead of allowing myself to go to subset as the name implies |
| 16:01:02 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 16:01:32 | → | Rudd0 joins (~Rudd0@185.189.115.103) |
| 16:04:54 | × | Narinas quits (~Narinas@187-178-93-112.dynamic.axtel.net) (Ping timeout: 265 seconds) |
| 16:10:43 | × | conal quits (~conal@64.71.133.70) (Read error: Connection reset by peer) |
| 16:12:04 | <zzz> | filterM is fun |
| 16:13:23 | → | conal joins (~conal@64.71.133.70) |
| 16:14:27 | → | malumore joins (~malumore@151.62.117.136) |
| 16:15:48 | → | ep1ctetus joins (~epictetus@ip72-194-54-201.sb.sd.cox.net) |
| 16:16:24 | × | hendursaga quits (~weechat@gateway/tor-sasl/hendursaga) (Remote host closed the connection) |
| 16:16:47 | → | hendursaga joins (~weechat@gateway/tor-sasl/hendursaga) |
| 16:21:20 | × | bedforddriggs quits (60fa4ff9@pool-96-250-79-249.nycmny.fios.verizon.net) (Quit: Connection closed) |
| 16:22:54 | × | kritzefitz quits (~kritzefit@2003:5b:203b:200::10:49) (Remote host closed the connection) |
| 16:22:58 | → | Narinas joins (~Narinas@187-178-93-112.dynamic.axtel.net) |
| 16:28:00 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection) |
| 16:28:05 | × | haasn quits (~nand@mpv/developer/haasn) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
| 16:29:02 | → | band joins (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) |
| 16:29:19 | → | haasn joins (~nand@mpv/developer/haasn) |
| 16:30:43 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 16:31:35 | → | kritzefitz joins (~kritzefit@212.86.56.80) |
| 16:31:42 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 16:32:46 | <band> | new haskell / cabal user here: installing pdftotext with cabal yields poppler.cc C++ extension errors. suggestions for fixing? |
| 16:33:21 | <band> | er, that it "C++11 extensions" errors |
| 16:33:40 | → | nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 16:36:50 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds) |
| 16:40:36 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 16:45:13 | <fendor> | band, maybe pdftotext requires an old poppler version? So, it might need updating |
| 16:45:32 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 16:45:33 | → | elfets_ joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 16:46:30 | <fendor> | seems like pdftotext compiles some c++ sources. not sure there is an easy fix |
| 16:46:40 | × | heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 16:47:21 | → | puke joins (~vroom@217.138.252.184) |
| 16:48:00 | <band> | fendor, thanks for the response -- much appreciated. |
| 16:48:51 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 260 seconds) |
| 16:51:31 | → | kupi joins (uid212005@gateway/web/irccloud.com/x-wwoexcijnelowmiu) |
| 16:51:50 | → | s00pcan joins (~chris@075-133-056-178.res.spectrum.com) |
| 16:53:45 | → | hypercube joins (hypercube@gateway/vpn/protonvpn/hypercube) |
| 16:54:10 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 260 seconds) |
| 16:56:43 | × | LKoen quits (~LKoen@11.160.9.109.rev.sfr.net) (Remote host closed the connection) |
| 16:57:34 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving) |
| 16:58:49 | <fendor> | band, compilation worked for me out of the box for the pdftotext |
| 16:58:53 | <fendor> | maybe share your errors? |
| 17:01:09 | <geekosaur> | and what platform (Macs with clang may report different things from Linux or Windows with gcc) |
| 17:02:49 | → | Pickchea joins (~private@unaffiliated/pickchea) |
| 17:03:04 | × | nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 252 seconds) |
| 17:03:25 | → | Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
| 17:03:49 | → | Inexes joins (5534d86f@111.pool85-52-216.static.orange.es) |
| 17:03:57 | × | band quits (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) (Ping timeout: 260 seconds) |
| 17:04:01 | <Inexes> | Hi all!! |
| 17:04:12 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 17:05:00 | <hyperisco> | hi |
| 17:05:00 | → | danso joins (~dan@23-233-111-52.cpe.pppoe.ca) |
| 17:06:10 | <Inexes> | Can I ask a question about an exercise that I have? |
| 17:07:01 | → | stree joins (~stree@68.36.8.116) |
| 17:07:13 | <geekosaur> | generally you should just ask instead of asking to ask |
| 17:10:02 | × | kritzefitz quits (~kritzefit@212.86.56.80) (Ping timeout: 268 seconds) |
| 17:10:14 | → | fresheyeball joins (~isaac@c-71-237-105-37.hsd1.co.comcast.net) |
| 17:12:22 | <Inexes> | Ok, so I have a list of lists a = [[1,1,1,1], [1,2,3,1], [1,2,3,1], [1,1,1,1] ], and I need to take them out 2 by 2 to take them to a function that compares them. (sorry for my English, I use google translator), for example. -fx (x1: x2: xs) = compare x1 x2 ... but I no longer know how to make it compare the following lists ... |
| 17:13:22 | → | LKoen joins (~LKoen@11.160.9.109.rev.sfr.net) |
| 17:13:34 | <Inexes> | the idea is to compare x1 x2, next x2 x3, and finally x3 x4 |
| 17:14:45 | <hpc> | Inexes: think about how to make a list that has x2 and x3 as its first elements |
| 17:14:56 | <hpc> | Inexes: you can pass that list to fx, and then do something to combine all the results |
| 17:15:00 | → | Sorna joins (~Sornaensi@077213200034.dynamic.telenor.dk) |
| 17:17:22 | × | idhugo_ quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds) |
| 17:18:06 | × | Sornaensis quits (~Sornaensi@79.142.232.102.static.router4.bolignet.dk) (Ping timeout: 240 seconds) |
| 17:18:17 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 17:19:35 | <Inexes> | My idea is that when comparing x1 and x2 this is added to another list, "list x", for example, and when comparing with the rest, the whole result is added to "list x". The other functions I have already created and they work, but I don't know how to do this ... |
| 17:19:35 | <hpc> | Inexes: you may also want to try one of the channels on https://wiki.haskell.org/IRC_channel#Language.2FCountry_specific |
| 17:20:50 | <Inexes> | Hpc, I tried my native language channel, but nobody answered me :( |
| 17:20:55 | <hpc> | :( |
| 17:22:35 | <hpc> | one way to approach it is |
| 17:23:01 | <hpc> | say you have your input list [w, x, y, z] |
| 17:23:12 | <hpc> | or, w : x : y : z : [] |
| 17:23:36 | → | heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 17:23:38 | <hpc> | the output would be compare w x : compare x y : compare y z : [] |
| 17:23:49 | <hpc> | but what happens if the input list is just [x, y, z]? |
| 17:24:16 | <hpc> | and think about how those output lists relate to each other |
| 17:25:01 | <hpc> | or if the input list is just [y, z] |
| 17:25:37 | <hpc> | with [w, x, y, z], when you pass that to fx, x1 = w, x2 = x, and xs = [y, z] |
| 17:25:56 | → | nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 17:26:20 | → | gzj joins (~gzj@unaffiliated/gzj) |
| 17:26:37 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Remote host closed the connection) |
| 17:27:09 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 17:27:52 | × | nan` quits (~nan`@unaffiliated/nan/x-5405850) (Quit: leaving) |
| 17:27:58 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Max SendQ exceeded) |
| 17:28:04 | <Inexes> | Ok I will try that solution, for this exercise it can help me. Thank you hpc |
| 17:29:02 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 17:29:43 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Max SendQ exceeded) |
| 17:31:07 | × | gzj quits (~gzj@unaffiliated/gzj) (Ping timeout: 252 seconds) |
| 17:31:11 | → | aveltras joins (uid364989@gateway/web/irccloud.com/x-cudhvvtoyvyrmfsp) |
| 17:33:10 | → | kiweun joins (~kiweun@2607:fea8:2a62:9600:890d:2e48:a6a5:21d5) |
| 17:34:05 | × | jneira quits (501e65b6@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.182) (Ping timeout: 268 seconds) |
| 17:34:46 | <zzz> | c_wraith: filterM is terribly inneficient. more so than the naive solution |
| 17:34:48 | <zzz> | https://gist.github.com/jrvieira/2820b46856ba1ec89453946557b0f427 |
| 17:35:17 | <zzz> | i must be doing something wrong |
| 17:35:59 | → | band joins (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) |
| 17:36:38 | <c_wraith> | nah, I wouldn't expect it to be efficient compared to something more direct. |
| 17:37:33 | × | kiweun quits (~kiweun@2607:fea8:2a62:9600:890d:2e48:a6a5:21d5) (Ping timeout: 258 seconds) |
| 17:37:44 | × | Rudd0 quits (~Rudd0@185.189.115.103) (Ping timeout: 246 seconds) |
| 17:38:45 | → | Sgeo_ joins (~Sgeo@ool-18b98aa4.dyn.optonline.net) |
| 17:39:20 | → | unlink_ joins (~unlink2@p200300ebcf12ad00ad652fa1ddae7806.dip0.t-ipconnect.de) |
| 17:39:25 | → | wroathe_ joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 17:40:05 | → | smerdyakov3 joins (~dan@5.146.195.164) |
| 17:40:12 | → | MidAutumnHotaru7 joins (~MidAutumn@unaffiliated/midautumnhotaru) |
| 17:40:14 | → | haya0 joins (~haya@ec2-18-231-117-140.sa-east-1.compute.amazonaws.com) |
| 17:40:16 | → | texasmynsted_ joins (~texasmyns@99.96.221.112) |
| 17:40:30 | → | L1Cafe9 joins (~L1Cafe@kydara.com) |
| 17:40:33 | → | dcoutts joins (~duncan@94.186.125.91.dyn.plus.net) |
| 17:40:58 | → | jrm2 joins (~jrm@freebsd/developer/jrm) |
| 17:41:05 | → | dminuoso joins (~dminuoso@static.88-198-218-68.clients.your-server.de) |
| 17:41:15 | → | haasn` joins (~nand@mpv/developer/haasn) |
| 17:41:18 | → | carbolymer_ joins (~carbolyme@dropacid.net) |
| 17:41:20 | → | rann_ joins (sid175221@gateway/web/irccloud.com/x-htpbeywwyvgnitzj) |
| 17:41:38 | → | amosbird_ joins (~amosbird@13.75.119.182) |
| 17:41:52 | → | dmj`_ joins (sid72307@gateway/web/irccloud.com/x-hiydzdvhdibdbilo) |
| 17:41:57 | → | glamas_ joins (~glamas@107.182.17.237) |
| 17:42:12 | → | seven_three joins (~user@pool-96-233-64-53.bstnma.fios.verizon.net) |
| 17:42:24 | → | ephemera__ joins (~E@122.34.1.187) |
| 17:42:25 | × | geekosaur quits (930099da@rrcs-147-0-153-218.central.biz.rr.com) (Quit: Connection closed) |
| 17:42:31 | × | band quits (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) (Ping timeout: 260 seconds) |
| 17:42:40 | → | charukiewicz_ joins (~quassel@irouteince04.i.subnet.rcn.com) |
| 17:42:41 | <seven_three> | is a function partial if it uses `error`? |
| 17:42:45 | <zzz> | ah ok. i was expecting similar performance, being the same algorithm. but i get why it's not |
| 17:42:48 | → | vilarinux joins (~vilarinux@2804:1b3:3080:8d7:d8fb:9884:f9f1:feb1) |
| 17:43:01 | <zzz> | seven_three: i would say so |
| 17:43:17 | → | malthe_ joins (~mborch@46.101.103.63) |
| 17:43:18 | → | falsifia1 joins (~falsifian@exoco.falsifian.org) |
| 17:43:23 | → | bob_twinkles_ joins (~quassel@ec2-52-37-66-13.us-west-2.compute.amazonaws.com) |
| 17:43:29 | → | machined1od joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 17:43:34 | <seven_three> | zzz: ok thanks |
| 17:43:38 | → | SIben_ joins (~SIben@ns3106586.ip-5-135-191.eu) |
| 17:43:57 | → | tms__ joins (thomaav@cassarossa.samfundet.no) |
| 17:43:58 | × | vilarinux quits (~vilarinux@2804:1b3:3080:8d7:d8fb:9884:f9f1:feb1) (Client Quit) |
| 17:44:00 | → | cohn_ joins (~noone@23.239.18.252) |
| 17:44:06 | → | oleks_ joins (~oleks@188.166.34.97) |
| 17:44:10 | → | geekosaur joins (930099da@rrcs-147-0-153-218.central.biz.rr.com) |
| 17:45:31 | → | dsrt^ joins (dsrt@ip98-184-89-2.mc.at.cox.net) |
| 17:47:11 | <fresheyeball> | with a standard Setup.hs |
| 17:47:18 | <fresheyeball> | how can I install one executable? |
| 17:47:22 | <monochrom> | Yes seven_three. |
| 17:47:34 | <fresheyeball> | cabal install myTarget works |
| 17:47:52 | <fresheyeball> | ./Setup install myTarget fails, it' thinks myTarget is suppoed to be a flag |
| 17:47:55 | → | wraithm joins (~wraithm@unaffiliated/wraithm) |
| 17:48:12 | <monochrom> | Right, I think Setup.hs doesn't support this. |
| 17:48:34 | × | heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (*.net *.split) |
| 17:48:34 | × | stree quits (~stree@68.36.8.116) (*.net *.split) |
| 17:48:34 | × | haasn quits (~nand@mpv/developer/haasn) (*.net *.split) |
| 17:48:34 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (*.net *.split) |
| 17:48:34 | × | Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (*.net *.split) |
| 17:48:34 | × | unlink2 quits (~unlink2@p57b8541f.dip0.t-ipconnect.de) (*.net *.split) |
| 17:48:35 | × | machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (*.net *.split) |
| 17:48:36 | × | notzmv quits (~zmv@unaffiliated/zmv) (*.net *.split) |
| 17:48:36 | × | ephemera_ quits (~E@122.34.1.187) (*.net *.split) |
| 17:48:36 | × | glamas quits (~glamas@107.182.17.237) (*.net *.split) |
| 17:48:36 | × | davros quits (~davros@host86-185-126-190.range86-185.btcentralplus.com) (*.net *.split) |
| 17:48:37 | × | ukari quits (~ukari@unaffiliated/ukari) (*.net *.split) |
| 17:48:38 | × | cohn quits (~noone@unaffiliated/cohn) (*.net *.split) |
| 17:48:38 | × | charukiewicz quits (~quassel@irouteince04.i.subnet.rcn.com) (*.net *.split) |
| 17:48:39 | × | MidAutumnHotaru quits (~MidAutumn@unaffiliated/midautumnhotaru) (*.net *.split) |
| 17:48:39 | × | tms_ quits (thomaav@cassarossa.samfundet.no) (*.net *.split) |
| 17:48:39 | × | jrm quits (~jrm@freebsd/developer/jrm) (*.net *.split) |
| 17:48:40 | × | L1Cafe quits (~L1Cafe@kydara.com) (*.net *.split) |
| 17:48:40 | × | dcoutts__ quits (~duncan@94.186.125.91.dyn.plus.net) (*.net *.split) |
| 17:48:40 | × | apoc quits (~apoc@49.12.13.193) (*.net *.split) |
| 17:48:41 | × | malthe quits (~mborch@46.101.103.63) (*.net *.split) |
| 17:48:41 | × | carbolymer quits (~carbolyme@dropacid.net) (*.net *.split) |
| 17:48:41 | × | L29Ah quits (~L29Ah@unaffiliated/l29ah) (*.net *.split) |
| 17:48:42 | × | rann quits (sid175221@gateway/web/irccloud.com/x-jkryvxnehqtlncpj) (*.net *.split) |
| 17:48:42 | × | dmj` quits (sid72307@gateway/web/irccloud.com/x-crrlyvbcezdwisgb) (*.net *.split) |
| 17:48:42 | × | smerdyakov quits (~dan@5.146.195.164) (*.net *.split) |
| 17:48:42 | × | bob_twinkles quits (~quassel@ec2-52-37-66-13.us-west-2.compute.amazonaws.com) (*.net *.split) |
| 17:48:42 | × | amosbird quits (~amosbird@13.75.119.182) (*.net *.split) |
| 17:48:42 | × | xlei quits (znc@unaffiliated/xlei) (*.net *.split) |
| 17:48:43 | × | haya quits (~haya@ec2-18-231-117-140.sa-east-1.compute.amazonaws.com) (*.net *.split) |
| 17:48:43 | × | oleks quits (~oleks@188.166.34.97) (*.net *.split) |
| 17:48:43 | × | wraithm_ quits (~wraithm@unaffiliated/wraithm) (*.net *.split) |
| 17:48:43 | × | texasmynsted quits (~texasmyns@99.96.221.112) (*.net *.split) |
| 17:48:43 | × | dminuoso_ quits (~dminuoso@static.88-198-218-68.clients.your-server.de) (*.net *.split) |
| 17:48:43 | × | falsifian quits (~falsifian@exoco.falsifian.org) (*.net *.split) |
| 17:48:43 | × | SIben quits (~SIben@ns3106586.ip-5-135-191.eu) (*.net *.split) |
| 17:48:44 | × | Khisanth quits (~Khisanth@11.sub-174-244-147.myvzw.com) (*.net *.split) |
| 17:48:44 | carbolymer_ | is now known as carbolymer |
| 17:48:45 | jrm2 | is now known as jrm |
| 17:48:45 | L1Cafe9 | is now known as L1Cafe |
| 17:48:45 | haasn` | is now known as haasn |
| 17:48:45 | dmj`_ | is now known as dmj` |
| 17:48:45 | rann_ | is now known as rann |
| 17:48:46 | MidAutumnHotaru7 | is now known as MidAutumnHotaru |
| 17:48:49 | smerdyakov3 | is now known as smerdyakov |
| 17:48:50 | → | xlei joins (znc@unaffiliated/xlei) |
| 17:48:56 | → | conal joins (~conal@64.71.133.70) |
| 17:48:57 | haya0 | is now known as haya |
| 17:48:57 | <fresheyeball> | monochrom: how does it know where to install to? |
| 17:49:05 | <fresheyeball> | https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/haskell-modules/generic-builder.nix#L467 |
| 17:49:09 | <monochrom> | How about "Setup build"? Does it accept targets? |
| 17:49:11 | <fresheyeball> | I am trying to make this work for a single exe |
| 17:49:20 | <fresheyeball> | monochrom: yes it does |
| 17:49:34 | <monochrom> | Then perhaps that's what you need. |
| 17:49:38 | → | heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 17:49:51 | <fresheyeball> | well I still need the exe copied over |
| 17:50:19 | <monochrom> | "Setup install" won't build anything. |
| 17:50:30 | × | Inexes quits (5534d86f@111.pool85-52-216.static.orange.es) (Quit: Connection closed) |
| 17:50:36 | <fresheyeball> | monochrom: I know, but currenlty it's copying the right spot atleast |
| 17:50:41 | × | gawen_ quits (~gawen@163.172.122.128) (Ping timeout: 240 seconds) |
| 17:50:41 | <fresheyeball> | I just need to know how it knows |
| 17:50:44 | <fresheyeball> | env var? |
| 17:50:59 | <monochrom> | "Setup configure --prefix foo". |
| 17:51:12 | → | gawen joins (~gawen@movzbl.root.sx) |
| 17:51:17 | <monochrom> | If you don't have "--prefix=foo", there are defaults |
| 17:52:17 | <fresheyeball> | monochrom: ok --prefix, got it |
| 17:53:14 | <monochrom> | I still don't understand how "what is built, what is skipped" is related to "where to install to". |
| 17:53:26 | × | ashesham` quits (~user@d8D87D1B0.access.telenet.be) (Ping timeout: 240 seconds) |
| 17:53:47 | <fresheyeball> | monochrom: if I run ./Setup build myTarget |
| 17:53:51 | <fresheyeball> | and then ./Setup install |
| 17:54:03 | <fresheyeball> | it fails because the other targets are not built |
| 17:54:13 | <Zemyla> | Is there a way to compile GHC to DJGPP so we can have DOS Haskell programs? |
| 17:54:23 | × | wroathe_ quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: leaving) |
| 17:54:39 | <monochrom> | Ah OK. Does "Setup copy" exist? Maybe it is less strict about this. |
| 17:54:39 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 17:55:03 | → | stree joins (~stree@68.36.8.116) |
| 17:55:04 | → | Khisanth joins (~Khisanth@11.sub-174-244-147.myvzw.com) |
| 17:55:21 | → | davros joins (~davros@host86-185-126-190.range86-185.btcentralplus.com) |
| 17:55:22 | <monochrom> | But Setup has a very different use case in mind. Basically for linux distro people, not developers. |
| 17:55:36 | <monochrom> | neither developers nor users. |
| 17:56:20 | → | apoc joins (~apoc@49.12.13.193) |
| 17:57:13 | <fresheyeball> | it does exist, no idea what it does though |
| 17:58:01 | <monochrom> | If you go configure->build->haddock->copy, basically you never need install. |
| 17:58:18 | <geekosaur> | Zemyla, non-release builds of ghc can target ANSI C, then take it to the target platform and compile. but it'll be slow |
| 17:58:23 | <monochrom> | Yes that was the workflow of a previous life. |
| 17:58:33 | <fresheyeball> | monochrom: what does the copy command look like? |
| 17:58:44 | <monochrom> | "./Setup copy" |
| 17:58:59 | <fresheyeball> | I mean can I do "./Setup copy mytarget" ? |
| 17:59:15 | <monochrom> | You know that "./Setup foo --help" is a thing, right? For foo in configure, build, etc etc |
| 17:59:55 | <geekosaur> | "unregisterised builds" |
| 18:00:28 | <geekosaur> | (ghc itself hasn't targeted C since 6.12 or thenabouts) |
| 18:02:46 | <Zemyla> | What is the oldest version of GHC that can compile current GHC? |
| 18:03:19 | <geekosaur> | 2 versions back |
| 18:04:11 | → | alx741 joins (~alx741@186.178.109.231) |
| 18:04:23 | → | solidus-river joins (~mike@174.127.249.180) |
| 18:04:41 | <monochrom> | And it is still possible that you can build but you can't use the build production. |
| 18:04:46 | <monochrom> | s/production/product/ |
| 18:04:47 | <geekosaur> | so if you want 8.10.4 the oldest ghc that can build it is 8.6.5 |
| 18:05:14 | <monochrom> | If a GHC exe doesn't support -fvia-C then it doesn't. It doesn't matter who built it. |
| 18:05:33 | <geekosaur> | I think you will have problems getting ghc onto DOS in any way |
| 18:05:36 | <solidus-river> | hey all, i'm getting a cryptic error from stack that i don't understand. I've read the available docs and bug reports and they all seem old and i can't understand the answers. I'm building a app that has one executable and a test suite using hspec |
| 18:05:44 | <solidus-river> | when i try to see coverage it says no code is considered |
| 18:06:21 | <monochrom> | Well, it is 32-bit extended DOS since DJGPP is brought up. |
| 18:06:27 | × | LKoen quits (~LKoen@11.160.9.109.rev.sfr.net) (Remote host closed the connection) |
| 18:06:42 | <monochrom> | Oh right, the RTS doesn't know DOS syscalls. Nevermind. |
| 18:06:54 | <monochrom> | Or DJGPP syscalls for that matter. |
| 18:07:48 | <monochrom> | It doesn't even know how to ask the OS for memory. (Answer: "don't worry about that" >:) ) |
| 18:08:18 | <monochrom> | Once again your best bet is with Hugs. |
| 18:08:41 | <monochrom> | This is becoming a trend. Everyday, some problem can be easily solved by going Hugs. |
| 18:09:20 | <geekosaur> | …provided it's compatible, since it's barely maintained these days |
| 18:09:24 | monochrom | hugs Hugs |
| 18:09:57 | <monochrom> | Yes I imagine whether GHC or Hugs, you will have to hack on them first. But much easier in the case of Hugs. |
| 18:11:12 | <monochrom> | Is there a javascript-capable web browser on DOS? You would go GHCJS... |
| 18:11:13 | → | LKoen joins (~LKoen@11.160.9.109.rev.sfr.net) |
| 18:11:23 | <monochrom> | s/would/could/ |
| 18:12:07 | → | band joins (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) |
| 18:12:13 | → | mcglk joins (~textual@131.191.49.120) |
| 18:12:23 | × | frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 246 seconds) |
| 18:12:30 | × | nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 265 seconds) |
| 18:15:24 | × | geekosaur quits (930099da@rrcs-147-0-153-218.central.biz.rr.com) (Quit: Connection closed) |
| 18:15:52 | × | rajivr quits (uid269651@gateway/web/irccloud.com/x-poljwzteeqldftix) (Quit: Connection closed for inactivity) |
| 18:16:23 | → | geekosaur joins (930099da@rrcs-147-0-153-218.central.biz.rr.com) |
| 18:16:26 | × | star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Ping timeout: 240 seconds) |
| 18:16:41 | × | band quits (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) (Ping timeout: 240 seconds) |
| 18:17:08 | → | pthariensflame joins (~pthariens@2600:6c52:727f:4200:f91c:1561:8a9d:5bd1) |
| 18:17:22 | × | philderbeast quits (~textual@bras-base-vldvpq5901w-grc-06-184-144-244-252.dsl.bell.ca) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 18:17:28 | × | pthariensflame quits (~pthariens@2600:6c52:727f:4200:f91c:1561:8a9d:5bd1) (Client Quit) |
| 18:19:36 | → | star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) |
| 18:20:54 | → | redmp joins (~redmp@172.58.22.204) |
| 18:21:24 | × | falsifia1 quits (~falsifian@exoco.falsifian.org) (Quit: leaving) |
| 18:21:44 | × | hypercube quits (hypercube@gateway/vpn/protonvpn/hypercube) (Quit: WeeChat 3.1) |
| 18:21:44 | → | band joins (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) |
| 18:22:19 | × | bitmapper quits (uid464869@gateway/web/irccloud.com/x-ggwmryvnqwlsouwu) (Quit: Connection closed for inactivity) |
| 18:22:35 | → | falsifian joins (~falsifian@exoco.falsifian.org) |
| 18:24:07 | → | kiweun joins (~kiweun@2607:fea8:2a62:9600:64af:faf0:9188:52bf) |
| 18:26:07 | × | band quits (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) (Ping timeout: 252 seconds) |
| 18:27:20 | → | epicte7us joins (~epictetus@ip72-194-54-201.sb.sd.cox.net) |
| 18:30:19 | × | ep1ctetus quits (~epictetus@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 252 seconds) |
| 18:30:56 | → | invaser joins (~Thunderbi@31.148.23.125) |
| 18:31:17 | <invaser> | Hi guys! Is there a way to do the thing on screenshot without writing the expression twice? https://i.imgur.com/wGPuDio.png |
| 18:31:51 | <invaser> | The only way I see now is to make a boolean function that will return true on pattern-matches with App and Lam |
| 18:32:48 | <invaser> | And if I understand correctly, with pattern guards I can only match several patterns separated by comma, and it essentialy works as && while I need || |
| 18:33:35 | → | jijimofo joins (~cmo@S010610561191f5d6.lb.shawcable.net) |
| 18:36:14 | <monochrom> | showP ctx t | theBooleanFunction t = |
| 18:36:57 | <monochrom> | In this particular case, there is one more factoring you can do. |
| 18:37:25 | → | minoru_shiraeesh joins (~shiraeesh@46.34.207.53) |
| 18:37:27 | <monochrom> | parenthesize :: Bool -> String -> String |
| 18:37:28 | <solidus-river> | or showP ctx t; | (x _ _) <- t, t `elem` [Lam, App] = blah |
| 18:37:43 | → | remby joins (~remby@bras-base-london1483w-grc-43-65-95-173-128.dsl.bell.ca) |
| 18:37:45 | <monochrom> | parenthesize True s = "(" ++ s ++ ")"; parenthesize False s = s |
| 18:38:25 | <monochrom> | showP ctx t = parenthesize (theBooleanFunction t) (show' ctx t) |
| 18:38:56 | <monochrom> | No, solidus-river, there is no "(x _ _)" pattern. |
| 18:39:43 | <invaser> | yeah, I also don't think that (x _ _) is possible |
| 18:40:11 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 18:41:13 | <invaser> | thanks for the suggestion with parenthesize, didn't know it exists |
| 18:41:28 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:41:45 | <invaser> | but with the new boolean function, I don't know. Seems to me that it won't make code easier to read in this case |
| 18:42:08 | <monochrom> | s/theBooleanFunction/lamOrApp/ |
| 18:42:20 | <invaser> | yeah, I got it |
| 18:42:24 | <monochrom> | in which the only unreadability is due to the camel case religion |
| 18:42:25 | × | darjeeling_ quits (~darjeelin@122.245.209.158) (Ping timeout: 260 seconds) |
| 18:42:35 | × | ezzieyguywuf quits (~Unknown@unaffiliated/ezzieyguywuf) (Read error: No route to host) |
| 18:42:36 | <monochrom> | Yes that's right it's a religion. |
| 18:42:43 | <monochrom> | lam_or_app is more readable. |
| 18:43:06 | → | ezzieyguywuf joins (~Unknown@unaffiliated/ezzieyguywuf) |
| 18:43:07 | <invaser> | I mean, that introducing a new function only for it to be used one time seems like an overkill |
| 18:43:21 | <monochrom> | Make it a local function. |
| 18:44:18 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 18:45:55 | → | band joins (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) |
| 18:46:00 | <band> | quit |
| 18:46:04 | × | band quits (~band@104-57-176-102.lightspeed.austtx.sbcglobal.net) (Client Quit) |
| 18:47:28 | × | Sorna quits (~Sornaensi@077213200034.dynamic.telenor.dk) (Ping timeout: 268 seconds) |
| 18:49:43 | × | minoru_shiraeesh quits (~shiraeesh@46.34.207.53) (Ping timeout: 265 seconds) |
| 18:50:15 | × | Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection) |
| 18:53:27 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:d5ef:86b3:afc4:9258) |
| 18:56:50 | → | darjeeling_ joins (~darjeelin@122.245.216.145) |
| 19:00:17 | → | minoru_shiraeesh joins (~shiraeesh@46.34.207.53) |
| 19:02:58 | → | electricityZZZZ joins (~electrici@135-180-3-82.static.sonic.net) |
| 19:05:32 | <dmj`> | quit |
| 19:06:05 | ← | jakalx parts (~jakalx@base.jakalx.net) ("Error from remote client") |
| 19:06:06 | <geekosaur> | nope |
| 19:06:48 | × | fendor quits (~fendor@178.165.129.61.wireless.dyn.drei.com) (Remote host closed the connection) |
| 19:08:15 | → | fendor joins (~fendor@178.165.129.61.wireless.dyn.drei.com) |
| 19:09:46 | → | forgottenone joins (~forgotten@176.42.21.81) |
| 19:10:31 | <maerwald> | please stay |
| 19:11:55 | × | ClaudiusMaximus quits (~claude@unaffiliated/claudiusmaximus) (Quit: ->) |
| 19:13:19 | <dmj`> | okay |
| 19:15:37 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 19:15:45 | → | pavonia joins (~user@unaffiliated/siracusa) |
| 19:17:32 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 240 seconds) |
| 19:23:05 | × | elfets_ quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 246 seconds) |
| 19:23:48 | × | DavidEichmann quits (~david@147.136.46.217.dyn.plus.net) (Remote host closed the connection) |
| 19:24:52 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 19:26:31 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 19:26:44 | → | __minoru__shirae joins (~shiraeesh@46.34.206.15) |
| 19:27:11 | × | minoru_shiraeesh quits (~shiraeesh@46.34.207.53) (Ping timeout: 240 seconds) |
| 19:27:17 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 19:27:53 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
| 19:29:28 | → | ep1ctetus_ joins (~epictetus@ip72-194-54-201.sb.sd.cox.net) |
| 19:30:56 | → | geowiesnot joins (~user@87-89-181-157.abo.bbox.fr) |
| 19:31:46 | × | jijimofo quits (~cmo@S010610561191f5d6.lb.shawcable.net) (Remote host closed the connection) |
| 19:32:17 | × | epicte7us quits (~epictetus@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 252 seconds) |
| 19:33:17 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 19:36:58 | → | redmp_ joins (~redmp@172.58.22.224) |
| 19:37:39 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 19:37:58 | × | Kaivo quits (~Kaivo@104-200-86-99.mc.derytele.com) (Ping timeout: 260 seconds) |
| 19:38:10 | → | jneira joins (501e65b6@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.182) |
| 19:38:25 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds) |
| 19:39:26 | → | epicte7us joins (~epictetus@ip72-194-54-201.sb.sd.cox.net) |
| 19:39:46 | × | redmp quits (~redmp@172.58.22.204) (Ping timeout: 240 seconds) |
| 19:40:48 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 19:41:03 | → | kenanmarasli joins (1fdf0934@31.223.9.52) |
| 19:42:01 | × | invaser quits (~Thunderbi@31.148.23.125) (Ping timeout: 252 seconds) |
| 19:42:33 | × | ep1ctetus_ quits (~epictetus@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 252 seconds) |
| 19:42:56 | ← | Wo[m] parts (lykos-2021@gateway/shell/matrix.org/x-tfamvfkpyyipdlgr) ("User left") |
| 19:44:23 | <kenanmarasli> | What's the proper way to use a list comprehension with record types? I want to apply some changes on a specific field of a record with a function that takes an array of these records: |
| 19:44:24 | <kenanmarasli> | https://paste.tomsmeding.com/vHebaVIs |
| 19:44:34 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 19:44:49 | × | tsaka_ quits (~torstein@athedsl-4519432.home.otenet.gr) (Ping timeout: 265 seconds) |
| 19:46:13 | <c_wraith> | you're combining record update syntax with non-record syntax in a syntactically invalid way. |
| 19:47:29 | <c_wraith> | You should pick one or the other. In this case, since you're really close to the non-record syntax: https://paste.tomsmeding.com/kbhOlxIa |
| 19:47:59 | <c_wraith> | that's a fine way to do things. You can access constructor fields positionally, even with records |
| 19:48:28 | <kenanmarasli> | OH, you are right! Why did I put those curly braces there!? |
| 19:48:53 | <c_wraith> | With record update syntax, it'd look like this: https://paste.tomsmeding.com/Ep1EO360 |
| 19:49:31 | <kenanmarasli> | Thank you c_wraith. It's all clear to me now |
| 19:49:41 | <c_wraith> | you're welcome. == |
| 19:49:58 | <c_wraith> | (ok, those equals signs were a typo and probably a sign I need lunch) |
| 19:50:11 | → | notzmv joins (~zmv@unaffiliated/zmv) |
| 19:50:41 | <lovesegfault> | I'm trying to write a function aliquotSum :: Int -> Int, and I did this: aliquotSum = \n -> sum . filter (\i -> n `mod` i == 0) . [1..(n / 2 + 1)] |
| 19:51:05 | <lovesegfault> | but I'm now in typecheck hell, can't really understand why :/ |
| 19:51:26 | <Rembane> | lovesegfault: What does the typechecker say? |
| 19:51:41 | <lovesegfault> | • Couldn't match expected type ‘Int’ with actual type ‘a0 -> Int’ |
| 19:52:06 | × | aveltras quits (uid364989@gateway/web/irccloud.com/x-cudhvvtoyvyrmfsp) (Ping timeout: 258 seconds) |
| 19:52:09 | <lovesegfault> | applying both to the whole function, and then I get the same error but just regarding [1..(n / 2 + 1)] |
| 19:52:23 | × | wpcarro_ quits (sid397589@gateway/web/irccloud.com/x-sldapopyxsudveqd) (Ping timeout: 260 seconds) |
| 19:52:23 | × | natim87 quits (sid286962@gateway/web/irccloud.com/x-zjxraovaekqnvloq) (Ping timeout: 260 seconds) |
| 19:52:23 | × | joshmeredith quits (sid387798@gateway/web/irccloud.com/x-uxsrlglojomperah) (Ping timeout: 260 seconds) |
| 19:52:35 | <Rembane> | lovesegfault: Remove the dot before the list |
| 19:52:37 | × | Synthetica quits (uid199651@gateway/web/irccloud.com/x-ycrvxeagazjstjgn) (Ping timeout: 250 seconds) |
| 19:52:41 | × | totbwf quits (sid402332@gateway/web/irccloud.com/x-jgucijbluktlkqeh) (Read error: Connection reset by peer) |
| 19:52:43 | × | ebutleriv quits (sid217783@gateway/web/irccloud.com/x-kcykiaawmgqipkin) (Read error: Connection reset by peer) |
| 19:52:44 | × | systemfault quits (sid267009@gateway/web/irccloud.com/x-vjyxibauadwbmonn) (Read error: Connection reset by peer) |
| 19:52:45 | × | cemerick quits (sid54985@gateway/web/irccloud.com/x-kwtgvqjjvamnvimg) (Read error: Connection reset by peer) |
| 19:52:46 | × | eruditass quits (uid248673@gateway/web/irccloud.com/x-rmgyvfwfwnnqqsta) (Read error: Connection reset by peer) |
| 19:52:46 | × | jared-w quits (uid405292@gateway/web/irccloud.com/x-keywjzriwtlueymw) (Ping timeout: 240 seconds) |
| 19:52:46 | × | d0liver quits (sid363046@gateway/web/irccloud.com/x-bijzbspzjskqwcir) (Read error: Connection reset by peer) |
| 19:52:48 | × | benwr____ quits (sid372383@gateway/web/irccloud.com/x-ynyqxqvppapkphki) (Ping timeout: 246 seconds) |
| 19:52:51 | × | liquorice quits (sid267884@gateway/web/irccloud.com/x-gifxlxspxpkuruyr) (Read error: Connection reset by peer) |
| 19:52:51 | × | ryjm quits (sid383513@gateway/web/irccloud.com/x-xahyphcnhjupdxdl) (Read error: Connection reset by peer) |
| 19:52:51 | × | luite quits (sid387799@gateway/web/irccloud.com/x-xdgiulydxgunnqir) (Read error: Connection reset by peer) |
| 19:52:51 | × | ReinH quits (sid179972@gateway/web/irccloud.com/x-yfquzpeultndckwv) (Read error: Connection reset by peer) |
| 19:52:51 | × | alanz quits (sid110616@gateway/web/irccloud.com/x-qjhghsxjfupjbdeb) (Read error: Connection reset by peer) |
| 19:52:51 | × | b20n quits (sid115913@gateway/web/irccloud.com/x-fxwwqjclpbrawyzj) (Read error: Connection reset by peer) |
| 19:52:51 | × | davetapley quits (sid666@gateway/web/irccloud.com/x-ohjwsogbmepwkutt) (Read error: Connection reset by peer) |
| 19:52:51 | × | bradparker quits (sid262931@gateway/web/irccloud.com/x-usqfoiaovgpgwnbj) (Read error: Connection reset by peer) |
| 19:52:51 | × | SrPx quits (sid108780@gateway/web/irccloud.com/x-fmknnxofuaimdify) (Read error: Connection reset by peer) |
| 19:52:51 | × | sz0 quits (uid110435@gateway/web/irccloud.com/x-zwmbhzhzwgqqzplk) (Read error: Connection reset by peer) |
| 19:53:03 | × | AndreasK quits (sid320732@gateway/web/irccloud.com/x-gcnznttjjbhixeuo) (Read error: Connection reset by peer) |
| 19:53:19 | × | aristid quits (sid1599@gateway/web/irccloud.com/x-xoxalrdohmfrqftu) (Ping timeout: 260 seconds) |
| 19:53:22 | <Rembane> | lovesegfault: You can replace it with a $ if you want to, otherwise you need parentheses |
| 19:53:48 | × | lally quits (sid388228@gateway/web/irccloud.com/x-jtlutemywqmachbj) (Ping timeout: 260 seconds) |
| 19:53:50 | <lovesegfault> | Ah :D |
| 19:53:52 | × | remby quits (~remby@bras-base-london1483w-grc-43-65-95-173-128.dsl.bell.ca) (Quit: Going offline, see ya! (www.adiirc.com)) |
| 19:54:56 | <c_wraith> | You will still have a problem, though. |
| 19:55:09 | <c_wraith> | > 4 / 2 :: Int |
| 19:55:10 | <lambdabot> | error: |
| 19:55:11 | <lambdabot> | • No instance for (Fractional Int) arising from a use of ‘/’ |
| 19:55:12 | <lambdabot> | • In the expression: 4 / 2 :: Int |
| 19:55:25 | <Rembane> | lovesegfault: And you can put the argument to the function before the equal sign. Like this: aliquotSum n = ... |
| 19:55:27 | <lovesegfault> | I did n `div` 2 |
| 19:55:40 | <lovesegfault> | Rembane: Ah, that is way nicer :D |
| 19:56:03 | × | etrepum quits (sid763@gateway/web/irccloud.com/x-uvgwvvfyhdnxohap) (Ping timeout: 248 seconds) |
| 19:56:23 | <Rembane> | lovesegfault: Good! ^^ |
| 19:56:27 | <lovesegfault> | what do I do if I want to bind a value to a name locally to a function? like `let limit = (n `div` 2) + 1` |
| 19:56:36 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Quit: Leaving) |
| 19:56:52 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 19:56:59 | <Rembane> | lovesegfault: f = let limit = (...) in {- the more exciting expression -} |
| 19:57:11 | <lovesegfault> | Oh, perfection |
| 19:57:29 | → | natim87 joins (sid286962@gateway/web/irccloud.com/x-ozyrmmcfkllsqxsu) |
| 19:57:31 | → | AndreasK joins (sid320732@gateway/web/irccloud.com/x-spqgtdrtcwqozgos) |
| 19:57:34 | → | totbwf joins (sid402332@gateway/web/irccloud.com/x-evcibzlipwnkayzd) |
| 19:57:35 | → | aveltras joins (uid364989@gateway/web/irccloud.com/x-eamssxdveirheeam) |
| 19:57:43 | → | Synthetica joins (uid199651@gateway/web/irccloud.com/x-pljewtuwfmzflrit) |
| 19:57:50 | → | benwr____ joins (sid372383@gateway/web/irccloud.com/x-mijbqpsjqwboudpc) |
| 19:57:53 | → | luite joins (sid387799@gateway/web/irccloud.com/x-jstlojjciwjquony) |
| 19:57:54 | × | coot quits (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 19:58:05 | → | lally joins (sid388228@gateway/web/irccloud.com/x-ilucbequfappbwaf) |
| 19:58:07 | <Rembane> | lovesegfault: Another version is to use a where-expression. f = {- the more exciting expression -} where f = (...) |
| 19:58:12 | → | liquorice joins (sid267884@gateway/web/irccloud.com/x-nzkqxgdtfgechhzd) |
| 19:58:13 | → | alanz joins (sid110616@gateway/web/irccloud.com/x-zzsuvrgaohwilheu) |
| 19:58:14 | → | joshmeredith joins (sid387798@gateway/web/irccloud.com/x-puyeogwrdolrmxnl) |
| 19:58:14 | → | systemfault joins (sid267009@gateway/web/irccloud.com/x-weqjiwsrsizmsttb) |
| 19:58:14 | → | ebutleriv joins (sid217783@gateway/web/irccloud.com/x-kdwwbglqjsasvtqj) |
| 19:58:16 | → | cemerick joins (sid54985@gateway/web/irccloud.com/x-dmosxtcpbaaxlpbx) |
| 19:58:20 | → | ryjm joins (sid383513@gateway/web/irccloud.com/x-mfvpahefkuhsmhxj) |
| 19:58:22 | → | Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362) |
| 19:58:24 | → | d0liver joins (sid363046@gateway/web/irccloud.com/x-nemzonvlsnfdjkyk) |
| 19:58:25 | → | aristid joins (sid1599@gateway/web/irccloud.com/x-iysthznfdzhconze) |
| 19:58:27 | → | davetapley joins (sid666@gateway/web/irccloud.com/x-zjajcgkktmcxzflu) |
| 19:58:29 | → | ReinH joins (sid179972@gateway/web/irccloud.com/x-yupwkseagmcsclao) |
| 19:58:29 | → | b20n joins (sid115913@gateway/web/irccloud.com/x-wvurqfbcjkkidela) |
| 19:58:37 | → | jared-w joins (uid405292@gateway/web/irccloud.com/x-qitlcehrrgjsxmby) |
| 19:58:41 | → | wpcarro_ joins (sid397589@gateway/web/irccloud.com/x-ahewuhnoiijbwpmc) |
| 19:58:52 | → | etrepum joins (sid763@gateway/web/irccloud.com/x-kbeiueugazaifuth) |
| 19:58:56 | → | SrPx joins (sid108780@gateway/web/irccloud.com/x-yhksykcahzlylxhe) |
| 19:59:02 | × | Aquazi quits (uid312403@gateway/web/irccloud.com/x-osbdsklzblynzobo) (Quit: Connection closed for inactivity) |
| 19:59:04 | → | eruditass joins (uid248673@gateway/web/irccloud.com/x-xevwmrtrjszgvhcb) |
| 19:59:06 | → | sz0 joins (uid110435@gateway/web/irccloud.com/x-cbtqvvpmzwwkflbr) |
| 19:59:22 | <lovesegfault> | is the only difference that one comes before and the other after? |
| 19:59:25 | → | bradparker joins (sid262931@gateway/web/irccloud.com/x-ipktkzcrditobyzs) |
| 19:59:45 | <lovesegfault> | Another Q: In Rust, I can perform a match on std::cmp::Ordering like this: https://github.com/lovesegfault/exercism/blob/5a7f942130c82e60025d9a8787fb7eae8efd0c0e/rust/perfect-numbers/src/lib.rs#L18-L22 |
| 20:00:00 | <lovesegfault> | I know in Haskell a match is called case, but does a similar Ordering enum exist? |
| 20:00:16 | <monochrom> | case xxx of { EQ -> ... ; GT -> ... ; LT -> ... } |
| 20:00:25 | <monochrom> | can also use layout to replace {;} |
| 20:00:45 | <lovesegfault> | Oh, are EQ,GT,LT just in the prelude? |
| 20:00:50 | → | usr25 joins (~usr25@unaffiliated/usr25) |
| 20:01:10 | <tomsmeding> | :t EQ |
| 20:01:13 | <lambdabot> | Ordering |
| 20:01:22 | × | Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 260 seconds) |
| 20:01:22 | Lord_of_Life_ | is now known as Lord_of_Life |
| 20:01:25 | <c_wraith> | @src Ordering |
| 20:01:25 | <lambdabot> | data Ordering = LT | EQ | GT |
| 20:01:27 | <tomsmeding> | :t compare |
| 20:01:28 | <lambdabot> | Ord a => a -> a -> Ordering |
| 20:02:14 | <monochrom> | I use "compare" in binary search tree algorithms. |
| 20:02:21 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 20:03:20 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 268 seconds) |
| 20:05:12 | × | petersen quits (~petersen@redhat/juhp) (Ping timeout: 240 seconds) |
| 20:07:13 | → | petersen joins (~petersen@redhat/juhp) |
| 20:07:55 | <lovesegfault> | Okay, I got it :D |
| 20:07:56 | <lovesegfault> | https://github.com/lovesegfault/exercism/blob/main/haskell/perfect-numbers/src/PerfectNumbers.hs |
| 20:08:05 | × | redmp_ quits (~redmp@172.58.22.224) (Quit: reboot) |
| 20:08:12 | <lovesegfault> | any feedback or ways I can improve? |
| 20:08:35 | <lovesegfault> | side-note: I really like how "Just" reads in code "Just Perfect", "Just Deficient", lol |
| 20:09:20 | → | redmp joins (~redmp@172.58.19.67) |
| 20:10:40 | <tomsmeding> | % let number = 42 in if even number then print "yes" else print "no" |
| 20:10:40 | <yahb> | tomsmeding: "yes" |
| 20:10:47 | <tomsmeding> | almost readable |
| 20:11:11 | × | forgottenone quits (~forgotten@176.42.21.81) (Quit: Konversation terminated!) |
| 20:11:24 | <geekosaur> | an = id -- :p |
| 20:12:35 | → | nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 20:13:39 | <tomsmeding> | % let is = flip id ; the = id |
| 20:13:39 | <yahb> | tomsmeding: |
| 20:13:50 | <tomsmeding> | % let number = 42 in if the number `is` even then print "yes" else print "no" |
| 20:13:50 | <yahb> | tomsmeding: "yes" |
| 20:16:08 | → | stree joins (~stree@68.36.8.116) |
| 20:18:22 | → | pfurla_ joins (~pfurla@ool-182ed2e2.dyn.optonline.net) |
| 20:18:27 | × | jess quits (jess@freenode/staff/jess) () |
| 20:18:35 | × | puke quits (~vroom@217.138.252.184) (Quit: puke) |
| 20:18:40 | → | jess joins (jess@freenode/staff/jess) |
| 20:20:53 | × | pfurla quits (~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 260 seconds) |
| 20:21:11 | × | gnumonic quits (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
| 20:21:33 | → | xcmw joins (~textual@dyn-72-33-2-152.uwnet.wisc.edu) |
| 20:23:32 | × | alanz quits (sid110616@gateway/web/irccloud.com/x-zzsuvrgaohwilheu) (Ping timeout: 258 seconds) |
| 20:26:08 | → | alanz joins (sid110616@gateway/web/irccloud.com/x-wrkjabizodqmlyrt) |
| 20:26:45 | × | sm quits (~user@li229-222.members.linode.com) (Remote host closed the connection) |
| 20:30:31 | × | kupi quits (uid212005@gateway/web/irccloud.com/x-wwoexcijnelowmiu) (Quit: Connection closed for inactivity) |
| 20:31:31 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
| 20:32:08 | → | safinaskar joins (~user@109.252.90.136) |
| 20:32:09 | <safinaskar> | hi |
| 20:32:54 | <Rembane> | Hi! |
| 20:33:27 | × | nineonine quits (~nineonine@50.216.62.2) (Remote host closed the connection) |
| 20:33:52 | <safinaskar> | is there some way to embed tests to my sources? something like this: https://paste.debian.net/1194756/ ? |
| 20:34:00 | → | nineonine joins (~nineonine@50.216.62.2) |
| 20:34:49 | × | geowiesnot quits (~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 252 seconds) |
| 20:37:36 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 20:38:39 | → | cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net) |
| 20:39:43 | <geekosaur> | @hackage cabal-doctest |
| 20:39:43 | <lambdabot> | https://hackage.haskell.org/package/cabal-doctest |
| 20:40:24 | → | ep1ctetus_ joins (~epictetus@ip72-194-54-201.sb.sd.cox.net) |
| 20:42:03 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Quit: Leaving) |
| 20:42:11 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 20:42:28 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 20:42:46 | <geekosaur> | and http://hackage.haskell.org/package/doctest is the actual tests, as opposed to how to run them |
| 20:42:56 | → | ep1ctetus joins (~epictetus@ip72-194-54-201.sb.sd.cox.net) |
| 20:44:01 | → | puke joins (~vroom@217.138.252.56) |
| 20:44:02 | × | epicte7us quits (~epictetus@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 268 seconds) |
| 20:45:03 | pierrot | is now known as canopus |
| 20:45:12 | × | ep1ctetus_ quits (~epictetus@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 240 seconds) |
| 20:45:12 | canopus | is now known as pierrot |
| 20:49:37 | <safinaskar> | geekosaur: thanks |
| 20:50:27 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 20:50:43 | × | danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 260 seconds) |
| 20:51:01 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 20:52:32 | × | nek0 quits (~nek0@mail.nek0.eu) (Remote host closed the connection) |
| 20:52:41 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 20:53:52 | → | elliott_ joins (~elliott@pool-108-18-30-46.washdc.fios.verizon.net) |
| 20:55:27 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye) |
| 20:56:10 | → | nek0 joins (~nek0@mail.nek0.eu) |
| 20:57:25 | × | kenanmarasli quits (1fdf0934@31.223.9.52) (Quit: Connection closed) |
| 20:57:32 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 21:04:16 | → | pthariensflame joins (~pthariens@2600:6c52:727f:4200:d1a2:91f7:7953:5009) |
| 21:04:21 | × | Kaiepi quits (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
| 21:04:51 | → | Kaiepi joins (~Kaiepi@47.54.252.148) |
| 21:05:16 | × | knupfer quits (~Thunderbi@200116b82b4d2f00a98dd2f64b7ff0a2.dip.versatel-1u1.de) (Ping timeout: 276 seconds) |
| 21:05:22 | × | pthariensflame quits (~pthariens@2600:6c52:727f:4200:d1a2:91f7:7953:5009) (Client Quit) |
| 21:07:26 | × | elliott_ quits (~elliott@pool-108-18-30-46.washdc.fios.verizon.net) (Quit: WeeChat 3.1) |
| 21:09:41 | → | elliott_ joins (~elliott@pool-108-18-30-46.washdc.fios.verizon.net) |
| 21:12:27 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 21:13:16 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 21:13:51 | × | alx741 quits (~alx741@186.178.109.231) (Quit: alx741) |
| 21:15:09 | × | mikoto-chan quits (~anass@gateway/tor-sasl/mikoto-chan) (Ping timeout: 240 seconds) |
| 21:15:54 | → | alx741 joins (~alx741@186.178.109.231) |
| 21:18:33 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds) |
| 21:21:58 | × | hyperisco quits (~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 265 seconds) |
| 21:24:15 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 21:26:50 | × | Pickchea quits (~private@unaffiliated/pickchea) (Quit: Leaving) |
| 21:27:03 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 21:27:39 | → | geowiesnot joins (~user@87-89-181-157.abo.bbox.fr) |
| 21:28:17 | → | codygman__ joins (~user@47.186.207.161) |
| 21:28:32 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds) |
| 21:31:55 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 276 seconds) |
| 21:39:43 | × | geowiesnot quits (~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 252 seconds) |
| 21:41:06 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 260 seconds) |
| 21:41:38 | → | hypercube joins (hypercube@gateway/vpn/protonvpn/hypercube) |
| 21:42:02 | × | fresheyeball quits (~isaac@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9) |
| 21:42:17 | × | Ariakenom quits (~Ariakenom@2001:9b1:efb:fc00:4447:2758:9838:e84a) (Quit: Leaving) |
| 21:43:39 | → | hexfive joins (~hexfive@50.35.83.177) |
| 21:46:12 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 21:46:30 | ← | safinaskar parts (~user@109.252.90.136) () |
| 21:49:39 | × | LKoen quits (~LKoen@11.160.9.109.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”) |
| 21:50:43 | × | cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving) |
| 21:51:27 | <sm[m]> | You can also use ordinary hunit tests in the same file |
| 21:57:02 | → | DavidEichmann joins (~david@147.136.46.217.dyn.plus.net) |
| 22:01:21 | → | bor0 joins (~boro@unaffiliated/boro/x-000000001) |
| 22:02:01 | → | Rudd0 joins (~Rudd0@185.189.115.108) |
| 22:03:07 | × | solidus-river quits (~mike@174.127.249.180) (Remote host closed the connection) |
| 22:03:27 | <bor0> | I have a data type as follows: `data Arith = Z | S Arith | Plus Arith Arith`. I have two functions: one of them does `f [GoLeft:xs] r (Plus x y) = Plus (f xs r x) y` (so it kinda applies a function to every term), and another function `g [GoLeft:xs] (Plus x y) = x`. is there a better name for these functions? the first one seems to be some kind of a fold but I'm not sure |
| 22:04:31 | <bor0> | basically the first one kinda "modifies" the terms while the second one just "reads" them. I named them `applyX` and `getX` to start with |
| 22:05:50 | × | michalz quits (~user@185.246.204.56) (Remote host closed the connection) |
| 22:12:30 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 22:13:32 | × | nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds) |
| 22:16:31 | × | elliott_ quits (~elliott@pool-108-18-30-46.washdc.fios.verizon.net) (Ping timeout: 268 seconds) |
| 22:16:41 | × | heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 22:17:22 | → | solidus-river joins (~fuag1@174.127.249.180) |
| 22:17:41 | × | bor0 quits (~boro@unaffiliated/boro/x-000000001) (Quit: Leaving) |
| 22:18:10 | × | nicholasbulka quits (~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832) (Remote host closed the connection) |
| 22:18:22 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 268 seconds) |
| 22:18:53 | → | nicholasbulka joins (~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832) |
| 22:20:18 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 22:21:14 | <solidus-river> | is there any reason I wouldn't be able to pass a data structure with filled out partially applied callback functions over an MVar between threads? |
| 22:21:17 | → | ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 22:21:23 | → | geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) |
| 22:22:55 | × | zva quits (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Quit: WeeChat 3.0) |
| 22:23:19 | × | nicholasbulka quits (~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832) (Ping timeout: 245 seconds) |
| 22:24:06 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds) |
| 22:24:15 | → | fendor_ joins (~fendor@178.115.128.219.wireless.dyn.drei.com) |
| 22:25:22 | × | codygman__ quits (~user@47.186.207.161) (Ping timeout: 252 seconds) |
| 22:25:41 | × | ddellacosta quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 240 seconds) |
| 22:27:37 | × | fendor quits (~fendor@178.165.129.61.wireless.dyn.drei.com) (Ping timeout: 268 seconds) |
| 22:29:37 | × | howdoi quits (uid224@gateway/web/irccloud.com/x-kxxbpbiihnerjfdd) (Quit: Connection closed for inactivity) |
| 22:30:42 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 268 seconds) |
| 22:31:46 | <monochrom> | No reason. |
| 22:32:27 | <monochrom> | But words are always more misleading than actual code examples. |
| 22:33:32 | × | guest421` quits (~user@49.5.6.87) (Ping timeout: 240 seconds) |
| 22:35:47 | × | fendor_ quits (~fendor@178.115.128.219.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
| 22:35:57 | × | dsrt^ quits (dsrt@ip98-184-89-2.mc.at.cox.net) () |
| 22:36:42 | → | stree joins (~stree@68.36.8.116) |
| 22:36:45 | <solidus-river> | i have a library process i want to run in another thread but that process needs to start some sub threads and pass back signaling functions for the main program |
| 22:39:18 | <solidus-river> | i could always make the call a 2 part handshake but going the mvar route seems harder for someone not interested in the libraries implementation details to mess up |
| 22:39:25 | → | tsandstr joins (~user@nat-130-132-173-221.central.yale.edu) |
| 22:39:25 | → | heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 22:40:46 | × | redmp quits (~redmp@172.58.19.67) (Ping timeout: 252 seconds) |
| 22:40:58 | × | aveltras quits (uid364989@gateway/web/irccloud.com/x-eamssxdveirheeam) (Quit: Connection closed for inactivity) |
| 22:41:44 | <tsandstr> | I have a question about writing Haskell in emacs. I want to use lsp-haskell, and I recall that I had it working at one point in time, but now I can't get it to do anything. It claims to be running, but whenever I try to jump to a definition or view the type information of an identifier, it fails with a message along the lines of "LSP :: Not found for: fname". Any ideas on what is wrong? If this is the wrong place to |
| 22:41:44 | <tsandstr> | ask, I apologize. |
| 22:42:18 | → | redmp joins (~redmp@172.58.19.67) |
| 22:42:58 | <geekosaur> | #haskell-language-server might be more helpful |
| 22:43:38 | <tsandstr> | Thank you! |
| 22:44:02 | → | elliott_ joins (~elliott@pool-108-18-30-46.washdc.fios.verizon.net) |
| 22:46:38 | <solidus-river> | why is recognizing a co-monadic pattern useful code wise? if things swap back and forth from one monad to another is there an optimization that can be done at the compiler level? or am I misunderstanding what a co monad is? |
| 22:47:02 | <solidus-river> | trying to decipher why its an interesting topic from a coding standpoint, it kinda seems like pointing out that there are 2 modes of computation being done |
| 22:47:17 | <solidus-river> | but i think i'm missing an "aha" there |
| 22:48:19 | <geekosaur> | "comonad" is something different from that. monad has return/pure and bind; comonad has extract and extend |
| 22:48:58 | <geekosaur> | so it's kind of the "opposite" of a monad |
| 22:49:59 | <geekosaur> | https://stackoverflow.com/questions/8428554/what-is-the-comonad-typeclass-in-haskell might be of interest |
| 22:51:49 | <solidus-river> | geekosaur, thanks! :) reading |
| 22:52:16 | → | mekeor joins (~user@2001:a61:2508:9601:50e:85a3:5209:cb06) |
| 22:53:02 | × | tsandstr quits (~user@nat-130-132-173-221.central.yale.edu) (Remote host closed the connection) |
| 22:54:03 | × | finn_elija quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Remote host closed the connection) |
| 22:57:55 | → | finn_elija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) |
| 23:00:05 | × | jneira quits (501e65b6@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.182) (Quit: Connection closed) |
| 23:06:22 | → | nrh^ joins (nrh@ip98-184-89-2.mc.at.cox.net) |
| 23:10:18 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 23:10:35 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 23:11:34 | × | elliott_ quits (~elliott@pool-108-18-30-46.washdc.fios.verizon.net) (Ping timeout: 252 seconds) |
| 23:15:48 | × | son0p quits (~ff@181.136.122.143) (Remote host closed the connection) |
| 23:16:12 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 240 seconds) |
| 23:17:32 | → | ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 23:18:01 | × | berberman_ quits (~berberman@unaffiliated/berberman) (Ping timeout: 250 seconds) |
| 23:18:24 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 23:19:14 | → | curiousgay joins (~gay@178.217.208.8) |
| 23:20:03 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:d5ef:86b3:afc4:9258) (Ping timeout: 260 seconds) |
| 23:20:46 | × | xcmw quits (~textual@dyn-72-33-2-152.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 23:21:25 | → | xcmw joins (~textual@dyn-72-33-2-152.uwnet.wisc.edu) |
| 23:22:01 | × | ddellacosta quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 252 seconds) |
| 23:22:51 | × | xff0x quits (~xff0x@2001:1a81:5291:ee00:8d5:6829:975f:eb62) (Ping timeout: 260 seconds) |
| 23:26:35 | × | Synthetica quits (uid199651@gateway/web/irccloud.com/x-pljewtuwfmzflrit) (Quit: Connection closed for inactivity) |
| 23:28:36 | × | {abby} quits (~{abby}@unaffiliated/demhydraz) (Quit: Ping timeout (120 seconds)) |
| 23:30:33 | → | olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber) |
| 23:30:51 | → | nicholasbulka joins (~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832) |
| 23:35:14 | → | Guest78317 joins (~laudiacay@67.176.215.84) |
| 23:37:05 | <edwardk> | geekosaur: comonads and monads serve very different purposes in haskell. i find monads tend to build up to a nice throw-everything-and-the-kitchen-sink-in coding pattern, where you gather up all the functionality you want in one place. because monads are easy to get into and hard to get out of. |
| 23:37:08 | <edwardk> | er solidus-river |
| 23:37:49 | <edwardk> | on the other hand comonads are super easy to 'get out of' but hard to build/keep around. so you tend to wind up with lots of little comonads helping you out in your code base, if you know to look for them |
| 23:39:04 | <edwardk> | sure there are a few extra interesting ones, comonads for cellular automata, or streaming calculations, but mostly they wind up being little thin wrappers around some data type that give you an extra bit of functionality. e.g. the Ur comonad for unrestricted use in linear-base, or some kind of Env comonad that gives you a piece of extra data |
| 23:42:18 | <solidus-river> | thanks, those links are dense to parse but i'll keep readin em and check back if nothings clicking next week, really want to grok comonads and arrows or kleisli composition |
| 23:42:42 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 23:43:10 | <solidus-river> | I got scared off from using stateT in things after hearing about the leak problems is this reasonable or are those leaks edge cases that are easily avoided |
| 23:43:35 | × | haritz quits (~hrtz@unaffiliated/haritz) (Ping timeout: 250 seconds) |
| 23:44:01 | × | thc202 quits (~thc202@unaffiliated/thc202) (Ping timeout: 258 seconds) |
| 23:44:54 | → | xff0x joins (~xff0x@2001:1a81:52cf:7d00:b2d0:1364:2669:3f2f) |
| 23:45:05 | → | haritz joins (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) |
| 23:45:05 | × | haritz quits (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host) |
| 23:45:05 | → | haritz joins (~hrtz@unaffiliated/haritz) |
| 23:47:38 | → | philderbeast joins (~textual@bras-base-vldvpq5901w-grc-06-184-144-244-252.dsl.bell.ca) |
| 23:48:10 | × | tabaqui1 quits (~tabaqui@2604:a880:800:c1::21b:3001) (Quit: WeeChat 3.1-dev) |
| 23:48:19 | → | tabaqui joins (~tabaqui@2604:a880:800:c1::21b:3001) |
| 23:52:09 | × | puke quits (~vroom@217.138.252.56) (Quit: puke) |
| 23:53:55 | × | rj__ quits (~x@gateway/tor-sasl/rj) (Quit: rj__) |
| 23:54:10 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
| 23:57:07 | <solidus-river> | these comonad posts are very interesting but sound like intense use cases, whats a pedestrian example of a comonad. Cellular automata are cool but also seem really abstract |
| 23:59:45 | × | usr25 quits (~usr25@unaffiliated/usr25) (Quit: Leaving) |
All times are in UTC on 2021-04-22.