Logs on 2022-07-28 (liberachat/#haskell)
| 00:02:14 | → | jespada joins (~jespada@45.162.228.187) |
| 00:02:43 | × | Guest3 quits (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Ping timeout: 252 seconds) |
| 00:03:27 | → | dcoutts_ joins (~duncan@host86-175-248-8.range86-175.btcentralplus.com) |
| 00:04:07 | → | Gambino joins (~textual@user/polo) |
| 00:04:55 | × | gurkenglas quits (~gurkengla@p548ac65f.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 00:05:27 | × | dcoutts quits (~duncan@host86-167-206-72.range86-167.btcentralplus.com) (Ping timeout: 245 seconds) |
| 00:07:08 | → | dcoutts__ joins (~duncan@host86-150-18-14.range86-150.btcentralplus.com) |
| 00:09:41 | × | dcoutts_ quits (~duncan@host86-175-248-8.range86-175.btcentralplus.com) (Ping timeout: 252 seconds) |
| 00:11:05 | × | winny_ quits (~weechat@user/winny) (Remote host closed the connection) |
| 00:11:40 | → | winny_ joins (~weechat@user/winny) |
| 00:12:37 | → | dcoutts_ joins (~duncan@host86-177-223-134.range86-177.btcentralplus.com) |
| 00:14:05 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 00:14:07 | → | vysn joins (~vysn@user/vysn) |
| 00:14:59 | → | dcoutts joins (~duncan@host86-177-223-196.range86-177.btcentralplus.com) |
| 00:15:11 | × | dcoutts__ quits (~duncan@host86-150-18-14.range86-150.btcentralplus.com) (Ping timeout: 252 seconds) |
| 00:15:53 | × | xff0x quits (~xff0x@ae128185.dynamic.ppp.asahi-net.or.jp) (Ping timeout: 244 seconds) |
| 00:17:01 | × | dcoutts_ quits (~duncan@host86-177-223-134.range86-177.btcentralplus.com) (Ping timeout: 252 seconds) |
| 00:17:07 | → | dcoutts_ joins (~duncan@host86-158-23-22.range86-158.btcentralplus.com) |
| 00:17:50 | → | xff0x joins (~xff0x@ae132090.dynamic.ppp.asahi-net.or.jp) |
| 00:18:22 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds) |
| 00:19:35 | × | dcoutts quits (~duncan@host86-177-223-196.range86-177.btcentralplus.com) (Ping timeout: 252 seconds) |
| 00:20:56 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 00:20:56 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 00:20:56 | → | wroathe joins (~wroathe@user/wroathe) |
| 00:21:24 | × | vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.5) |
| 00:21:41 | → | vysn joins (~vysn@user/vysn) |
| 00:22:17 | → | dcoutts joins (~duncan@host86-158-23-22.range86-158.btcentralplus.com) |
| 00:22:34 | × | mixphix quits (~cigsender@bras-base-otwaon237cw-grc-11-174-91-129-69.dsl.bell.ca) (Quit: Lost terminal) |
| 00:23:37 | × | dcoutts_ quits (~duncan@host86-158-23-22.range86-158.btcentralplus.com) (Ping timeout: 252 seconds) |
| 00:23:58 | × | dvdrw quits (~dvdrw@user/dvdrw) (Ping timeout: 240 seconds) |
| 00:25:07 | → | dcoutts_ joins (~duncan@host86-158-23-22.range86-158.btcentralplus.com) |
| 00:28:01 | × | dcoutts quits (~duncan@host86-158-23-22.range86-158.btcentralplus.com) (Ping timeout: 268 seconds) |
| 00:28:16 | → | dcoutts joins (~duncan@host86-158-23-22.range86-158.btcentralplus.com) |
| 00:30:02 | × | Gambino quits (~textual@user/polo) (Ping timeout: 245 seconds) |
| 00:30:57 | × | dcoutts_ quits (~duncan@host86-158-23-22.range86-158.btcentralplus.com) (Ping timeout: 252 seconds) |
| 00:33:47 | → | Guest3 joins (~textual@223.15.195.173.client.static.strong-in52.as13926.net) |
| 00:35:37 | → | dcoutts_ joins (~duncan@host86-153-135-116.range86-153.btcentralplus.com) |
| 00:36:02 | × | xff0x quits (~xff0x@ae132090.dynamic.ppp.asahi-net.or.jp) (Ping timeout: 268 seconds) |
| 00:36:02 | × | mvk quits (~mvk@2607:fea8:5ce3:8500::909a) (Ping timeout: 244 seconds) |
| 00:37:21 | <hasbae> | im trying to grok the difference between stack and cabal. I *think* cabal is mostly analagous to make, it's for building targets and specifying target dependencies. Stack is close to apt-get, helps download and manage dependencies, plus convenience things like running the project and setup. |
| 00:37:33 | × | dcoutts quits (~duncan@host86-158-23-22.range86-158.btcentralplus.com) (Ping timeout: 252 seconds) |
| 00:37:51 | <hasbae> | is that close to reasonably correct? |
| 00:37:56 | <Axman6> | not really |
| 00:38:24 | <Axman6> | Cabal can do basically everything Stack can these days, other than providing LTS snapshots (which IIRC you can grab the cabal lock files and get the same thing) |
| 00:38:52 | <Axman6> | Personally I don't see any need to use stack these days, it's less compatible, missing features that cabal supports |
| 00:39:20 | <yushyin> | https://gist.github.com/merijn/8152d561fb8b011f9313c48d876ceb07 also this |
| 00:40:07 | × | dcoutts_ quits (~duncan@host86-153-135-116.range86-153.btcentralplus.com) (Ping timeout: 252 seconds) |
| 00:41:17 | <Axman6> | we need a cabal holy trinity meme a la https://www.reddit.com/r/ProgrammerHumor/comments/786h5w/the_father_the_son_and_the_holy_spirit/ |
| 00:41:20 | → | dcoutts joins (~duncan@host86-184-129-206.range86-184.btcentralplus.com) |
| 00:42:13 | <sclv> | lol. cabal the library is not cabal-install the executable is not cabal the file format ALL ARE cabal the common architecture for building applications and libraries |
| 00:42:55 | × | Guest3 quits (~textual@223.15.195.173.client.static.strong-in52.as13926.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 00:43:12 | <Axman6> | :cheff-kiss: |
| 00:43:12 | <hasbae> | so cabal is almost as overloaded as nix |
| 00:43:15 | <Axman6> | chef* |
| 00:43:29 | <hasbae> | yushyin: thanks for the link, that is helpful |
| 00:44:00 | <hasbae> | Axman6: thanks for the perspective |
| 00:47:42 | <Axman6> | basically, if you use cabal, it will work with everything, if you use stack, it may work with cabal but might come at the cost of not being able to use newer GHC features |
| 00:48:04 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 00:48:19 | → | lemonsni- joins (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) |
| 00:48:58 | × | lemonsnicks quits (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (Ping timeout: 244 seconds) |
| 00:49:15 | → | xff0x joins (~xff0x@ad003234.dynamic.ppp.asahi-net.or.jp) |
| 00:50:00 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Remote host closed the connection) |
| 00:50:37 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 00:51:04 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 00:51:58 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 00:53:13 | → | Guest3 joins (~textual@223.15.195.173.client.static.strong-in52.as13926.net) |
| 00:53:18 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 268 seconds) |
| 00:58:14 | → | ober joins (~ober@c-24-61-81-45.hsd1.ma.comcast.net) |
| 01:01:24 | × | tdammers quits (~tdammers@77.109.72.118.res.static.edpnet.net) (Ping timeout: 276 seconds) |
| 01:02:37 | → | dcoutts_ joins (~duncan@host86-184-129-205.range86-184.btcentralplus.com) |
| 01:02:57 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Ping timeout: 245 seconds) |
| 01:04:08 | → | dcoutts__ joins (~duncan@host86-184-129-206.range86-184.btcentralplus.com) |
| 01:04:19 | × | KaitoDaumoto quits (~KaitoDaum@user/kaitodaumoto) (Remote host closed the connection) |
| 01:05:03 | × | Guest3 quits (~textual@223.15.195.173.client.static.strong-in52.as13926.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:05:03 | × | dcoutts quits (~duncan@host86-184-129-206.range86-184.btcentralplus.com) (Ping timeout: 252 seconds) |
| 01:05:42 | → | Guest3 joins (~textual@222.15.195.173.client.static.strong-in52.as13926.net) |
| 01:07:29 | × | dcoutts_ quits (~duncan@host86-184-129-205.range86-184.btcentralplus.com) (Ping timeout: 268 seconds) |
| 01:09:16 | → | dcoutts joins (~duncan@host86-163-164-140.range86-163.btcentralplus.com) |
| 01:09:40 | × | Guest3 quits (~textual@222.15.195.173.client.static.strong-in52.as13926.net) (Client Quit) |
| 01:11:05 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:11:17 | × | dcoutts__ quits (~duncan@host86-184-129-206.range86-184.btcentralplus.com) (Ping timeout: 252 seconds) |
| 01:12:11 | → | dcoutts_ joins (~duncan@host86-163-164-140.range86-163.btcentralplus.com) |
| 01:12:41 | → | Guest3 joins (~textual@223.15.195.173.client.static.strong-in52.as13926.net) |
| 01:13:51 | × | dcoutts quits (~duncan@host86-163-164-140.range86-163.btcentralplus.com) (Ping timeout: 252 seconds) |
| 01:14:16 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 268 seconds) |
| 01:14:30 | × | alp_ quits (~alp@user/alp) (Ping timeout: 240 seconds) |
| 01:14:38 | → | dcoutts__ joins (~duncan@host86-151-44-188.range86-151.btcentralplus.com) |
| 01:17:12 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:17:21 | × | dcoutts_ quits (~duncan@host86-163-164-140.range86-163.btcentralplus.com) (Ping timeout: 268 seconds) |
| 01:21:04 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 01:21:06 | → | dcoutts joins (~duncan@host86-151-44-188.range86-151.btcentralplus.com) |
| 01:21:26 | → | haritz joins (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) |
| 01:21:27 | × | haritz quits (~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host) |
| 01:21:27 | → | haritz joins (~hrtz@user/haritz) |
| 01:24:07 | × | dcoutts__ quits (~duncan@host86-151-44-188.range86-151.btcentralplus.com) (Ping timeout: 252 seconds) |
| 01:25:07 | → | tstat joins (~user@user/tstat) |
| 01:25:35 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 252 seconds) |
| 01:32:37 | → | dcoutts_ joins (~duncan@host86-151-44-188.range86-151.btcentralplus.com) |
| 01:34:45 | × | dcoutts quits (~duncan@host86-151-44-188.range86-151.btcentralplus.com) (Ping timeout: 252 seconds) |
| 01:36:04 | × | king_gs quits (~Thunderbi@2806:103e:29:a1b3:d33d:90f:3255:af90) (Quit: king_gs) |
| 01:36:19 | → | king_gs joins (~Thunderbi@187.201.95.222) |
| 01:38:27 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 01:39:17 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 01:39:23 | × | ober quits (~ober@c-24-61-81-45.hsd1.ma.comcast.net) (Quit: Leaving) |
| 01:39:38 | × | nunggu quits (~q@user/nunggu) (Ping timeout: 268 seconds) |
| 01:39:58 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 01:39:58 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 01:39:58 | → | wroathe joins (~wroathe@user/wroathe) |
| 01:40:18 | → | dcoutts__ joins (~duncan@host86-149-51-21.range86-149.btcentralplus.com) |
| 01:41:23 | × | Guest3 quits (~textual@223.15.195.173.client.static.strong-in52.as13926.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:41:24 | → | nunggu joins (~q@user/nunggu) |
| 01:42:11 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 01:42:27 | × | dcoutts_ quits (~duncan@host86-151-44-188.range86-151.btcentralplus.com) (Ping timeout: 252 seconds) |
| 01:42:47 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 01:45:37 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) (Ping timeout: 272 seconds) |
| 01:45:45 | × | motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 252 seconds) |
| 01:46:54 | → | machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net) |
| 01:49:53 | → | Guest3 joins (~textual@222.15.195.173.client.static.strong-in52.as13926.net) |
| 01:54:13 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 01:56:17 | × | juri_ quits (~juri@84-19-175-179.pool.ovpn.com) (Ping timeout: 245 seconds) |
| 01:58:26 | × | Guest3 quits (~textual@222.15.195.173.client.static.strong-in52.as13926.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 01:58:47 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds) |
| 02:02:57 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 02:03:02 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 02:03:02 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
| 02:03:02 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 02:03:02 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Write error: Connection reset by peer) |
| 02:03:02 | × | nunggu quits (~q@user/nunggu) (Write error: Connection reset by peer) |
| 02:03:02 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 02:03:34 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:03:35 | → | nunggu joins (~q@user/nunggu) |
| 02:03:35 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 02:03:37 | → | califax joins (~califax@user/califx) |
| 02:03:46 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 02:03:50 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 02:06:17 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
| 02:11:19 | → | Katarushisu4 joins (~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) |
| 02:11:32 | → | juri_ joins (~juri@79.140.114.82) |
| 02:12:08 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 244 seconds) |
| 02:12:31 | × | xff0x quits (~xff0x@ad003234.dynamic.ppp.asahi-net.or.jp) (Ping timeout: 252 seconds) |
| 02:12:51 | × | Katarushisu quits (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (Ping timeout: 272 seconds) |
| 02:12:51 | Katarushisu4 | is now known as Katarushisu |
| 02:14:10 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds) |
| 02:14:44 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5) |
| 02:15:44 | → | liz joins (~liz@host86-159-158-175.range86-159.btcentralplus.com) |
| 02:15:44 | × | king_gs quits (~Thunderbi@187.201.95.222) (Read error: Connection reset by peer) |
| 02:16:09 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 02:17:04 | → | king_gs joins (~Thunderbi@2806:103e:29:a1b3:d33d:90f:3255:af90) |
| 02:18:13 | → | Guest3 joins (~textual@222.15.195.173.client.static.strong-in52.as13926.net) |
| 02:19:39 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection) |
| 02:22:39 | × | tstat quits (~user@user/tstat) (Remote host closed the connection) |
| 02:23:06 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 02:23:20 | × | Guest3 quits (~textual@222.15.195.173.client.static.strong-in52.as13926.net) (Ping timeout: 268 seconds) |
| 02:23:29 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 02:24:50 | → | Guest3 joins (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) |
| 02:25:52 | × | Guest3 quits (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Client Quit) |
| 02:25:53 | → | xff0x joins (~xff0x@ae133242.dynamic.ppp.asahi-net.or.jp) |
| 02:25:55 | → | tdammers joins (~tdammers@77.109.72.118.res.static.edpnet.net) |
| 02:25:59 | × | use-value quits (~Thunderbi@2a00:23c6:8a03:2f01:2cec:3cb3:dd6:44cd) (Remote host closed the connection) |
| 02:26:20 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 02:29:09 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 02:29:42 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 02:30:52 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds) |
| 02:31:13 | × | xff0x quits (~xff0x@ae133242.dynamic.ppp.asahi-net.or.jp) (Ping timeout: 252 seconds) |
| 02:33:08 | → | xff0x joins (~xff0x@2405:6580:b080:900:f2c8:df52:4c4b:1c78) |
| 02:34:23 | × | tremon quits (~tremon@83-84-18-241.cable.dynamic.v4.ziggo.nl) (Quit: getting boxed in) |
| 02:36:31 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 02:36:31 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 02:36:31 | × | nunggu quits (~q@user/nunggu) (Remote host closed the connection) |
| 02:36:58 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 02:36:59 | → | califax joins (~califax@user/califx) |
| 02:37:03 | → | nunggu joins (~q@user/nunggu) |
| 02:43:16 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 02:43:43 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 02:44:16 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 02:44:28 | × | pierrot quits (~pi@user/pierrot) (Quit: ZNC 1.8.2 - http://znc.in) |
| 02:44:33 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 02:45:05 | → | califax joins (~califax@user/califx) |
| 02:46:01 | → | pierrot joins (~pi@user/pierrot) |
| 02:48:00 | × | td_ quits (~td@muedsl-82-207-238-210.citykom.de) (Ping timeout: 268 seconds) |
| 02:49:23 | → | td_ joins (~td@muedsl-82-207-238-045.citykom.de) |
| 02:50:44 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 255 seconds) |
| 02:54:40 | → | Guest3 joins (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) |
| 02:58:33 | × | morrow quits (~user@31.168.110.106) (Remote host closed the connection) |
| 03:00:33 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 03:03:50 | × | king_gs quits (~Thunderbi@2806:103e:29:a1b3:d33d:90f:3255:af90) (Ping timeout: 240 seconds) |
| 03:03:54 | → | mvk joins (~mvk@2607:fea8:5ce3:8500::909a) |
| 03:05:16 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 268 seconds) |
| 03:09:55 | × | Guest3 quits (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Remote host closed the connection) |
| 03:11:16 | × | jargon quits (~jargon@184.101.188.251) (Remote host closed the connection) |
| 03:14:06 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 03:19:12 | × | machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 245 seconds) |
| 03:20:41 | × | vglfr quits (~vglfr@91.192.47.10) (Read error: Connection reset by peer) |
| 03:21:01 | → | vglfr joins (~vglfr@91.192.47.10) |
| 03:25:41 | × | vglfr quits (~vglfr@91.192.47.10) (Read error: Connection reset by peer) |
| 03:26:43 | → | vglfr joins (~vglfr@91.192.47.10) |
| 03:27:24 | → | lisbeths joins (uid135845@id-135845.lymington.irccloud.com) |
| 03:28:19 | × | vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.5) |
| 03:29:13 | × | dcoutts__ quits (~duncan@host86-149-51-21.range86-149.btcentralplus.com) (Remote host closed the connection) |
| 03:29:36 | → | dcoutts__ joins (~duncan@host86-149-51-21.range86-149.btcentralplus.com) |
| 03:30:12 | × | winny_ quits (~weechat@user/winny) (Remote host closed the connection) |
| 03:30:35 | → | vysn joins (~vysn@user/vysn) |
| 03:31:10 | × | vglfr quits (~vglfr@91.192.47.10) (Read error: Connection reset by peer) |
| 03:31:11 | → | winny_ joins (~weechat@user/winny) |
| 03:32:28 | → | vglfr joins (~vglfr@91.192.47.10) |
| 03:34:50 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 03:35:07 | → | dcoutts_ joins (~duncan@host86-177-125-79.range86-177.btcentralplus.com) |
| 03:37:35 | × | dcoutts__ quits (~duncan@host86-149-51-21.range86-149.btcentralplus.com) (Ping timeout: 252 seconds) |
| 03:39:48 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 268 seconds) |
| 03:43:27 | × | juri_ quits (~juri@79.140.114.82) (Read error: Connection reset by peer) |
| 03:43:59 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 03:44:37 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 03:46:12 | → | juri_ joins (~juri@79.140.114.82) |
| 03:48:01 | × | juri_ quits (~juri@79.140.114.82) (Read error: Connection reset by peer) |
| 03:50:34 | × | vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.5) |
| 03:51:31 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 268 seconds) |
| 03:53:06 | → | juri_ joins (~juri@84-19-175-179.pool.ovpn.com) |
| 03:55:18 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds) |
| 04:01:28 | × | nunggu quits (~q@user/nunggu) (Ping timeout: 268 seconds) |
| 04:03:10 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 04:03:14 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:03:52 | → | nunggu joins (~q@user/nunggu) |
| 04:04:15 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 04:06:40 | → | azimut_ joins (~azimut@gateway/tor-sasl/azimut) |
| 04:07:01 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds) |
| 04:07:19 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 04:07:31 | → | califax_ joins (~califax@user/califx) |
| 04:07:38 | × | califax quits (~califax@user/califx) (Ping timeout: 268 seconds) |
| 04:08:44 | califax_ | is now known as califax |
| 04:08:52 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds) |
| 04:09:22 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 04:09:24 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 04:12:29 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 268 seconds) |
| 04:12:35 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:12:43 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 04:13:48 | × | nunggu quits (~q@user/nunggu) (Ping timeout: 268 seconds) |
| 04:16:44 | → | nunggu joins (~q@user/nunggu) |
| 04:17:45 | <qrpnxz> | getting terrible performance trying to do a (mapsM f . chunksOf n) on a stream. Haven't figured out exactly why but if i chunk and reduce it by hand things become sane again. |
| 04:22:17 | × | winny_ quits (~weechat@user/winny) (Remote host closed the connection) |
| 04:22:26 | <qrpnxz> | in particular the memory use is absolute poo poo |
| 04:22:50 | <qrpnxz> | i think it may even be exponential. really bad |
| 04:22:58 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 268 seconds) |
| 04:24:05 | → | winny_ joins (~weechat@user/winny) |
| 04:24:07 | → | vglfr joins (~vglfr@91.192.47.10) |
| 04:25:58 | × | rekahsoft quits (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) (Ping timeout: 244 seconds) |
| 04:31:15 | × | nunggu quits (~q@user/nunggu) (Quit: nunggu) |
| 04:36:42 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 245 seconds) |
| 04:38:18 | <qrpnxz> | splitsAt on the other hand works awesome |
| 04:41:06 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 04:47:15 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 252 seconds) |
| 04:47:24 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 04:48:17 | → | vglfr joins (~vglfr@91.192.47.10) |
| 04:48:24 | → | califax joins (~califax@user/califx) |
| 04:56:02 | × | motherfsck quits (~motherfsc@user/motherfsck) (Quit: quit) |
| 04:56:59 | × | Techcable quits (~Techcable@user/Techcable) (Remote host closed the connection) |
| 04:59:04 | → | Techcable joins (~Techcable@user/Techcable) |
| 05:00:01 | → | notzmv joins (~zmv@user/notzmv) |
| 05:01:41 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 05:01:43 | × | Techcable quits (~Techcable@user/Techcable) (Remote host closed the connection) |
| 05:01:52 | → | Techcable joins (~Techcable@user/Techcable) |
| 05:04:22 | → | use-value joins (~Thunderbi@2a00:23c6:8a03:2f01:2cec:3cb3:dd6:44cd) |
| 05:05:52 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds) |
| 05:08:10 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 05:09:13 | winny_ | is now known as winny_please_hel |
| 05:09:37 | winny_please_hel | is now known as winny_tor_dc_grr |
| 05:10:57 | × | winny_tor_dc_grr quits (~weechat@user/winny) (Remote host closed the connection) |
| 05:11:28 | → | winny_tor_dc_grr joins (~weechat@user/winny) |
| 05:11:39 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 05:21:36 | <qrpnxz> | i cracked the code |
| 05:21:38 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds) |
| 05:23:03 | <qrpnxz> | Stream Step is strict on the functor. If you build the stream from S.each (or just via forever or simple loop like that) then there's not enough laziness. If you use repeats or cycles, that will add a dummy sure Effect that does nothing. Effect is not struct on the monad. Result is that it behaves sanely! |
| 05:23:05 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 05:23:18 | <qrpnxz> | s/sure/pure |
| 05:23:26 | <qrpnxz> | s/struct/strict |
| 05:23:31 | × | liz quits (~liz@host86-159-158-175.range86-159.btcentralplus.com) (Quit: Lost terminal) |
| 05:23:46 | → | alp_ joins (~alp@user/alp) |
| 05:24:54 | <qrpnxz> | manual chunk is now only twice as fast, my guess is because it literally traverses half the number of constructors! |
| 05:28:22 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 245 seconds) |
| 05:29:50 | → | vglfr joins (~vglfr@91.192.47.10) |
| 05:30:27 | × | alp_ quits (~alp@user/alp) (Ping timeout: 272 seconds) |
| 05:34:19 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 05:36:35 | × | zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection) |
| 05:37:48 | → | zaquest joins (~notzaques@5.130.79.72) |
| 05:38:57 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 252 seconds) |
| 05:39:19 | × | vglfr quits (~vglfr@91.192.47.10) (Read error: Connection reset by peer) |
| 05:40:03 | → | vglfr joins (~vglfr@91.192.47.10) |
| 05:40:54 | → | Kaipei joins (~Kaiepi@156.34.47.253) |
| 05:44:05 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Ping timeout: 252 seconds) |
| 05:44:16 | × | enemeth79 quits (uid309041@id-309041.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 05:44:52 | → | gmg joins (~user@user/gehmehgeh) |
| 05:45:19 | × | vglfr quits (~vglfr@91.192.47.10) (Read error: Connection reset by peer) |
| 05:45:27 | → | vglfr joins (~vglfr@91.192.47.10) |
| 05:53:54 | → | Kaipii joins (~Kaiepi@156.34.47.253) |
| 05:56:55 | × | Kaipei quits (~Kaiepi@156.34.47.253) (Ping timeout: 252 seconds) |
| 05:59:31 | → | michalz joins (~michalz@185.246.204.77) |
| 06:00:25 | × | winny_tor_dc_grr quits (~weechat@user/winny) (Quit: disabling tor brb) |
| 06:01:00 | → | winny joins (~weechat@user/winny) |
| 06:06:39 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds) |
| 06:07:16 | × | gmg quits (~user@user/gehmehgeh) (Ping timeout: 268 seconds) |
| 06:07:48 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 06:08:20 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 06:09:17 | → | gmg joins (~user@user/gehmehgeh) |
| 06:09:32 | × | kuribas quits (~user@ptr-17d51epd7nbmqsvhr5i.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3)) |
| 06:10:22 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 06:12:41 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 06:13:03 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 252 seconds) |
| 06:13:06 | <Haskelytic> | quick jargon check: when they say polymorphic type, they mean something like `Maybe a` implicitly quantified over all types `a` whereas monomorphic type means something like `[Int]` where there are no type variables, only a type of kind `*` |
| 06:13:17 | <Haskelytic> | is my understanding correct here? |
| 06:14:22 | → | coot joins (~coot@213.134.190.95) |
| 06:14:24 | <c_wraith> | Usually yes. |
| 06:14:51 | <c_wraith> | But as with most words, "polymorphic" can have slightly different meanings in more precise contexts. |
| 06:15:30 | → | tomekgrzesiak joins (~tomekgrze@109-206-198-75.host.skynet.net.pl) |
| 06:18:16 | → | zeenk joins (~zeenk@2a02:2f04:a311:2d00:6865:d863:4c93:799f) |
| 06:18:49 | → | gmg joins (~user@user/gehmehgeh) |
| 06:19:14 | → | alternateved joins (~user@staticline-31-183-144-54.toya.net.pl) |
| 06:20:35 | → | chomwitt joins (~chomwitt@2a02:587:dc00:5a00:8d6e:98d7:e6d8:2a33) |
| 06:23:42 | <Haskelytic> | there seems to be a notion of polymorphism over type constructors, which I assume means something like `f Int` for all `f` |
| 06:24:25 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 252 seconds) |
| 06:24:55 | <c_wraith> | type constructors are just more types. |
| 06:25:16 | <c_wraith> | types that aren't inhabited, but still types |
| 06:25:29 | <Haskelytic> | hmm...i saw that used in this paper https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.121.9744&rep=rep1&type=pdf |
| 06:25:39 | <Haskelytic> | the author maintained a separation between types/type cons |
| 06:25:43 | → | Guest3 joins (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) |
| 06:25:54 | → | vglfr joins (~vglfr@91.192.47.10) |
| 06:25:55 | × | Guest3 quits (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Changing host) |
| 06:25:55 | → | Guest3 joins (~textual@user/polo) |
| 06:26:16 | <Haskelytic> | c_wraith: so basically `Maybe` is a type, just one that is not inhabited by any values? |
| 06:26:25 | <Haskelytic> | is that what you meant? |
| 06:26:28 | <c_wraith> | yes |
| 06:26:42 | <Haskelytic> | ah, I see. thanks for the clarification |
| 06:27:07 | <c_wraith> | that view explains why you can be polymorphic over type constructors - they don't get special treatment |
| 06:27:54 | <Haskelytic> | right...so basically something like `(>>=)` would be an example of being polymorphic over typecons? |
| 06:28:02 | <c_wraith> | yes |
| 06:28:21 | <Haskelytic> | nice nice...it's all clicking now :) |
| 06:29:30 | <c_wraith> | you might run into some papers that use the terms "polytype" or "polytypic". This refers specifically to when something has different implementations for each type instantiation |
| 06:29:56 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Quit: Client closed) |
| 06:29:58 | <c_wraith> | so like.. (>>=) is polytypic in m, but polymorphic in a and b |
| 06:30:47 | <c_wraith> | it's not something you'll see very often, but there is a minor difference there. |
| 06:31:00 | <c_wraith> | Sometimes you'll want to talk about that difference |
| 06:32:23 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 06:40:52 | × | bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 245 seconds) |
| 06:42:05 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 06:44:48 | → | acidjnk joins (~acidjnk@p200300d6e7058640883c7bf2a50d2bab.dip0.t-ipconnect.de) |
| 06:46:42 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds) |
| 06:46:58 | × | lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 06:48:09 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 06:49:38 | × | mvk quits (~mvk@2607:fea8:5ce3:8500::909a) (Ping timeout: 240 seconds) |
| 06:50:21 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 268 seconds) |
| 06:51:13 | → | vglfr joins (~vglfr@91.192.47.10) |
| 06:53:13 | → | jinsun__ joins (~jinsun@user/jinsun) |
| 06:53:13 | jinsun | is now known as Guest7583 |
| 06:53:13 | jinsun__ | is now known as jinsun |
| 06:54:52 | × | tomekgrzesiak quits (~tomekgrze@109-206-198-75.host.skynet.net.pl) (Quit: WeeChat 3.5) |
| 06:55:48 | × | Guest7583 quits (~jinsun@user/jinsun) (Ping timeout: 244 seconds) |
| 06:57:20 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:da37:e623:a34b:34ad) |
| 07:02:48 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 07:06:16 | → | kuribas joins (~user@188.188.175.58) |
| 07:08:43 | → | misterfish joins (~misterfis@ip214-130-173-82.adsl2.static.versatel.nl) |
| 07:09:52 | × | Guest3 quits (~textual@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 07:12:15 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection) |
| 07:12:29 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 07:16:03 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 07:18:47 | → | eod|fserucas joins (~eod|fseru@83.223.227.100) |
| 07:20:15 | Kaipii | is now known as Kaiepi |
| 07:20:31 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 252 seconds) |
| 07:28:35 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 252 seconds) |
| 07:29:12 | → | vglfr joins (~vglfr@91.192.47.10) |
| 07:29:52 | × | kuribas quits (~user@188.188.175.58) (Remote host closed the connection) |
| 07:30:49 | <tomsmeding> | c_wraith: also called "parametric polymorphism" (polymorphic) and "ad-hoc polymorphism" (polytypic), right? Or am I mixing up things? |
| 07:31:59 | × | shriekingnoise quits (~shrieking@186.137.167.202) (Quit: Quit) |
| 07:34:46 | → | Guest3 joins (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) |
| 07:35:02 | → | Tuplanolla joins (~Tuplanoll@91-159-68-5.elisa-laajakaista.fi) |
| 07:35:18 | <retropikzel> | I see many haskell web framework havent been updated in a while, is it because with haskell you get to some point when things are pretty much just done? |
| 07:35:43 | <retropikzel> | havent been updated in a while meaning some seem abandoned |
| 07:36:42 | × | elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 245 seconds) |
| 07:36:48 | × | Guest3 quits (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Client Quit) |
| 07:37:06 | → | benin0 joins (~benin@183.82.26.87) |
| 07:38:28 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Remote host closed the connection) |
| 07:38:56 | <Axman6> | which frameworks? |
| 07:39:46 | <qrpnxz> | tomsmeding: i believe a distinction is made. Parametric polymorphism is like id :: a -> a, ad-hoc is with type classes |
| 07:40:34 | → | MajorBiscuit joins (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl) |
| 07:40:58 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 07:40:59 | <qrpnxz> | well, i think that's what you meant so nvm |
| 07:41:28 | <retropikzel> | Axman6, for example Spock, github shows activity but latest release was 2017. I mean it good that thinks dont update every week but am I right to suspect that its because there is no need for updates in many cases? |
| 07:41:43 | <retropikzel> | *it's good that things |
| 07:41:57 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection) |
| 07:42:14 | → | alp_ joins (~alp@user/alp) |
| 07:44:38 | → | dcoutts__ joins (~duncan@host213-122-124-201.range213-122.btcentralplus.com) |
| 07:45:30 | <qrpnxz> | the amount of updates i expect depend on the nature of the project, the size of the user base. To determine if a project is abandoned or at least not much maintained i look at something else. Namely the tracked issues, if they are serious or not, if the supposed mantainers are commenting on them, if PRs are getting looked at and merged. I think these paint a more useful picture. |
| 07:46:50 | × | use-value quits (~Thunderbi@2a00:23c6:8a03:2f01:2cec:3cb3:dd6:44cd) (Ping timeout: 240 seconds) |
| 07:47:07 | × | dcoutts_ quits (~duncan@host86-177-125-79.range86-177.btcentralplus.com) (Ping timeout: 245 seconds) |
| 07:49:10 | <retropikzel> | Maybe I should put my question in another way, if I see say 10 year old code and it works for me and compiles. Should I be worrited that it stops working at some point? In javascript world if code is 2 secodns old its already unusable(joke) but in common lisp world I see code that is 15 years old and its fine |
| 07:49:48 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 07:52:37 | → | zxx7529 joins (~Thunderbi@user/zxx7529) |
| 07:53:02 | → | Guest3 joins (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) |
| 07:53:04 | × | causal quits (~user@50.35.83.177) (Quit: WeeChat 3.5) |
| 07:54:12 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds) |
| 07:54:33 | → | elkcl joins (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) |
| 07:56:11 | → | machinedgod joins (~machinedg@d172-219-86-154.abhsia.telus.net) |
| 08:03:45 | × | Guest3 quits (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 08:05:57 | → | kuribas joins (~user@silversquare.silversquare.eu) |
| 08:07:37 | → | chele joins (~chele@user/chele) |
| 08:08:04 | <qrpnxz> | well again it depends the nature of the project. Something need to be updated pretty often, other things not. Non-specific answer for non-specific question. 10-15 years is starting to be quite a while, I could definitely see various things being deprecated in that time frame, so if it doesn't have a maintainer, not working anymore in the future may be a problem, but again it just depend on a lot |
| 08:08:06 | <qrpnxz> | of things. |
| 08:10:05 | → | ccntrq joins (~Thunderbi@2a01:c23:9433:a300:ada9:d25f:5ab0:f8a9) |
| 08:11:21 | → | enemeth79 joins (uid309041@id-309041.lymington.irccloud.com) |
| 08:12:59 | <lortabac> | retropikzel: I personally avoid packages that are not maintained, the Haskell ecosystem is not as stable as Common Lisp |
| 08:16:11 | → | benin01 joins (~benin@2401:4900:2320:8d1e:64fa:951e:c1ff:936a) |
| 08:17:57 | × | benin0 quits (~benin@183.82.26.87) (Ping timeout: 245 seconds) |
| 08:17:58 | benin01 | is now known as benin0 |
| 08:18:08 | <jackdk> | The more polymorphic code is, the less likely it will need regular revision |
| 08:18:23 | <jackdk> | something like monad-loops or hoist-error is pretty well "done" at this point |
| 08:20:16 | → | nschoe joins (~quassel@178.251.84.79) |
| 08:20:56 | <retropikzel> | Thanks, I think I'll learn for example yesod then instead of spock or scotty. It seems more complicated but in the long run I propably dont have to learn another framework or rewrite much code |
| 08:21:59 | <lortabac> | I see recent commits on scotty |
| 08:22:52 | <lortabac> | same for Spock, even though the activity seems slower |
| 08:23:56 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 08:24:05 | <sm> | " if I see say 10 year old code and it works for me and compiles" - never happens in Haskell :) |
| 08:24:10 | × | califax quits (~califax@user/califx) (Ping timeout: 268 seconds) |
| 08:24:16 | <lortabac> | I'd say yesod, scotty and servant are all safe choices |
| 08:24:26 | <sm> | +1 for learning yesod |
| 08:24:27 | <retropikzel> | I wouldnt say they look bad, but yesod looks better: scotty version 0.12.0, 45 contributors last release two years ago, yesod version 1.6.24.0, 450 contributors last release 8 days ago |
| 08:25:52 | <Rembane> | Maybe scotty is done? |
| 08:26:30 | <retropikzel> | Version number suggests otherwise :/ |
| 08:26:31 | × | dextaa quits (~DV@user/dextaa) (Ping timeout: 252 seconds) |
| 08:26:45 | <lortabac> | scotty is much simpler than yesod, so it might be kind of "done", and only need version bumps and small changes |
| 08:26:48 | <sm> | yesod is the most (only) active general haskell web framework. Servant is also popular but more specialised and harder. All the smaller frameworks are less featureful |
| 08:28:21 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 252 seconds) |
| 08:31:29 | × | dcoutts__ quits (~duncan@host213-122-124-201.range213-122.btcentralplus.com) (Ping timeout: 268 seconds) |
| 08:31:43 | → | dcoutts joins (~duncan@host81-156-211-131.range81-156.btcentralplus.com) |
| 08:31:53 | → | califax joins (~califax@user/califx) |
| 08:32:11 | → | __monty__ joins (~toonn@user/toonn) |
| 08:32:23 | → | Guest3 joins (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) |
| 08:35:08 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 08:37:42 | → | mncheck-m joins (~mncheck@193.224.205.254) |
| 08:38:22 | × | Tuplanolla quits (~Tuplanoll@91-159-68-5.elisa-laajakaista.fi) (Ping timeout: 245 seconds) |
| 08:38:48 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 08:39:00 | → | gaff joins (~gaff@49.207.192.32) |
| 08:39:05 | × | gaff quits (~gaff@49.207.192.32) (Client Quit) |
| 08:40:08 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 08:40:16 | × | dcoutts quits (~duncan@host81-156-211-131.range81-156.btcentralplus.com) (Remote host closed the connection) |
| 08:40:29 | → | benin05 joins (~benin@183.82.26.87) |
| 08:40:39 | → | dcoutts joins (~duncan@host81-156-211-131.range81-156.btcentralplus.com) |
| 08:40:46 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 08:40:50 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 240 seconds) |
| 08:41:14 | <jackdk> | retropikzel: haskell uses the package versioning policy, not semver, so a 0.x.y.z number is not inherently untrustworthy |
| 08:42:11 | × | benin0 quits (~benin@2401:4900:2320:8d1e:64fa:951e:c1ff:936a) (Ping timeout: 255 seconds) |
| 08:42:11 | benin05 | is now known as benin0 |
| 08:42:52 | → | vglfr joins (~vglfr@91.192.47.10) |
| 08:43:05 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Ping timeout: 255 seconds) |
| 08:44:37 | → | dcoutts_ joins (~duncan@host86-171-69-147.range86-171.btcentralplus.com) |
| 08:45:13 | <merijn> | @where pvp |
| 08:45:13 | <lambdabot> | https://pvp.haskell.org/ |
| 08:45:27 | <merijn> | Including handy flowchart |
| 08:46:06 | × | Guest3 quits (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Quit: Textual IRC Client: www.textualapp.com) |
| 08:47:03 | × | dcoutts quits (~duncan@host81-156-211-131.range81-156.btcentralplus.com) (Ping timeout: 252 seconds) |
| 08:53:14 | → | Tuplanolla joins (~Tuplanoll@91-159-68-204.elisa-laajakaista.fi) |
| 08:55:21 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 08:56:14 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds) |
| 08:56:21 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 08:56:55 | → | bitdex_ joins (~bitdex@gateway/tor-sasl/bitdex) |
| 08:57:07 | × | cosimone quits (~user@93-44-186-171.ip98.fastwebnet.it) (Ping timeout: 245 seconds) |
| 09:00:59 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 252 seconds) |
| 09:04:35 | <retropikzel> | jackdk, good to know |
| 09:16:34 | → | use-value joins (~Thunderbi@2a00:23c6:8a03:2f01:2cec:3cb3:dd6:44cd) |
| 09:27:11 | → | PiDelport joins (uid25146@id-25146.lymington.irccloud.com) |
| 09:30:10 | → | darkstarx joins (~darkstard@50.53.212.60) |
| 09:30:56 | × | darkstardevx quits (~darkstard@50.53.212.60) (Ping timeout: 272 seconds) |
| 09:32:44 | → | sandydoo joins (~sandydoo@138.199.6.214) |
| 09:37:42 | × | ccntrq quits (~Thunderbi@2a01:c23:9433:a300:ada9:d25f:5ab0:f8a9) (Quit: ccntrq) |
| 09:37:52 | → | ccntrq1 joins (~Thunderbi@dynamic-095-116-021-181.95.116.pool.telefonica.de) |
| 09:38:44 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 09:40:10 | ccntrq1 | is now known as ccntrq |
| 09:41:25 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 09:44:19 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 09:44:43 | → | ccntrq1 joins (~Thunderbi@2a01:c23:9433:a300:ec08:871f:260c:d0ba) |
| 09:45:03 | → | dvdrw joins (~dvdrw@user/dvdrw) |
| 09:47:20 | × | ccntrq quits (~Thunderbi@dynamic-095-116-021-181.95.116.pool.telefonica.de) (Ping timeout: 268 seconds) |
| 09:47:20 | ccntrq1 | is now known as ccntrq |
| 09:51:27 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 09:51:27 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 09:51:27 | × | azimut_ quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 09:52:12 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 09:52:19 | → | gmg joins (~user@user/gehmehgeh) |
| 09:52:20 | → | califax joins (~califax@user/califx) |
| 09:53:47 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds) |
| 09:57:03 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 09:58:17 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 09:58:25 | → | mbuf joins (~Shakthi@122.165.55.71) |
| 10:00:40 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:da37:e623:a34b:34ad) (Quit: WeeChat 2.8) |
| 10:04:14 | × | codaraxis quits (~codaraxis@user/codaraxis) (Quit: Leaving) |
| 10:04:29 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 10:10:38 | → | Haskelytic joins (~Haskelyti@118.179.211.17) |
| 10:21:48 | → | JannisO joins (~JannisO@dyndsl-089-166-213-108.ewe-ip-backbone.de) |
| 10:27:31 | × | use-value quits (~Thunderbi@2a00:23c6:8a03:2f01:2cec:3cb3:dd6:44cd) (Quit: use-value) |
| 10:34:37 | × | Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 245 seconds) |
| 10:36:42 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds) |
| 10:38:42 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 10:40:44 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 10:43:18 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 264 seconds) |
| 10:44:29 | → | Sciencentistguy joins (~sciencent@hacksoc/ordinary-member) |
| 10:44:58 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Ping timeout: 240 seconds) |
| 10:46:00 | × | bitdex_ quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds) |
| 10:47:31 | → | slack1256 joins (~slack1256@186.11.19.31) |
| 10:49:34 | → | bitdex_ joins (~bitdex@gateway/tor-sasl/bitdex) |
| 10:50:37 | × | Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 252 seconds) |
| 10:51:36 | → | dcoutts joins (~duncan@host86-171-69-147.range86-171.btcentralplus.com) |
| 10:51:42 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds) |
| 10:51:46 | × | Haskelytic quits (~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds) |
| 10:52:05 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 252 seconds) |
| 10:52:27 | × | vglfr quits (~vglfr@91.192.47.10) (Ping timeout: 252 seconds) |
| 10:53:56 | × | dcoutts_ quits (~duncan@host86-171-69-147.range86-171.btcentralplus.com) (Ping timeout: 268 seconds) |
| 10:54:03 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 11:00:28 | × | bitdex_ quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 11:01:37 | → | bitdex_ joins (~bitdex@gateway/tor-sasl/bitdex) |
| 11:01:57 | × | bitdex_ quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 11:02:49 | → | elkcl_ joins (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) |
| 11:03:19 | → | bitdex_ joins (~bitdex@gateway/tor-sasl/bitdex) |
| 11:04:13 | × | elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 272 seconds) |
| 11:04:13 | elkcl_ | is now known as elkcl |
| 11:04:42 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 11:07:44 | → | Sciencentistguy joins (~sciencent@hacksoc/ordinary-member) |
| 11:09:23 | <slack1256> | I got a memory leak and my heap is dominated by PINNED values. Obviously these are bytestrings or text, but I use them in lots of places. The `-hc` flag on the RTS does not tell more info apart from telling it is PINNED. What could I do to diagnose it? |
| 11:19:15 | × | joo-__ quits (~joo-_@fsf/member/joo--) (Quit: leaving) |
| 11:20:48 | → | maroloccio joins (~marolocci@151.75.246.79) |
| 11:28:01 | × | Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 252 seconds) |
| 11:38:07 | → | dcoutts_ joins (~duncan@host86-171-69-147.range86-171.btcentralplus.com) |
| 11:40:29 | × | dcoutts quits (~duncan@host86-171-69-147.range86-171.btcentralplus.com) (Ping timeout: 252 seconds) |
| 11:42:32 | × | misterfish quits (~misterfis@ip214-130-173-82.adsl2.static.versatel.nl) (Ping timeout: 245 seconds) |
| 11:42:45 | × | bitdex_ quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 11:45:22 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:5e54:cd53:db4:c25f) |
| 11:46:21 | → | Sciencentistguy joins (~sciencent@hacksoc/ordinary-member) |
| 11:58:31 | → | yauhsien joins (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) |
| 12:02:57 | × | yauhsien quits (~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 245 seconds) |
| 12:03:26 | → | alp__ joins (~alp@user/alp) |
| 12:03:29 | × | alp_ quits (~alp@user/alp) (Read error: Connection reset by peer) |
| 12:05:09 | → | Sciencentistguy6 joins (~sciencent@hacksoc/ordinary-member) |
| 12:05:38 | × | loonycyborg quits (loonycybor@wesnoth/developer/loonycyborg) (Quit: ZNC - http://znc.sourceforge.net) |
| 12:06:13 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 12:06:25 | → | loonycyborg joins (loonycybor@wesnoth/developer/loonycyborg) |
| 12:06:37 | → | califax joins (~califax@user/califx) |
| 12:07:07 | × | Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 245 seconds) |
| 12:07:07 | Sciencentistguy6 | is now known as Sciencentistguy |
| 12:07:46 | → | jumper149 joins (~jumper149@base.felixspringer.xyz) |
| 12:08:40 | <geekosaur> | what ghc version? I think better diagnostics for PINNED values were added to some 9.2.x version (try 9.2.3 or 9.2.4) |
| 12:08:58 | <geekosaur> | also text doesn't used pinned memory, only ByteString |
| 12:17:31 | <albet70> | zip <*> tail = \x -> zip x $ tail x |
| 12:17:48 | <albet70> | what's the (>>=) for Reader? |
| 12:21:54 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
| 12:21:54 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 12:21:54 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 12:21:54 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Write error: Connection reset by peer) |
| 12:21:54 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 12:21:54 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 12:22:11 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 12:22:18 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 12:22:27 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 12:22:31 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 12:22:32 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 12:22:51 | → | gmg joins (~user@user/gehmehgeh) |
| 12:23:07 | → | king_gs joins (~Thunderbi@187.201.95.222) |
| 12:23:40 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 12:33:07 | → | waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
| 12:39:29 | → | benin04 joins (~benin@2401:4900:2320:8d1e:64fa:951e:c1ff:936a) |
| 12:39:52 | <tomsmeding> | slack1256: are you taking huge bytestrings, slicing out a small portion of them, and keeping around only the small portion? |
| 12:40:34 | <tomsmeding> | If so, `copy` might be worth looking at |
| 12:41:51 | × | benin0 quits (~benin@183.82.26.87) (Ping timeout: 268 seconds) |
| 12:41:51 | × | king_gs quits (~Thunderbi@187.201.95.222) (Read error: Connection reset by peer) |
| 12:41:52 | benin04 | is now known as benin0 |
| 12:42:25 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 12:43:53 | → | king_gs joins (~Thunderbi@2806:103e:29:a1b3:d33d:90f:3255:af90) |
| 12:46:36 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Ping timeout: 244 seconds) |
| 12:46:38 | → | dcoutts__ joins (~duncan@host86-153-247-157.range86-153.btcentralplus.com) |
| 12:46:51 | → | Marco joins (~user@2a02:1210:18fa:5900:a235:adab:297c:fca6) |
| 12:47:07 | × | nschoe quits (~quassel@178.251.84.79) (Ping timeout: 244 seconds) |
| 12:47:21 | <jackdk> | :t (>>=) |
| 12:47:23 | <lambdabot> | Monad m => m a -> (a -> m b) -> m b |
| 12:47:38 | <jackdk> | you have `instance Monad ((->) r)`, so substitute that in for `m` and rearrange |
| 12:48:29 | <jackdk> | `((->) r a) -> (a -> ((->) r b) -> ((->) r) b` => `(r -> a) -> (a -> r -> b) -> r -> b` => There is exactly one sensible function with this type |
| 12:49:03 | × | dcoutts_ quits (~duncan@host86-171-69-147.range86-171.btcentralplus.com) (Ping timeout: 252 seconds) |
| 12:49:47 | → | benin07 joins (~benin@183.82.26.87) |
| 12:51:16 | <albet70> | which function? |
| 12:51:19 | × | phma quits (~phma@host-67-44-208-69.hnremote.net) (Read error: Connection reset by peer) |
| 12:51:47 | × | benin0 quits (~benin@2401:4900:2320:8d1e:64fa:951e:c1ff:936a) (Ping timeout: 244 seconds) |
| 12:51:47 | benin07 | is now known as benin0 |
| 12:52:16 | → | phma joins (~phma@2001:5b0:212a:aa18:3c2a:7f07:f53f:a9d9) |
| 12:59:17 | ← | retropikzel parts (9d1a4f9f46@2604:bf00:561:2000::ce) () |
| 13:01:54 | × | maroloccio quits (~marolocci@151.75.246.79) (Quit: WeeChat 3.0) |
| 13:03:50 | → | sandy_doo joins (~sandydoo@185.115.6.24) |
| 13:04:34 | <jackdk> | it doesn't matter what you call it, there can be only one |
| 13:04:49 | <jackdk> | @djinn (r -> a) -> (a -> r -> b) -> r -> b |
| 13:04:49 | <lambdabot> | f a b c = b (a c) c |
| 13:05:14 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 13:05:44 | <hasbae> | is that one of the bird combinators? |
| 13:05:55 | × | sandydoo quits (~sandydoo@138.199.6.214) (Ping timeout: 252 seconds) |
| 13:06:04 | → | gmg joins (~user@user/gehmehgeh) |
| 13:06:43 | <jackdk> | It's >>= for the "reader monad" aka "function" aka `(->) r` instance |
| 13:10:00 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 13:12:46 | × | gmg quits (~user@user/gehmehgeh) (Ping timeout: 268 seconds) |
| 13:12:52 | × | alp__ quits (~alp@user/alp) (Remote host closed the connection) |
| 13:13:16 | → | alp__ joins (~alp@user/alp) |
| 13:13:40 | → | gmg joins (~user@user/gehmehgeh) |
| 13:14:53 | × | acidjnk quits (~acidjnk@p200300d6e7058640883c7bf2a50d2bab.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 13:17:05 | <slack1256> | tomsmeding: The producer of these bytestring is an underlying library. I do source access to it. The main difficulty is knowing on which cost-center are these PINNED values allocated on an unfamiliar code base. |
| 13:17:47 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 13:18:01 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 13:19:50 | × | king_gs quits (~Thunderbi@2806:103e:29:a1b3:d33d:90f:3255:af90) (Ping timeout: 240 seconds) |
| 13:21:05 | × | enemeth79 quits (uid309041@id-309041.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 13:22:28 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 13:23:18 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 13:23:20 | <albet70> | jackdk, <*> zip tail x = zip x (tail x); <*> a b c = a c (b c); >>= a b c = b (a c) c; could <*> and >>= be in an relation? |
| 13:23:40 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 13:25:00 | <geekosaur> | take a look at ap |
| 13:25:08 | <geekosaur> | @src ap |
| 13:25:08 | <lambdabot> | ap = liftM2 id |
| 13:25:24 | <geekosaur> | @src liftM2 |
| 13:25:24 | <lambdabot> | liftM2 f m1 m2 = do |
| 13:25:24 | <lambdabot> | x1 <- m1 |
| 13:25:24 | <lambdabot> | x2 <- m2 |
| 13:25:24 | <lambdabot> | return (f x1 x2) |
| 13:26:31 | <geekosaur> | Applicative didn't exist back then, so we did it with Monad |
| 13:30:39 | <albet70> | I don't get it |
| 13:30:52 | <albet70> | what mean didn't exist |
| 13:31:55 | <albet70> | liftM2 is fmap a binary on two m a |
| 13:32:48 | → | joo-__ joins (~joo-_@172-105-65-159.ip.linodeusercontent.com) |
| 13:32:48 | × | joo-__ quits (~joo-_@172-105-65-159.ip.linodeusercontent.com) (Changing host) |
| 13:32:48 | → | joo-__ joins (~joo-_@fsf/member/joo--) |
| 13:35:44 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 13:36:24 | <jackdk> | `(<*>) @((->) r) :: ((->) r (a -> b) -> ((->) r) a -> ((->) r) b` => `(r -> a -> b) -> (r -> a) -> r -> b`; seems like you move between that and >>= _for this monad only_ because everything is `->` |
| 13:37:02 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 13:39:18 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 13:40:40 | <geekosaur> | liftM2 is noiw liftA2, ap is now <*>, etc. |
| 13:40:51 | <geekosaur> | we did not have `class Applicative` originally |
| 13:41:31 | <geekosaur> | (and we didn't have Functor as a prerequisite for Monad, so liftM reconstructed fmap from >>😃 |
| 13:41:35 | <geekosaur> | gah |
| 13:41:38 | <geekosaur> | (and we didn't have Functor as a prerequisite for Monad, so liftM reconstructed fmap from >>= ) |
| 13:44:38 | × | slack1256 quits (~slack1256@186.11.19.31) (Remote host closed the connection) |
| 13:45:10 | × | xff0x quits (~xff0x@2405:6580:b080:900:f2c8:df52:4c4b:1c78) (Ping timeout: 240 seconds) |
| 13:47:17 | → | xff0x joins (~xff0x@ae129043.dynamic.ppp.asahi-net.or.jp) |
| 13:50:02 | × | sandy_doo quits (~sandydoo@185.115.6.24) (Ping timeout: 245 seconds) |
| 13:50:47 | × | ccntrq quits (~Thunderbi@2a01:c23:9433:a300:ec08:871f:260c:d0ba) (Remote host closed the connection) |
| 13:51:03 | → | nschoe joins (~quassel@178.251.84.79) |
| 13:52:35 | × | benin0 quits (~benin@183.82.26.87) (Quit: The Lounge - https://thelounge.chat) |
| 13:53:25 | <c_wraith> | tomsmeding: actually, polytypic and ad-hoc are slightly different things. polytypic refers to the more narrow case of a definition having multiple instantiations. But it's not a transitive property. So like (+) is polytypic because it has a different definition at each type, but x = 1 + 1 is not. It has the same definition at each type, even if one of the components is polytypic. It's about whether you can write a uniform definition for something across |
| 13:53:26 | <c_wraith> | all ad-hoc instances, or whether you need to write each type's version of that definition separately. |
| 13:54:05 | × | gmg quits (~user@user/gehmehgeh) (Ping timeout: 268 seconds) |
| 13:55:25 | → | misterfish joins (~misterfis@87.215.131.98) |
| 13:55:41 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 13:56:08 | → | benin0 joins (~benin@183.82.30.242) |
| 13:56:22 | → | gmg joins (~user@user/gehmehgeh) |
| 13:58:08 | → | coot joins (~coot@213.134.190.95) |
| 14:02:02 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 14:10:12 | <albet70> | I wonder when Cont expressed by (->) r, what they mean |
| 14:10:13 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 14:15:32 | <int-e> | Hmm, that seems odd (why is r the first argument here? That's Reader...) But they could mean working with functions of type (a -> r) -> r instead of the Cont r a newtype? |
| 14:15:59 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 14:16:20 | <albet70> | Cont f >>= g = \ar -> f (\a -> g a ar) |
| 14:16:39 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 14:18:47 | × | jespada quits (~jespada@45.162.228.187) (Ping timeout: 245 seconds) |
| 14:19:22 | → | jespada joins (~jespada@181.80.249.105) |
| 14:25:41 | → | acidjnk joins (~acidjnk@p200300d6e7058640883c7bf2a50d2bab.dip0.t-ipconnect.de) |
| 14:28:00 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 14:30:02 | × | jespada quits (~jespada@181.80.249.105) (Ping timeout: 245 seconds) |
| 14:31:31 | → | jespada joins (~jespada@181.80.249.105) |
| 14:35:39 | → | motherfsck joins (~motherfsc@user/motherfsck) |
| 14:39:30 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 14:40:03 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 14:42:43 | × | MajorBiscuit quits (~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl) (Ping timeout: 252 seconds) |
| 14:42:43 | × | jespada quits (~jespada@181.80.249.105) (Ping timeout: 268 seconds) |
| 14:43:53 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 14:44:16 | → | zebrag joins (~chris@user/zebrag) |
| 14:44:24 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 14:47:00 | → | shriekingnoise joins (~shrieking@186.137.167.202) |
| 14:48:01 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Ping timeout: 244 seconds) |
| 14:50:46 | → | moonsheep joins (~user@user/moonsheep) |
| 14:53:42 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 14:54:25 | → | zzz joins (~yin@user/zero) |
| 14:59:17 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:5e54:cd53:db4:c25f) (Quit: WeeChat 2.8) |
| 14:59:50 | × | acidjnk quits (~acidjnk@p200300d6e7058640883c7bf2a50d2bab.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 15:02:05 | → | jespada joins (~jespada@181.80.249.105) |
| 15:04:53 | × | moonsheep quits (~user@user/moonsheep) (Quit: ERC 5.4 (IRC client for GNU Emacs 28.1)) |
| 15:09:10 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 15:10:57 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 252 seconds) |
| 15:13:22 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 15:13:49 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 15:13:57 | × | noteness quits (~noteness@user/noteness) (Remote host closed the connection) |
| 15:14:06 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 15:14:35 | → | noteness joins (~noteness@user/noteness) |
| 15:14:39 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 15:18:21 | → | sandy_doo joins (~sandydoo@185.209.196.136) |
| 15:18:42 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 15:19:23 | → | gmg joins (~user@user/gehmehgeh) |
| 15:24:58 | × | naso quits (~naso@193-116-244-197.tpgi.com.au) () |
| 15:31:25 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 15:33:05 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Quit: ChaiTRex) |
| 15:41:22 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 15:43:26 | × | chele quits (~chele@user/chele) (Quit: Leaving) |
| 15:45:29 | → | younder joins (~younder@33.51-174-155.customer.lyse.net) |
| 15:45:33 | → | acidjnk joins (~acidjnk@p200300d6e7058640883c7bf2a50d2bab.dip0.t-ipconnect.de) |
| 15:45:47 | × | dcoutts__ quits (~duncan@host86-153-247-157.range86-153.btcentralplus.com) (Remote host closed the connection) |
| 15:45:54 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 15:46:06 | → | dcoutts__ joins (~duncan@host86-153-247-157.range86-153.btcentralplus.com) |
| 15:46:42 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds) |
| 15:47:20 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 15:48:39 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 15:49:13 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds) |
| 15:51:19 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 15:52:21 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 15:52:41 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 15:56:42 | × | sandy_doo quits (~sandydoo@185.209.196.136) (Ping timeout: 245 seconds) |
| 16:03:38 | <zebrag> | What is "free" for in "free algebras"? "Its left adjoint is then called free, because it freely ad-libs the forgotten information" ([cite:@milewskiFreydAdjointFunctor2020]) Is the view above "generally accepted to some point"? Can we embed "free variables" in this "freeness" setting? |
| 16:03:56 | → | dcoutts joins (~duncan@host86-171-59-23.range86-171.btcentralplus.com) |
| 16:04:07 | × | dcoutts__ quits (~duncan@host86-153-247-157.range86-153.btcentralplus.com) (Ping timeout: 252 seconds) |
| 16:04:56 | <c_wraith> | free means a lot of different things. I doubt you can connect all of them into an especially coherent picture. |
| 16:05:12 | <zebrag> | I'm troubled because when we speak of free variables, they are not free at all. It seems to me that in many circumstances they are even more constrained than bound variables |
| 16:05:27 | <zebrag> | c_wraith: Oh, okay |
| 16:05:39 | <c_wraith> | heck, "free" doesn't even mean exactly the same thing in the phrases "free monoid" and "free monad" |
| 16:06:41 | → | dcoutts_ joins (~duncan@host86-171-59-23.range86-171.btcentralplus.com) |
| 16:07:05 | × | zzz quits (~yin@user/zero) (Ping timeout: 244 seconds) |
| 16:07:47 | × | elkcl quits (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 252 seconds) |
| 16:08:09 | × | dcoutts quits (~duncan@host86-171-59-23.range86-171.btcentralplus.com) (Ping timeout: 252 seconds) |
| 16:09:16 | <zebrag> | About those two later instances, they seem related to me. With a free monoid you can perform any reduction you want. And similarly with free monad |
| 16:09:25 | <zebrag> | but free variables miust be out of that scope |
| 16:09:55 | → | king_gs joins (~Thunderbi@2806:103e:29:a1b3:f2e8:e66c:24a2:a2e8) |
| 16:10:21 | <zebrag> | is there a famous paper on the use of word "free" in math? |
| 16:10:49 | <c_wraith> | that's actually what's different between a free monoid and a free monad. A free monoid can do any monoidal reduction. A free monad can't. |
| 16:11:12 | <c_wraith> | Famously, you can't embed continuations in a free monad. |
| 16:11:58 | <zebrag> | I'll look into that later point that seems fun |
| 16:12:13 | × | califax quits (~califax@user/califx) (Ping timeout: 268 seconds) |
| 16:12:48 | <zebrag> | "I'm not a number I'm a free variable" https://twitter.com/kmett/status/1532179249095970816 |
| 16:15:09 | <younder> | Pretty much.. Free means unbound. |
| 16:15:20 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 16:15:20 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 16:15:20 | finn_elija | is now known as FinnElija |
| 16:15:50 | → | califax joins (~califax@user/califx) |
| 16:15:56 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 16:16:03 | <c_wraith> | free variables are definitely a can of worms. There are contexts where free variables are only fictions of analysis. "x is free in the definition of g, but g is part of the definition of f which does bind x" |
| 16:16:50 | <zebrag> | Maybe on the one hand you have freeness as being able to do whatever you want, when in the other hand you have freeness as out of jail card (can't be captured) |
| 16:16:54 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 16:16:58 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 16:17:08 | <zebrag> | can of worms: I concur |
| 16:17:09 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds) |
| 16:17:11 | <c_wraith> | There are other contexts where free variables really can exist, but they're much less likely to be programming languages. |
| 16:18:01 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 16:18:03 | <younder> | More like a free variable need a bunch of constraints to be satisied before being bound. |
| 16:19:22 | × | dknite quits (~dknite@49.37.45.188) (Read error: Connection reset by peer) |
| 16:19:38 | → | dknite joins (~dknite@94.198.43.71) |
| 16:20:15 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds) |
| 16:20:19 | <c_wraith> | (programming languages tend to frown on truly unbound variables) |
| 16:21:17 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 16:21:42 | <c_wraith> | > foo + 1 |
| 16:21:44 | <lambdabot> | error: |
| 16:21:44 | <lambdabot> | • Variable not in scope: foo |
| 16:21:44 | <lambdabot> | • Perhaps you meant ‘for’ (imported from Data.Traversable) |
| 16:21:51 | <c_wraith> | but it's free! |
| 16:22:14 | <younder> | Well the general rule is to define a varaibe only when you have something to assign to it. (If the language allows it) |
| 16:22:25 | <zebrag> | c_wraith: yes, being free for a variable depends on which part of the lambda-expression you are considering, and when you see them as "free", it's because their constraints are hidden in the environment/context. So not so free in that matter. |
| 16:22:43 | <zebrag> | and "programming languages tend to frown on truly unbound variables" |
| 16:22:50 | <hasbae> | is it correct to say that Base is a package, and that Prelude is one of the modules in the Base package? |
| 16:23:00 | <merijn> | hasbae: Yes |
| 16:23:02 | <c_wraith> | hasbae: yes, though the package name is all lowercase |
| 16:23:50 | × | dknite quits (~dknite@94.198.43.71) (Ping timeout: 240 seconds) |
| 16:23:51 | <zebrag> | c_wraith: thanks for sharing your pov on the free variables thing |
| 16:24:23 | <hasbae> | and Prelude is implicitly imported... does base have any kind of special treatment different than some other package? |
| 16:25:08 | <geekosaur> | base is very different, it's hardwired into the compiler |
| 16:25:08 | <c_wraith> | base has a few special things in it. First and foremost, it's wired in to GHC - you can't change versions of base without changing versions of GHC |
| 16:25:25 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 16:25:55 | <c_wraith> | base also has some placeholder definitions in it that are there only to provide documentation stubs for things truly built into the compiler, like the (->) type |
| 16:26:04 | → | dknite joins (~dknite@49.37.45.188) |
| 16:26:11 | <c_wraith> | No other package gets to do that. :) |
| 16:26:33 | <hasbae> | is base statically compiled into ghc? |
| 16:26:56 | × | mbuf quits (~Shakthi@122.165.55.71) (Quit: Leaving) |
| 16:26:57 | <geekosaur> | by default, yes |
| 16:27:03 | <c_wraith> | that question can be interpreted in several ways. |
| 16:27:10 | <c_wraith> | It might be worth clarifying. |
| 16:27:40 | <c_wraith> | like.. ghc is a haskell program, usually compiled by a previous version of ghc. When it does that, it statically links in definitions from base. |
| 16:27:46 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
| 16:28:11 | <c_wraith> | At the same time, the base library is a separate set of files from the ghc binary in an installation of ghc. |
| 16:28:52 | <hasbae> | here it says https://hackage.haskell.org/package/base "contains a large of collection of useful libraries", so I'm wondering if the use of library means a compiled piece of code that is linked into ghc. |
| 16:29:18 | <c_wraith> | your terminology is ambiguous again |
| 16:29:28 | <c_wraith> | only the things ghc uses are linked into ghc. |
| 16:29:30 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 16:29:43 | <younder> | ? |
| 16:29:50 | <c_wraith> | but ghc is hard-wired to use a specific version of base |
| 16:30:41 | <c_wraith> | the problem is the ambiguity of the word "link". |
| 16:30:41 | <hasbae> | what part of my terminology is ambiguous? |
| 16:31:16 | <c_wraith> | "linking" is a very specific part of compilation, in which units which have been compiled separately are combined together into an executable or library. |
| 16:31:20 | × | zxx7529 quits (~Thunderbi@user/zxx7529) (Remote host closed the connection) |
| 16:31:56 | × | kuribas quits (~user@silversquare.silversquare.eu) (Quit: ERC (IRC client for Emacs 26.3)) |
| 16:31:57 | <hasbae> | yeah, that's what I mean. What other interpretation do you have? |
| 16:31:58 | <c_wraith> | But you can also say "a specific version of ghc is linked to a specific version of base" using a more colloquial definition of "link" and be correct |
| 16:32:00 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 16:32:14 | <hasbae> | ok, i don't mean the colloquial version. |
| 16:32:31 | <c_wraith> | So.. base has a lot of stuff in it. I'm willing to bet ghc doesn't use *all* of it. |
| 16:32:31 | <dolio> | zebrag: Free in the context of algebra means a similar thing to data types. You take some unstructured set (or similar) and add all the algebraic structure as sort of uninterpreted syntax, except the syntax is identified by any equations of the algebra. |
| 16:33:05 | <geekosaur> | you can also use it to mean the interrelationships themselves (the collection of "wired-in" and "known-key" types and values defined in base that ghc uses) |
| 16:33:17 | <younder> | Clearly GHC interfaces to other languages than Haskell. Like the Linux core is written i C. So there is a huge amount of Code that is not as rigorously tested for errors as is Haskell. |
| 16:33:31 | <c_wraith> | when ghc is built, it links against base, and a lot of base gets included into it. But when ghc is distributed, it includes full copies of the base library so that it can hand them to the linker when linking code it compiles. |
| 16:33:33 | <dolio> | Data types are very simple free algebras; the constructors are the operation you add, and there are no equations. |
| 16:33:53 | <hasbae> | ok. i wanted a better overview of the relationship of base and prelude, both from a haskell POV, and one layer underneath. so thanks :>, and sorry for being ambiguous |
| 16:34:10 | <c_wraith> | not a problem, I just wanted to be sure to answer the question you meant to ask. :) |
| 16:34:14 | <dolio> | And the unstructured type it's building on is empty. |
| 16:36:43 | × | misterfish quits (~misterfis@87.215.131.98) (Ping timeout: 272 seconds) |
| 16:37:35 | <younder> | I find Haskell/Rust a appealing combo. |
| 16:38:06 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 16:39:39 | <c_wraith> | I wish I could find some less-tutorial rust introductions. I don't want to be hand-held through a bunch of projects, I want to be told "here's a construct, go play with it" |
| 16:41:04 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection) |
| 16:41:26 | <younder> | I read 'Rust for rustations' by Jon Engseth. That is beyond introductory. |
| 16:44:30 | × | Marco quits (~user@2a02:1210:18fa:5900:a235:adab:297c:fca6) (Remote host closed the connection) |
| 16:46:07 | × | ridcully quits (~ridcully@p57b5221a.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
| 16:46:24 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 16:47:53 | → | ridcully joins (~ridcully@pd951fca3.dip0.t-ipconnect.de) |
| 16:50:08 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 16:52:07 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds) |
| 16:54:22 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 16:54:36 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
| 16:58:52 | <zebrag> | I was just thinking about that. They say iron-oxide. Other people say it is related to Mozilla. |
| 16:59:45 | <darkling> | I thought rust was named for the fungi? |
| 16:59:46 | × | benin0 quits (~benin@183.82.30.242) (Quit: The Lounge - https://thelounge.chat) |
| 17:00:07 | <zebrag> | "Graydon Hoare designed Rust while working at Mozilla" |
| 17:00:09 | → | sandy_doo joins (~sandydoo@185.209.196.136) |
| 17:00:13 | <zebrag> | yes there is a fungi too |
| 17:01:26 | <younder> | Anyhow both have algebraic proof system as basis for their type system. |
| 17:01:41 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 17:01:49 | → | mvk joins (~mvk@2607:fea8:5ce3:8500::311d) |
| 17:02:10 | <zebrag> | (you mean rust and the fungi) |
| 17:02:13 | <younder> | So they produce robust programs |
| 17:02:25 | <younder> | Haskell and Rust |
| 17:05:43 | × | machinedgod quits (~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 252 seconds) |
| 17:06:36 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
| 17:07:09 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 17:07:57 | × | vgtw quits (~vgtw@user/vgtw) (Ping timeout: 276 seconds) |
| 17:12:05 | <zebrag> | Seriously rust seems a good thing, if only because it's not c++. I'm wondering to what extent it could replace python. |
| 17:12:34 | → | MajorBiscuit joins (~MajorBisc@c-001-026-031.client.tudelft.eduvpn.nl) |
| 17:13:01 | <zebrag> | (so far I've never been able to compile a single rust thing, but I didn't spend so much time on it) |
| 17:16:14 | <zebrag> | https://towardsdatascience.com/learning-rust-by-converting-python-to-rust-259e735591c6 |
| 17:16:56 | → | pavonia joins (~user@user/siracusa) |
| 17:18:33 | × | sandy_doo quits (~sandydoo@185.209.196.136) (Ping timeout: 252 seconds) |
| 17:23:17 | → | vgtw joins (~vgtw@user/vgtw) |
| 17:23:41 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds) |
| 17:24:39 | → | brence joins (~brence@45.240.170.35) |
| 17:25:40 | → | mikail joins (~mikail@2a02:c7f:bc47:8c00:5aa7:b193:11e3:d108) |
| 17:25:44 | <brence> | What's the memory overhead/footprint of the info table for a fully evaluated value? |
| 17:26:12 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 17:26:16 | <mikail> | what happened to that haskell discord server? does it no longer exist? I can't find an invite to it anywhere... |
| 17:27:55 | <geekosaur> | brence, I'm not sure that question is meaningful |
| 17:28:11 | gehmehgeh | is now known as gmg |
| 17:28:13 | <geekosaur> | an info table is associated with a type, and is compiled in |
| 17:29:15 | → | econo joins (uid147250@user/econo) |
| 17:30:02 | × | yin quits (~yin@user/zero) (Ping timeout: 245 seconds) |
| 17:30:19 | <brence> | geekosaur what do you mean by compiled in? |
| 17:30:29 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 17:31:04 | <geekosaur> | it becomes part of the Haskell binary |
| 17:31:11 | <geekosaur> | only one is needed for each type |
| 17:32:48 | <brence> | that also holds for dynamically constructed closures? |
| 17:33:35 | <geekosaur> | their types are statically known, so yes |
| 17:34:39 | <c_wraith> | there is overhead for GC headers per value, but there's no info table required. |
| 17:35:52 | <brence> | are GC headers different than the heap object header? |
| 17:36:01 | <brence> | for some value |
| 17:37:10 | <c_wraith> | that sounds like the same thing. it's a bit field that indicates what fields are pointers to heap values. |
| 17:38:01 | × | mvk quits (~mvk@2607:fea8:5ce3:8500::311d) (Ping timeout: 244 seconds) |
| 17:39:10 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 17:40:40 | × | dknite quits (~dknite@49.37.45.188) (Read error: Connection reset by peer) |
| 17:40:54 | → | dknite joins (~dknite@94.198.43.103) |
| 17:43:32 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Ping timeout: 255 seconds) |
| 17:44:36 | → | mvk joins (~mvk@2607:fea8:5ce3:8500::311d) |
| 17:45:00 | <brence> | From what I understand, the constructor of a type occupies one word. That word is the header which has a pointer to the info table, and has the constructor tag in the last 2/3 bits and an indicator for evaluatedness. Is the bit field that indicates what fields are pointers also part of this header? |
| 17:45:04 | × | alternateved quits (~user@staticline-31-183-144-54.toya.net.pl) (Remote host closed the connection) |
| 17:49:04 | <qrpnxz> | hasbae: join is warbler, bind is (blackbird warbler blue) |
| 17:49:55 | <qrpnxz> | blue as in bluebird |
| 17:50:20 | → | sandy_doo joins (~sandydoo@185.209.196.136) |
| 17:50:25 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 17:50:51 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 17:51:20 | → | alternateved joins (~user@staticline-31-183-144-54.toya.net.pl) |
| 17:51:42 | × | dknite quits (~dknite@94.198.43.103) (Ping timeout: 245 seconds) |
| 17:51:46 | → | k8yun joins (~k8yun@user/k8yun) |
| 17:52:02 | <hasbae> | qrpnxz: thanks! relatedly, I recently saw a video of a kestrel flying, and thought it was an apt choice for the I combinator |
| 17:52:17 | <hasbae> | i mean K combinator |
| 17:52:18 | <qrpnxz> | kestrel is K |
| 17:52:20 | <qrpnxz> | lol |
| 17:52:23 | <qrpnxz> | 💀 |
| 17:52:34 | → | dknite joins (~dknite@49.37.45.188) |
| 17:52:46 | <qrpnxz> | kestrel is the red bird right? |
| 17:52:47 | <qrpnxz> | pretty |
| 17:54:29 | <hasbae> | I see it closer to brown... https://youtu.be/7j6OsP7zL6w, but my color choices have been questioned before |
| 17:54:37 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 17:55:21 | <qrpnxz> | mmm, i was probably thinking of a totally different bird |
| 17:55:24 | <qrpnxz> | maybe the cardinal |
| 17:55:46 | <hasbae> | cardinal is certainly red |
| 17:56:19 | × | nschoe quits (~quassel@178.251.84.79) (Ping timeout: 252 seconds) |
| 17:57:44 | → | codaraxis joins (~codaraxis@user/codaraxis) |
| 17:58:31 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 17:59:30 | × | chomwitt quits (~chomwitt@2a02:587:dc00:5a00:8d6e:98d7:e6d8:2a33) (Ping timeout: 240 seconds) |
| 17:59:55 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 18:00:39 | → | dcoutts__ joins (~duncan@host109-154-231-142.range109-154.btcentralplus.com) |
| 18:01:16 | → | cosimone joins (~user@93-44-186-171.ip98.fastwebnet.it) |
| 18:01:17 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds) |
| 18:01:59 | <hasbae> | qrpnxz: I had to look up blackbird. It's not in the mockingbird book |
| 18:02:39 | Lord_of_Life_ | is now known as Lord_of_Life |
| 18:02:43 | × | king_gs quits (~Thunderbi@2806:103e:29:a1b3:f2e8:e66c:24a2:a2e8) (Quit: king_gs) |
| 18:03:44 | × | codaraxis quits (~codaraxis@user/codaraxis) (Quit: Leaving) |
| 18:03:45 | × | dcoutts_ quits (~duncan@host86-171-59-23.range86-171.btcentralplus.com) (Ping timeout: 268 seconds) |
| 18:04:05 | <brence> | c_wraith is the GC header part of the object's pointer? |
| 18:06:12 | <c_wraith> | uh. not completely sure what you're asking, but... I don't think so. pointers can be tagged with whether they're evaluated or not, but the GC header is part of the heap value |
| 18:06:56 | × | dcoutts__ quits (~duncan@host109-154-231-142.range109-154.btcentralplus.com) (Ping timeout: 244 seconds) |
| 18:08:06 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 18:08:12 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 18:08:40 | <brence> | makes sense, thanks! |
| 18:08:41 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Remote host closed the connection) |
| 18:11:06 | <hasbae> | qrpnxz: warbler's type signature is (a->a->b)->a->b, so how is that same as join:: a -> m a? |
| 18:12:20 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 18:14:48 | <c_wraith> | that's not the type of join |
| 18:14:53 | <c_wraith> | :t join |
| 18:14:54 | <lambdabot> | Monad m => m (m a) -> m a |
| 18:15:42 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 18:16:02 | <hasbae> | oops |
| 18:16:23 | <hasbae> | now it makes sense |
| 18:17:01 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 18:20:32 | → | elkcl joins (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) |
| 18:20:52 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 245 seconds) |
| 18:22:02 | → | dcoutts joins (~duncan@host86-184-242-54.range86-184.btcentralplus.com) |
| 18:25:37 | → | dcoutts_ joins (~duncan@host86-184-129-152.range86-184.btcentralplus.com) |
| 18:26:22 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 18:27:51 | × | malte quits (~malte@mal.tc) (Ping timeout: 252 seconds) |
| 18:28:13 | × | dcoutts quits (~duncan@host86-184-242-54.range86-184.btcentralplus.com) (Ping timeout: 252 seconds) |
| 18:29:49 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 18:29:56 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 18:31:56 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 18:32:00 | <qrpnxz> | lol |
| 18:32:47 | <qrpnxz> | a -> m a would be pure, which is kestrel :) |
| 18:32:56 | <qrpnxz> | (const) |
| 18:33:06 | → | dcoutts joins (~duncan@host86-184-129-152.range86-184.btcentralplus.com) |
| 18:34:22 | → | malte joins (~malte@mal.tc) |
| 18:34:35 | × | dcoutts_ quits (~duncan@host86-184-129-152.range86-184.btcentralplus.com) (Ping timeout: 268 seconds) |
| 18:39:00 | × | dcoutts quits (~duncan@host86-184-129-152.range86-184.btcentralplus.com) (Ping timeout: 260 seconds) |
| 18:39:51 | → | causal joins (~user@2001:470:ea0f:3:329c:23ff:fe3f:1e0e) |
| 18:41:36 | <EvanR> | haskell is supposedly purely functional. But it only has 1 pure function |
| 18:41:58 | → | dcoutts joins (~duncan@host109-149-1-170.range109-149.btcentralplus.com) |
| 18:42:05 | × | k8yun quits (~k8yun@user/k8yun) (Ping timeout: 244 seconds) |
| 18:42:11 | <qrpnxz> | xD |
| 18:43:01 | → | tstat joins (~user@user/tstat) |
| 18:43:41 | <geekosaur> | :) |
| 18:43:52 | → | k8yun joins (~k8yun@user/k8yun) |
| 18:47:30 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 240 seconds) |
| 18:47:40 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 18:50:13 | <qrpnxz> | man, flipping the flow of my compositions is bit of a pain with the current precedences, but it can be done alright with a few parens |
| 18:51:10 | <EvanR> | you need a flow flipper |
| 18:53:03 | <qrpnxz> | i should try learning to appreciate just absolutely everything flowing right to left, then i wouldn't have any problems and readability would probably improve |
| 18:55:22 | <qrpnxz> | function application is fundamentally right to left in haskell after all. The types decided to be backwards though :( Except in lens :) |
| 18:56:39 | <EvanR> | oh you're trying to flip the direction of . ? |
| 18:56:50 | <EvanR> | yeah just don't xD |
| 18:57:27 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 18:57:53 | <EvanR> | though, function application associates to the left, not the right |
| 18:57:56 | → | yin joins (~yin@user/zero) |
| 18:58:05 | <qrpnxz> | for normal function it's (.) into >>> yeah, for monadic it's >>= and >=> |
| 18:58:20 | <geekosaur> | :t (&) |
| 18:58:22 | <lambdabot> | a -> (a -> b) -> b |
| 18:58:27 | <qrpnxz> | right, exactly, so no matter what you've got bbits of right to left because of application |
| 18:58:38 | <qrpnxz> | unless you wanna sprinkle (&) everywhere |
| 18:58:45 | <qrpnxz> | and that will probably need parens |
| 18:58:55 | <qrpnxz> | so really, i should just embrace right to left all the way |
| 18:59:14 | geekosaur | just uses right to left, yeh. because math |
| 19:00:55 | <EvanR> | after learning about associativity versus evaluation order which matters in haskell, I no longer understand anyone when they speak of "right to left" or "left to right" |
| 19:01:23 | <c_wraith> | also, in important ways in Haskell, f (g x) actually runs f first |
| 19:01:39 | <EvanR> | yeah that's part of why |
| 19:01:54 | <matthewmosior> | Has anyone here played with linear haskell yet? Specifically reading in entire files? Just curious, I still need to try it. I believe that it can allow one to avoid GC if I'm understanding correctly? |
| 19:02:30 | <EvanR> | is that true? |
| 19:02:59 | <c_wraith> | I don't think that's true. it's only type system changes. there are no runtime changes associated with it |
| 19:04:37 | <c_wraith> | what I suppose it can do is allow you to use in-place mutation safely, if you design libraries specifically around that. (isn't that also possible using IO or ST? yes it sure is!) |
| 19:06:02 | × | mncheck-m quits (~mncheck@193.224.205.254) (Ping timeout: 268 seconds) |
| 19:06:07 | <EvanR> | that's what I thought. There is no magic garbage collector collector associated with linear haskell, or with the equivalent in idris (used to be uniqueness types) |
| 19:06:48 | → | mncheck-m joins (~mncheck@193.224.205.254) |
| 19:06:56 | <EvanR> | but this magic is still highly associated with linear types. Is there a language that does this? |
| 19:07:38 | <dolio> | Idris does some things with its system. |
| 19:07:53 | <dolio> | Maybe not the linear things, but the 0 things are erased, right? |
| 19:08:13 | <EvanR> | erased types don't "run" at runtime, there's that |
| 19:08:25 | <EvanR> | which is good |
| 19:10:03 | <c_wraith> | I think a lot of this idea comes from Clean |
| 19:10:25 | <c_wraith> | which did use its type system to make mutation safe, without having an equivalent of ST or IO |
| 19:11:37 | <c_wraith> | so libraries were already built around it. |
| 19:11:43 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Remote host closed the connection) |
| 19:12:13 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 252 seconds) |
| 19:12:23 | <dolio> | Linear types aren't really the same as what's in Clean, though. |
| 19:13:40 | <c_wraith> | no, but people (including me) are really bad at remembering the difference between linear and uniqueness types. :) |
| 19:14:16 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 19:22:44 | → | sandydoo joins (~sandydoo@185.209.196.136) |
| 19:23:04 | → | Pickchea joins (~private@user/pickchea) |
| 19:23:32 | → | yvan-sraka joins (uid419690@id-419690.lymington.irccloud.com) |
| 19:24:27 | × | sandy_doo quits (~sandydoo@185.209.196.136) (Ping timeout: 244 seconds) |
| 19:26:27 | × | _xor quits (~xor@74.215.182.83) (Ping timeout: 272 seconds) |
| 19:28:17 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 19:28:35 | × | dcoutts quits (~duncan@host109-149-1-170.range109-149.btcentralplus.com) (Ping timeout: 260 seconds) |
| 19:29:27 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds) |
| 19:30:01 | → | chomwitt joins (~chomwitt@2a02:587:dc00:5a00:7d31:dffe:9d62:f2ae) |
| 19:30:16 | → | dcoutts joins (~duncan@host86-177-223-225.range86-177.btcentralplus.com) |
| 19:31:48 | → | sonologico joins (~raphael@77.251.118.129) |
| 19:33:22 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 19:34:12 | <unclechu> | Hey, can I somehow apply a patch for a dependency using Stack? |
| 19:34:48 | <unclechu> | Or override dependency bounds for it? |
| 19:35:07 | → | dcoutts_ joins (~duncan@host86-150-18-23.range86-150.btcentralplus.com) |
| 19:37:31 | × | dcoutts quits (~duncan@host86-177-223-225.range86-177.btcentralplus.com) (Ping timeout: 252 seconds) |
| 19:37:35 | <qrpnxz> | geekosaur: here is a comparison going one direction versus the other https://paste.tomsmeding.com/bj7SxBXL |
| 19:39:11 | <geekosaur> | mm, that's just precedence, right? try seeing if (&) has better precedence compared to (>>=) than (>>>) |
| 19:39:17 | <brence> | In modern ghc, when a thunk is evaluated does it get replaced by the actual value or an indirection to the value? |
| 19:39:26 | <geekosaur> | (oh yay, my hack to the emoji script worked) |
| 19:40:12 | <geekosaur> | brence, depending on what exactly you mean, it's an indirection because alll lazy values (and it must be lazy to be a thunk) are indirect |
| 19:40:37 | <geekosaur> | also this means things like trees can be shared by reusing their pointers |
| 19:41:01 | <dolio> | In general it has to be an indirection, because there isn't enough room to update a thunk to its contents. |
| 19:41:17 | <dolio> | Then garbage collection will eliminate indirections. |
| 19:41:42 | × | dcoutts_ quits (~duncan@host86-150-18-23.range86-150.btcentralplus.com) (Ping timeout: 245 seconds) |
| 19:42:33 | → | Player-205[m] joins (~sashaserp@2001:470:69fc:105::2:30b8) |
| 19:43:07 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds) |
| 19:45:22 | <dolio> | Also you need the indirections anyway for some cases. |
| 19:45:38 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 19:47:37 | <brence> | That makes sense, thanks. What does it mean for the GC to eliminate indirections? Does it update the references to point to the new value instead of the thunk? |
| 19:49:02 | → | euandreh joins (~euandreh@179.214.113.107) |
| 19:49:05 | <dolio> | Yeah, when you GC, with a copying GC at least, your copy can point directly to the actual value, instead of pointing to a pointer to the value. |
| 19:49:57 | <brence> | gotcha |
| 19:50:43 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Remote host closed the connection) |
| 19:51:05 | × | sonologico quits (~raphael@77.251.118.129) (Ping timeout: 252 seconds) |
| 19:51:09 | <dolio> | Might be more complicated if you're doing something like mark/compact. |
| 19:52:25 | × | chomwitt quits (~chomwitt@2a02:587:dc00:5a00:7d31:dffe:9d62:f2ae) (Ping timeout: 272 seconds) |
| 19:53:12 | ← | Player-205[m] parts (~sashaserp@2001:470:69fc:105::2:30b8) () |
| 19:53:38 | × | phma quits (~phma@2001:5b0:212a:aa18:3c2a:7f07:f53f:a9d9) (Read error: Connection reset by peer) |
| 19:53:51 | → | dextaa joins (~DV@user/dextaa) |
| 19:54:05 | → | phma joins (phma@2001:5b0:212a:aa18:3c2a:7f07:f53f:a9d9) |
| 19:54:26 | → | Player-205[m] joins (~sashaserp@2001:470:69fc:105::2:30b8) |
| 19:56:40 | × | tstat quits (~user@user/tstat) (Remote host closed the connection) |
| 19:56:42 | → | coco joins (~coco@212-51-146-199.fiber7.init7.net) |
| 19:59:27 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Remote host closed the connection) |
| 20:00:22 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 20:04:37 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 20:11:40 | × | brence quits (~brence@45.240.170.35) (Ping timeout: 252 seconds) |
| 20:16:32 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 20:20:02 | × | sandydoo quits (~sandydoo@185.209.196.136) (Ping timeout: 268 seconds) |
| 20:20:24 | → | brence joins (~brence@45.240.170.35) |
| 20:21:37 | × | phma quits (phma@2001:5b0:212a:aa18:3c2a:7f07:f53f:a9d9) (Read error: Connection reset by peer) |
| 20:23:13 | → | phma joins (~phma@host-67-44-208-102.hnremote.net) |
| 20:25:39 | × | son0p quits (~ff@181.136.122.143) (Ping timeout: 268 seconds) |
| 20:27:31 | × | phma quits (~phma@host-67-44-208-102.hnremote.net) (Read error: Connection reset by peer) |
| 20:30:05 | → | mach7 joins (~mach7@2001:871:204:351e:85dd:2307:886f:72ca) |
| 20:31:20 | ← | mach7 parts (~mach7@2001:871:204:351e:85dd:2307:886f:72ca) () |
| 20:33:23 | → | phma joins (~phma@host-67-44-208-16.hnremote.net) |
| 20:36:57 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 20:40:41 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 20:41:00 | × | brence quits (~brence@45.240.170.35) (Ping timeout: 252 seconds) |
| 20:43:16 | × | euandreh quits (~euandreh@179.214.113.107) (Quit: WeeChat 3.5) |
| 20:45:03 | × | MajorBiscuit quits (~MajorBisc@c-001-026-031.client.tudelft.eduvpn.nl) (Ping timeout: 244 seconds) |
| 20:51:08 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 20:53:49 | → | k8yun_ joins (~k8yun@user/k8yun) |
| 20:53:51 | × | alp__ quits (~alp@user/alp) (Ping timeout: 272 seconds) |
| 20:55:22 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Ping timeout: 244 seconds) |
| 20:57:15 | × | k8yun quits (~k8yun@user/k8yun) (Ping timeout: 260 seconds) |
| 20:57:36 | → | notzmv joins (~zmv@user/notzmv) |
| 20:59:17 | × | mvk quits (~mvk@2607:fea8:5ce3:8500::311d) (Ping timeout: 255 seconds) |
| 21:01:15 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 21:01:23 | → | alp__ joins (~alp@user/alp) |
| 21:02:03 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 21:04:49 | × | phma quits (~phma@host-67-44-208-16.hnremote.net) (Read error: Connection reset by peer) |
| 21:05:33 | → | phma joins (~phma@host-67-44-209-50.hnremote.net) |
| 21:08:20 | → | rekahsoft joins (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) |
| 21:11:23 | × | EvanR quits (~EvanR@user/evanr) (Ping timeout: 244 seconds) |
| 21:15:32 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds) |
| 21:17:35 | <qrpnxz> | playing around with streaming has made me really appreciate Free monads :) I'm getting to the point where i am extending the functor so much that i should probably start to use an actual effect system. |
| 21:18:43 | → | M3w0[m] joins (~M3w0matri@2001:470:69fc:105::2:55b3) |
| 21:19:45 | × | Tuplanolla quits (~Tuplanoll@91-159-68-204.elisa-laajakaista.fi) (Quit: Leaving.) |
| 21:22:07 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds) |
| 21:23:08 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 255 seconds) |
| 21:24:22 | × | rekahsoft quits (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) (Remote host closed the connection) |
| 21:27:50 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 21:33:53 | → | slack1256 joins (~slack1256@191.126.99.71) |
| 21:34:16 | → | rekahsoft joins (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) |
| 21:34:24 | × | rekahsoft quits (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) (Remote host closed the connection) |
| 21:34:39 | <slack1256> | I got a memory leak with PINNED values. Would manually inserted SCC be more helpful at diagnosing who is producing these values? |
| 21:35:19 | → | rekahsoft joins (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) |
| 21:36:07 | × | rekahsoft quits (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) (Remote host closed the connection) |
| 21:36:44 | → | rekahsoft joins (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) |
| 21:36:47 | <slack1256> | Another question is that `stack --profile` inserts SCC everywhere. These have not been helpful, what is more they muddle the output with unhelp SCC. Anyway to tell stack to `use -prof but not -fprof-auto-all`? passing it via ghc-options throws an error message. |
| 21:39:46 | → | EvanR joins (~EvanR@user/evanr) |
| 21:39:47 | <geekosaur> | https://downloads.haskell.org/ghc/9.2.1/docs/html/users_guide/9.2.1-notes.html#runtime-system |
| 21:40:15 | <geekosaur> | as I mentioned earlier, profiling used to not account pinned memory to SCCs, as of 9.2.1 it does |
| 21:40:29 | <maralorn> | Is there a way to query the time and memory consumption of a part of my code will running the code? e.g. I have a loop over a list of inputs which trigger different code paths but I don‘t know which of the iterations are the inperformant ones. Can I change my program to collect that data? |
| 21:41:34 | <EvanR> | if you have IO lying around you could check the monotonic timer, evaluate your code however much is relevant, check the time again afterward |
| 21:41:43 | <EvanR> | how much to evaluate seems tricky |
| 21:42:04 | <maralorn> | Yeah, I have IO around. |
| 21:42:25 | <EvanR> | I like the clock package to get this monotonic clock value |
| 21:42:43 | <maralorn> | I already force the result of every step anyways so that shouldn‘t be a problem. |
| 21:42:47 | <hpc> | i just use acme-now :D |
| 21:42:59 | <EvanR> | acme-now would work for some value of work |
| 21:43:16 | <EvanR> | value = 0 probably |
| 21:43:29 | <hpc> | it applies force over time |
| 21:43:44 | <EvanR> | is that an elon musk reference |
| 21:44:04 | <EvanR> | oh, it's the definition of work |
| 21:44:07 | <hpc> | work is the integral of force over time in physics |
| 21:44:32 | <hpc> | and also "forcing" can mean to try and make something fit where it actually shouldn't fit at all |
| 21:44:44 | <EvanR> | dW = force dot dDistance |
| 21:44:55 | <monochrom> | I think the "criterion" package may help. |
| 21:45:03 | <hpc> | bah, space and time are the same thing anyway |
| 21:45:12 | <maralorn> | "for some value of work" not sure if I understood Marx right, but I think if the time difference is zero there is also no value as result of the work … |
| 21:45:18 | <monochrom> | But why are we drifting to physics? :) |
| 21:45:39 | <slack1256> | geekosaur: WOAH |
| 21:45:44 | <EvanR> | no no, now it's communism |
| 21:46:18 | <monochrom> | And if we are drifting to physics, why aren't we bringing up Noether's theorem and discuss the symmetries that underlie work and force? >:) |
| 21:48:06 | <maralorn> | Is there also a monotonic clock function in some more standard packages? |
| 21:48:09 | <maralorn> | e.g. time? |
| 21:48:24 | × | rekahsoft quits (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) (Remote host closed the connection) |
| 21:48:46 | <monochrom> | time doesn't expose unix's monotonic clock. Maybe unix does. |
| 21:49:21 | <hpc> | is https://hackage.haskell.org/package/clock-0.8.3/docs/System-Clock.html#v:Monotonic not it? |
| 21:49:36 | → | rekahsoft joins (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) |
| 21:49:47 | × | michalz quits (~michalz@185.246.204.77) (Remote host closed the connection) |
| 21:50:05 | <maralorn> | hpc: Yeah it is. I just was wondering if I should pull in a new dependency for this. |
| 21:50:36 | <hpc> | (that was at monochrom saying it didn't have it :P) |
| 21:50:41 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 268 seconds) |
| 21:50:58 | <monochrom> | But I was only talking about time and unix. |
| 21:51:15 | <hpc> | ... doh, that's the "clock" package |
| 21:51:23 | <maralorn> | Yeah. |
| 21:51:29 | × | acidjnk quits (~acidjnk@p200300d6e7058640883c7bf2a50d2bab.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
| 21:51:48 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 21:52:50 | <EvanR> | since to do anything at all really you have to "pull in" vector... I consider all bets off xD |
| 21:53:09 | <mon_aaraj> | i wonder, is there any sort of "bracket" EFFECT in haskell-effectful? I can do it with ContT by using mtl and transformers, but I want to switch to effectful (polysemy is what i'll last go to), but they don't support delimited continuations... but also, i believe the bracket effect is a small subset of delimited continuations, so I'm not sure if it's even possible to do in effectful |
| 21:53:18 | <EvanR> | the only question will be if you want to pull in linear, which pulls in the kmettiverse |
| 21:55:00 | → | sonologico joins (~raphael@dhcp-077-251-118-129.chello.nl) |
| 21:55:38 | <monochrom> | If you have vector and clock, you have vector clock, you can do cloud computing |
| 21:56:07 | × | rekahsoft quits (~rekahsoft@bras-base-wdston4533w-grc-02-142-113-160-8.dsl.bell.ca) (Ping timeout: 252 seconds) |
| 21:56:54 | <EvanR> | is vector clock like vector graphics or vector victor clearance clarence |
| 21:57:22 | <EvanR> | or a new kind of vector |
| 21:57:50 | <geekosaur> | https://scitechdaily.com/physicists-create-mind-bending-new-phase-of-matter-that-acts-like-it-has-two-time-dimensions/ |
| 21:59:01 | → | dcoutts joins (~duncan@host86-167-90-210.range86-167.btcentralplus.com) |
| 21:59:21 | × | alternateved quits (~user@staticline-31-183-144-54.toya.net.pl) (Remote host closed the connection) |
| 22:02:37 | → | dcoutts_ joins (~duncan@host86-149-51-106.range86-149.btcentralplus.com) |
| 22:03:05 | × | JannisO quits (~JannisO@dyndsl-089-166-213-108.ewe-ip-backbone.de) (Ping timeout: 252 seconds) |
| 22:04:11 | × | dcoutts quits (~duncan@host86-167-90-210.range86-167.btcentralplus.com) (Ping timeout: 252 seconds) |
| 22:04:13 | <hpc> | the precursor paper to that is even cooler, they had to figure out how to get the system to oscillate between states over time without losing energy |
| 22:18:54 | → | onosendi joins (sid552923@user/onosendi) |
| 22:19:12 | × | sonologico quits (~raphael@dhcp-077-251-118-129.chello.nl) (Ping timeout: 245 seconds) |
| 22:19:55 | <onosendi> | Is there linting in Haskell, like JavaScript's ESLint? Style guide? I'm just using haskell-language-server as of now. |
| 22:20:40 | <geekosaur> | you may want to install hlint |
| 22:20:46 | <maralorn> | onosendi: There are formaters and there is hlint. Both should be enabled by default when using hls. |
| 22:20:47 | <geekosaur> | HLS will use it if it finds it |
| 22:21:28 | <maralorn> | hls doesn‘t look for it. hls is either linked against it or it isn‘t. The default binaries you get via ghcup are. |
| 22:21:39 | <geekosaur> | (actually I think hlint is still disabled by default if you are using ghc 9.2.x?) |
| 22:21:53 | <maralorn> | That’s true. |
| 22:22:23 | <onosendi> | Hmm, so `brew install hlint` ? |
| 22:22:36 | <geekosaur> | wonder if that's because it will recommend eta reduction when that can cause problems with simplified subsumption? |
| 22:22:58 | <maralorn> | No clue about mac. But if it finds something, then that will probaly work. |
| 22:23:11 | <maralorn> | Then you do `hlint **/*.hs` |
| 22:24:28 | → | k8yun__ joins (~k8yun@user/k8yun) |
| 22:24:59 | → | jargon joins (~jargon@184.101.188.251) |
| 22:25:25 | <maralorn> | Hm, at least on master hlint is supposed to support all support ghc versions and is enabled for all of them in the cabal file. |
| 22:25:40 | <onosendi> | Anyone using nvim by any chance? |
| 22:26:28 | <maralorn> | I did for a long time. |
| 22:26:38 | <maralorn> | Others certainly do. |
| 22:27:29 | <onosendi> | maralorn: do you happen to have your old dots on github, that used hls? |
| 22:27:57 | × | k8yun_ quits (~k8yun@user/k8yun) (Ping timeout: 245 seconds) |
| 22:30:04 | <maralorn> | onosendi: I use nixos + home-manager, so yeah, but the syntax might annoy you a lot: https://git.maralorn.de/nixos-config/tree/home-manager/roles/neovim/default.nix |
| 22:30:54 | <maralorn> | I use hls with coc, which is probably not the best solution if you start from scratch today. I configured this when nvim had no builtin lsp support. |
| 22:31:12 | <maralorn> | Really I shouldn‘t even have posted this, it’s a bad example.^^ |
| 22:31:51 | <maralorn> | onosendi: Have you had a look at this? https://haskell-language-server.readthedocs.io/en/latest/configuration.html?highlight=neovim#vim-or-neovim |
| 22:31:51 | <onosendi> | Yeah, I'm using lsp. |
| 22:31:59 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 22:32:00 | × | yin quits (~yin@user/zero) (Ping timeout: 268 seconds) |
| 22:32:15 | <onosendi> | maralorn: Yeah, I was just looking at that. |
| 22:32:57 | × | coco quits (~coco@212-51-146-199.fiber7.init7.net) (Ping timeout: 245 seconds) |
| 22:33:16 | × | younder quits (~younder@33.51-174-155.customer.lyse.net) (Quit: Connection closed) |
| 22:34:37 | → | dcoutts joins (~duncan@host86-149-51-106.range86-149.btcentralplus.com) |
| 22:36:27 | × | dcoutts_ quits (~duncan@host86-149-51-106.range86-149.btcentralplus.com) (Ping timeout: 252 seconds) |
| 22:36:28 | <onosendi> | I'm a JavaScript dev, and I've been studying FP for a few months. I've learned basic stuff, like functors, monads, monoids, semigroups, etc. However, there isn't any realworld FP JS code to look at, to see how each of these things are actually implemented. So, I figured the best way is to learn Haskell, to learn how to think more declaratively. Do you guys have any advice on where to start? I'm |
| 22:36:30 | <onosendi> | literally brand new to this. |
| 22:37:07 | → | dcoutts_ joins (~duncan@host86-149-51-106.range86-149.btcentralplus.com) |
| 22:38:43 | <geekosaur> | possibly you want to look at purescript, which uses many of the same idioms (minus laziness) and compiles to JS |
| 22:39:12 | × | dcoutts quits (~duncan@host86-149-51-106.range86-149.btcentralplus.com) (Ping timeout: 245 seconds) |
| 22:39:53 | → | son0p joins (~ff@181.136.122.143) |
| 22:41:57 | × | dcoutts_ quits (~duncan@host86-149-51-106.range86-149.btcentralplus.com) (Ping timeout: 252 seconds) |
| 22:44:56 | → | dcoutts joins (~duncan@host86-171-59-92.range86-171.btcentralplus.com) |
| 22:45:09 | <sm> | read code of a bunch of haskell projects ? |
| 22:45:58 | <sm> | https://wiki.haskell.org/How_to_read_Haskell, https://wiki.haskell.org/Learn_Haskell_in_10_minutes |
| 22:46:09 | → | yin joins (~yin@user/zero) |
| 22:47:09 | <sm> | or of https://hackage.haskell.org/package/base-4.16.3.0/docs/Prelude.html |
| 22:48:07 | → | coco joins (~coco@212-51-146-199.fiber7.init7.net) |
| 22:48:52 | → | cbdlt^ joins (~cbdlt@50-242-35-142-static.hfc.comcastbusiness.net) |
| 22:50:37 | → | dcoutts_ joins (~duncan@host86-150-41-142.range86-150.btcentralplus.com) |
| 22:51:07 | × | dcoutts quits (~duncan@host86-171-59-92.range86-171.btcentralplus.com) (Ping timeout: 252 seconds) |
| 22:52:19 | → | Guest3 joins (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) |
| 22:52:26 | × | Guest3 quits (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) (Changing host) |
| 22:52:26 | → | Guest3 joins (~textual@user/polo) |
| 22:52:31 | Guest3 | is now known as Gambino |
| 22:53:12 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) |
| 22:55:52 | × | matthewmosior quits (~matthewmo@173.170.253.91) (Ping timeout: 245 seconds) |
| 22:57:38 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:357f:5f50:899a:d5a4) (Ping timeout: 255 seconds) |
| 22:59:33 | × | bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 252 seconds) |
| 23:01:22 | × | coco quits (~coco@212-51-146-199.fiber7.init7.net) (Quit: WeeChat 3.5) |
| 23:04:38 | → | dcoutts__ joins (~duncan@host86-150-41-142.range86-150.btcentralplus.com) |
| 23:06:31 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds) |
| 23:07:15 | × | dcoutts_ quits (~duncan@host86-150-41-142.range86-150.btcentralplus.com) (Ping timeout: 252 seconds) |
| 23:07:49 | × | jumper149 quits (~jumper149@base.felixspringer.xyz) (Quit: WeeChat 3.5) |
| 23:08:20 | × | yvan-sraka quits (uid419690@id-419690.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 23:10:16 | → | matthewmosior joins (~matthewmo@173.170.253.91) |
| 23:16:25 | × | yin quits (~yin@user/zero) (Ping timeout: 252 seconds) |
| 23:16:55 | → | enemeth79 joins (uid309041@id-309041.lymington.irccloud.com) |
| 23:17:59 | → | yin joins (~yin@user/zero) |
| 23:18:16 | × | Gambino quits (~textual@user/polo) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 23:18:21 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 23:19:28 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 23:20:34 | × | inversed quits (~inversed@0545c13e.skybroadband.com) (Ping timeout: 244 seconds) |
| 23:20:43 | × | cbdlt^ quits (~cbdlt@50-242-35-142-static.hfc.comcastbusiness.net) (Ping timeout: 268 seconds) |
| 23:21:55 | → | alp_ joins (~alp@user/alp) |
| 23:22:03 | × | alp__ quits (~alp@user/alp) (Remote host closed the connection) |
| 23:22:03 | × | Luj quits (~Luj@2a01:e0a:5f9:9681:7a1a:a15b:364:89d8) (Quit: Ping timeout (120 seconds)) |
| 23:22:15 | → | Luj joins (~Luj@2a01:e0a:5f9:9681:abed:9db1:6133:89ac) |
| 23:22:56 | × | Kaiepi quits (~Kaiepi@156.34.47.253) (Read error: Connection reset by peer) |
| 23:23:21 | → | Kaiepi joins (~Kaiepi@156.34.47.253) |
| 23:33:22 | × | k8yun__ quits (~k8yun@user/k8yun) (Ping timeout: 245 seconds) |
| 23:40:56 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 23:41:17 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 245 seconds) |
| 23:42:03 | → | dcoutts joins (~duncan@host86-150-41-142.range86-150.btcentralplus.com) |
| 23:43:17 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 23:44:07 | → | Guest3 joins (~textual@pool-100-11-18-203.phlapa.fios.verizon.net) |
| 23:44:08 | → | bilegeek joins (~bilegeek@2600:1008:b009:a40a:238d:fd4d:a133:b04d) |
| 23:44:47 | → | naso joins (~naso@193-116-244-197.tpgi.com.au) |
| 23:58:05 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 23:58:05 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 23:58:05 | → | wroathe joins (~wroathe@user/wroathe) |
All times are in UTC on 2022-07-28.