Logs on 2023-04-06 (liberachat/#haskell)
| 00:00:22 | → | hnOsmium0001 joins (~weechat@user/hnOsmium0001) |
| 00:01:23 | × | _xor quits (~xor@50.216.161.66.ded-dsl.fuse.net) (Quit: brb) |
| 00:02:21 | × | hnOsmium0001 quits (~weechat@user/hnOsmium0001) (Client Quit) |
| 00:02:58 | → | hnOsmium0001 joins (~hnOsmium0@user/hnOsmium0001) |
| 00:05:52 | × | shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 252 seconds) |
| 00:06:53 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 00:06:53 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 00:06:53 | → | wroathe joins (~wroathe@user/wroathe) |
| 00:11:47 | × | ph88 quits (~ph88@ip5b426553.dynamic.kabel-deutschland.de) (Quit: Leaving) |
| 00:12:41 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 00:22:11 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 00:23:48 | × | mikess quits (~sam@user/mikess) (Ping timeout: 268 seconds) |
| 00:24:45 | × | Square quits (~Square4@user/square) (Ping timeout: 265 seconds) |
| 00:26:17 | × | vlad quits (~vlad@2a00:23c6:9822:4c01:54cf:36b9:9edc:d58) (Quit: Leaving) |
| 00:32:57 | → | chanceyan joins (~chanceyan@user/chanceyan) |
| 00:35:36 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 255 seconds) |
| 00:35:48 | → | todi joins (~snuckls@p5dca57c0.dip0.t-ipconnect.de) |
| 00:38:43 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 00:39:49 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 00:45:27 | → | mikess joins (~sam@user/mikess) |
| 00:46:56 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 248 seconds) |
| 00:48:54 | × | pyook quits (~puke@user/puke) (Read error: Connection reset by peer) |
| 00:51:07 | × | mikess quits (~sam@user/mikess) (Ping timeout: 276 seconds) |
| 00:53:21 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 00:58:20 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 268 seconds) |
| 01:06:11 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds) |
| 01:06:36 | ← | jerryzihye[m] parts (~jerryzihy@2001:470:69fc:105::3:37fb) () |
| 01:08:39 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 01:10:13 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:16:20 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:19:31 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 01:22:23 | × | gmg quits (~user@user/gehmehgeh) (Ping timeout: 255 seconds) |
| 01:23:02 | → | nate1 joins (~nate@98.45.169.16) |
| 01:24:19 | → | talismanick joins (~talismani@2601:200:c000:f7a0::fb70) |
| 01:24:41 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 01:26:25 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 01:27:30 | → | mikess joins (~sam@user/mikess) |
| 01:27:55 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 250 seconds) |
| 01:31:59 | → | dipper joins (~dipper@117.61.104.152) |
| 01:32:43 | × | xff0x quits (~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 276 seconds) |
| 01:34:34 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 255 seconds) |
| 01:38:19 | → | npmania joins (~Thunderbi@138.199.21.242) |
| 01:41:24 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 01:43:25 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 01:44:11 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 01:46:03 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 01:46:47 | × | rburkholder quits (~blurb@96.45.2.121) (Read error: Connection reset by peer) |
| 01:47:01 | → | rburkholder joins (~blurb@96.45.2.121) |
| 01:50:26 | → | pyook joins (~puke@user/puke) |
| 01:53:00 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 255 seconds) |
| 02:05:23 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 02:05:23 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:05:23 | finn_elija | is now known as FinnElija |
| 02:08:07 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 02:08:11 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:c911:2283:ea7e:cb15) (Remote host closed the connection) |
| 02:09:16 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 02:09:33 | → | shriekingnoise joins (~shrieking@186.137.175.87) |
| 02:16:09 | → | xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
| 02:16:27 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 250 seconds) |
| 02:16:53 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 250 seconds) |
| 02:17:08 | → | nate1 joins (~nate@98.45.169.16) |
| 02:22:12 | × | td_ quits (~td@i53870914.versanet.de) (Ping timeout: 268 seconds) |
| 02:22:42 | → | td_ joins (~td@i5387092B.versanet.de) |
| 02:25:40 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 02:27:56 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 02:29:53 | × | gehmehgeh quits (~user@user/gehmehgeh) (Ping timeout: 255 seconds) |
| 02:31:18 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Client Quit) |
| 02:32:58 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 02:33:35 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 02:37:53 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 02:39:40 | × | slack1256 quits (~slack1256@186.11.89.67) (Remote host closed the connection) |
| 02:47:38 | × | codaraxis quits (~codaraxis@user/codaraxis) (Ping timeout: 246 seconds) |
| 02:51:07 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:c911:2283:ea7e:cb15) |
| 02:53:49 | → | jmorris joins (uid537181@id-537181.uxbridge.irccloud.com) |
| 03:00:34 | → | freeside joins (~mengwong@103.252.202.85) |
| 03:04:09 | × | bontaq quits (~user@ool-45779b84.dyn.optonline.net) (Remote host closed the connection) |
| 03:05:36 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 248 seconds) |
| 03:12:10 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 276 seconds) |
| 03:13:42 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 03:18:21 | → | codaraxis joins (~codaraxis@user/codaraxis) |
| 03:18:51 | × | shapr quits (~user@c-68-35-51-250.hsd1.al.comcast.net) (Ping timeout: 250 seconds) |
| 03:19:33 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 268 seconds) |
| 03:21:16 | × | codaraxis quits (~codaraxis@user/codaraxis) (Max SendQ exceeded) |
| 03:21:46 | → | codaraxis joins (~codaraxis@user/codaraxis) |
| 03:24:21 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 255 seconds) |
| 03:25:11 | × | codaraxis quits (~codaraxis@user/codaraxis) (Max SendQ exceeded) |
| 03:26:03 | → | codaraxis joins (~codaraxis@user/codaraxis) |
| 03:37:01 | → | freeside joins (~mengwong@103.252.202.85) |
| 03:38:28 | × | chanceyan quits (~chanceyan@user/chanceyan) (Ping timeout: 260 seconds) |
| 03:41:20 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 248 seconds) |
| 03:43:42 | → | bilegeek joins (~bilegeek@2600:1008:b00f:d1cc:217f:c090:92db:4854) |
| 03:47:41 | × | bilegeek quits (~bilegeek@2600:1008:b00f:d1cc:217f:c090:92db:4854) (Client Quit) |
| 03:47:45 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 255 seconds) |
| 03:51:08 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 03:52:30 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 03:58:06 | × | mikess quits (~sam@user/mikess) (Ping timeout: 255 seconds) |
| 04:00:23 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 04:02:31 | → | freeside joins (~mengwong@103.252.202.85) |
| 04:05:18 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 255 seconds) |
| 04:06:34 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 04:07:06 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 255 seconds) |
| 04:07:40 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 04:09:55 | → | tusko joins (~yeurt@user/tusko) |
| 04:09:57 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 04:10:10 | <tusko> | how to use lambdabot |
| 04:10:26 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 04:15:57 | <ski> | > fix ((0 :) . (1 :) . (zipWith (+) `ap` tail)) |
| 04:15:59 | <lambdabot> | [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,... |
| 04:24:14 | × | xstill_ quits (xstill@fimu/xstill) (Ping timeout: 246 seconds) |
| 04:24:19 | × | xsarnik quits (xsarnik@lounge.fi.muni.cz) (Ping timeout: 256 seconds) |
| 04:24:24 | → | xsarnik2 joins (xsarnik@lounge.fi.muni.cz) |
| 04:24:28 | → | xstill_5 joins (xstill@fimu/xstill) |
| 04:43:29 | → | freeside joins (~mengwong@103.252.202.85) |
| 04:48:21 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 268 seconds) |
| 05:02:53 | × | pyook quits (~puke@user/puke) (Remote host closed the connection) |
| 05:02:57 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 05:03:10 | → | pyook joins (~puke@user/puke) |
| 05:20:29 | → | bgs joins (~bgs@212-85-160-171.dynamic.telemach.net) |
| 05:29:43 | → | tr_ev joins (~trev@user/trev) |
| 05:32:05 | tr_ev | is now known as trev |
| 05:33:02 | × | trev quits (~trev@user/trev) (Client Quit) |
| 05:33:18 | → | trev joins (~trev@user/trev) |
| 05:34:55 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 250 seconds) |
| 05:40:04 | → | harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 05:43:56 | → | chanceyan joins (~chanceyan@user/chanceyan) |
| 05:51:57 | → | Midjak joins (~Midjak@82.66.147.146) |
| 06:15:07 | × | waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 248 seconds) |
| 06:15:11 | → | freeside joins (~mengwong@202.161.55.11) |
| 06:15:29 | → | _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
| 06:26:20 | → | michalz joins (~michalz@185.246.207.193) |
| 06:28:52 | × | ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (Ping timeout: 268 seconds) |
| 06:30:13 | → | ezzieyguywuf joins (~Unknown@user/ezzieyguywuf) |
| 06:31:52 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 06:34:30 | × | phma quits (phma@2001:5b0:215a:df08:e980:5ea0:e1e6:f83b) (Ping timeout: 265 seconds) |
| 06:35:51 | × | bgs quits (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
| 06:36:48 | → | coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 06:46:03 | → | Sciencentistguy7 joins (~sciencent@hacksoc/ordinary-member) |
| 06:46:25 | × | edwtjo quits (~edwtjo@fsf/member/edwtjo) (Ping timeout: 260 seconds) |
| 06:46:47 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:c911:2283:ea7e:cb15) (Remote host closed the connection) |
| 06:47:41 | × | ix quits (~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) (Ping timeout: 246 seconds) |
| 06:48:38 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds) |
| 06:49:16 | × | Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 276 seconds) |
| 06:49:16 | Sciencentistguy7 | is now known as Sciencentistguy |
| 06:51:04 | × | MasseR46 quits (thelounge@2001:bc8:47a0:1521::1) (Quit: The Lounge - https://thelounge.chat) |
| 06:53:00 | → | ix joins (~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) |
| 06:53:43 | → | MasseR46 joins (thelounge@2001:bc8:47a0:1521::1) |
| 06:54:48 | × | ft quits (~ft@p4fc2a88b.dip0.t-ipconnect.de) (Quit: leaving) |
| 06:59:40 | × | harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 07:01:38 | × | hgolden quits (~hgolden@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection) |
| 07:03:49 | → | kenran joins (~user@user/kenran) |
| 07:05:53 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 246 seconds) |
| 07:07:51 | → | mmhat joins (~mmh@p200300f1c7106e80ee086bfffe095315.dip0.t-ipconnect.de) |
| 07:08:00 | × | mmhat quits (~mmh@p200300f1c7106e80ee086bfffe095315.dip0.t-ipconnect.de) (Client Quit) |
| 07:12:23 | → | andrewboltachev joins (~andrey@178.141.217.5) |
| 07:16:12 | → | nate1 joins (~nate@98.45.169.16) |
| 07:17:04 | → | acidjnk joins (~acidjnk@p200300d6e715c4569591f0067a59bcd8.dip0.t-ipconnect.de) |
| 07:21:05 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 250 seconds) |
| 07:21:25 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 260 seconds) |
| 07:22:02 | → | Maxdamantus joins (~Maxdamant@user/maxdamantus) |
| 07:23:06 | → | MajorBiscuit joins (~MajorBisc@2001:1c00:2408:a400:7f99:b6d8:c8b8:dc05) |
| 07:24:39 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 07:28:17 | → | zeenk joins (~zeenk@2a02:2f04:a307:2300::fba) |
| 07:36:31 | × | werneta quits (~werneta@2600:1700:4819:103f:f84b:908d:f5f0:4525) (Ping timeout: 240 seconds) |
| 07:37:44 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 07:37:55 | → | briandaed joins (~briandaed@185.234.210.211) |
| 07:38:07 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 07:38:18 | → | edwtjo joins (~edwtjo@h-109-228-137-133.A213.priv.bahnhof.se) |
| 07:38:18 | × | edwtjo quits (~edwtjo@h-109-228-137-133.A213.priv.bahnhof.se) (Changing host) |
| 07:38:18 | → | edwtjo joins (~edwtjo@fsf/member/edwtjo) |
| 07:39:07 | × | coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
| 07:39:07 | → | cfricke joins (~cfricke@user/cfricke) |
| 07:45:01 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 07:45:09 | <tomsmeding> | tusko: can also use lambdabot in a pricate chat |
| 07:45:56 | <witcher> | i want to write an application that passes a config type around via the `Reader` monad. since there might be some functions that use `IO` i'd use `ReaderT`, but then all of my other functions using the config become impure because they *could* do IO, which I want to avoid. what's the common solution for this problem? |
| 07:47:14 | <tomsmeding> | witcher: do you have many functions that don't need IO and also don't call any functions that use IO? |
| 07:47:17 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:c911:2283:ea7e:cb15) |
| 07:47:36 | <tomsmeding> | @unmtl Reader r a |
| 07:47:37 | <lambdabot> | r -> a |
| 07:47:37 | <witcher> | tomsmeding: ideally i will, yes |
| 07:47:47 | <tomsmeding> | you could just add another parameter to those functions :p |
| 07:48:00 | <tomsmeding> | that's really all Reader is |
| 07:48:25 | <witcher> | i could, but i assumed it's more idiomatic to use a reader monad instead |
| 07:48:31 | → | swistak joins (~swistak@185.21.216.141) |
| 07:48:38 | <witcher> | my professor in uni kept praising the reader monad for that exact use case |
| 07:48:45 | <tomsmeding> | but I guess it isn't hard to write a 'Reader r a -> ReaderT r IO a' lifting function |
| 07:49:09 | <Hecate> | witcher: so, you're encountering the issue that led to the development of more granular ways to track your effects |
| 07:50:00 | <Hecate> | witcher: let me introduce you to a better way than rigid stacks of transformers: https://hackage.haskell.org/package/effectful-core-2.2.2.2/docs/Effectful.html |
| 07:50:03 | <Hecate> | :> |
| 07:50:21 | <witcher> | Hecate: aha, I'll have a look. thanks! |
| 07:50:32 | <witcher> | tomsmeding: will keep this in mind, thank you! |
| 07:50:37 | <tomsmeding> | % import Control.Monad.Reader |
| 07:50:37 | <yahb2> | <no output> |
| 07:50:40 | <tomsmeding> | % :t \m -> ReaderT (return . runReader m) |
| 07:50:40 | <yahb2> | \m -> ReaderT (return . runReader m) ; :: forall {m :: * -> *} {r} {a}. ; Monad m => ; Reader r a -> ReaderT r m a |
| 07:50:50 | <tomsmeding> | yeah or go all algebraic effects, that's also cool :p |
| 07:51:37 | <tomsmeding> | I'm not sure I like the reader monad for config; it makes all your code monadic for no good reason IMO |
| 07:51:52 | <tomsmeding> | but if you have other effects around as well and so can't really drop the monadic style anyway, then it's very nice |
| 07:52:30 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:c911:2283:ea7e:cb15) (Ping timeout: 246 seconds) |
| 07:52:47 | <witcher> | I assume you would just pass it around as a parameter? |
| 07:52:53 | <witcher> | the config that is |
| 07:52:57 | <tomsmeding> | if there's no other reason to make the code monadic, yes |
| 07:53:00 | × | freeside quits (~mengwong@202.161.55.11) (Ping timeout: 255 seconds) |
| 07:53:39 | <tomsmeding> | % :t ReaderT . (return .) . runReader |
| 07:53:39 | <yahb2> | ReaderT . (return .) . runReader ; :: forall {m :: * -> *} {r} {a}. ; Monad m => ; Reader r a -> ReaderT r m a |
| 07:54:15 | <Hecate> | heavens |
| 07:54:37 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 07:56:49 | <witcher> | also, i fear i might get lost in thinking about side effects while trying to write my first actual real world application |
| 07:57:05 | <witcher> | you know, besides programming a huffmann tree |
| 07:59:49 | <tomsmeding> | honestly I'd apply the same tradeoff reasoning to algebraic effects -- if you're going to have many functions that require just a reader effect, just pass in the things as parameters and forgo monadic style altogether |
| 07:59:57 | <tomsmeding> | but this is a very subjective point |
| 08:01:11 | <tomsmeding> | alg. effects shine when you have a bunch of different side-effects, all of which you need at different places: database access, config file access, general file system access, a certain network API, randomness, etc. |
| 08:03:16 | → | freeside joins (~mengwong@202.161.55.11) |
| 08:04:42 | <Hecate> | witcher: https://play.haskell.org/saved/iFw8FRcs |
| 08:06:41 | <Hecate> | witcher: if you want to see those in practice, check out https://fosdem.org/2023/schedule/event/haskell_web_app_architecture_flora/ |
| 08:08:59 | <witcher> | tomsmeding: i'll think about it. it'll probably make my life easier in the beginning |
| 08:09:32 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:3faf:4fc:3166:7b21) |
| 08:09:50 | <witcher> | Hecate: looks confusing :p |
| 08:09:55 | <Hecate> | witcher: damnit :D |
| 08:09:56 | <witcher> | i'll have a look at the fosdem talk |
| 08:10:24 | <witcher> | don't get me wrong, this seems to be exactly what i'm looking for! |
| 08:10:43 | <tomsmeding> | it is certainly the (to us) obvious generalisation of what you're looking for |
| 08:10:49 | <witcher> | i've already stopped learning haskell once because i added too much complexity in the beginning |
| 08:10:58 | <witcher> | i'm trying to avoid making the same mistake again :p |
| 08:10:58 | <tomsmeding> | though I suspect it may be overkill for your current usecase |
| 08:10:59 | → | nschoe joins (~q@2a01:e0a:8e:a190:b9d2:b12b:eea:d602) |
| 08:11:13 | <tomsmeding> | not that you can't use it anyway as a learning opportunity, but that's a choice |
| 08:11:32 | <witcher> | of course! but one step at a time :) |
| 08:11:39 | <Hecate> | yes :) |
| 08:11:41 | <Hecate> | baby steps |
| 08:11:56 | <Hecate> | personally I had an application that was full transformers with no granularity at all |
| 08:12:12 | <Hecate> | (then I found salvation and effectful, but that's part 2 of my story) |
| 08:12:14 | <witcher> | Hecate: oh you were the speaker. i'll definitely give it a watch then :) |
| 08:12:49 | <witcher> | it's definitely going to be usecul since i have been thinking about programming a web application the past few days that i ideally want to realise with haskell |
| 08:12:52 | <Hecate> | witcher: eh, judge the quality of the talk, not the flesh-covered skeleton that moves on stage :P |
| 08:13:21 | <witcher> | Hecate: will do, don't worry :) |
| 08:14:50 | <witcher> | the web application actually the reason i'm trying to push myself to learn more haskell to be productive |
| 08:17:33 | <Hecate> | witcher: it is really a delightful language for backend development |
| 08:21:07 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 08:23:26 | → | chomwitt joins (~chomwitt@2a02:587:7a16:e500:1ac0:4dff:fedb:a3f1) |
| 08:25:42 | × | nschoe quits (~q@2a01:e0a:8e:a190:b9d2:b12b:eea:d602) (Ping timeout: 265 seconds) |
| 08:27:04 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 08:28:34 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 08:31:42 | × | tusko quits (~yeurt@user/tusko) (Remote host closed the connection) |
| 08:32:12 | → | tusko joins (~yeurt@user/tusko) |
| 08:34:15 | × | Me-me quits (~me-me@user/me-me) (Remote host closed the connection) |
| 08:35:29 | → | Me-me joins (~me-me@2602:ff16:3:0:1:dc:beef:d00d) |
| 08:36:54 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 08:38:00 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 08:38:57 | <kuribas> | How do higher kinded types correspond to the lambda cube? |
| 08:39:02 | <kenran> | I was just hoping to ask a vague "question" about algebraic effects and there's already an ongoing discussion, nice! |
| 08:39:12 | × | acidjnk quits (~acidjnk@p200300d6e715c4569591f0067a59bcd8.dip0.t-ipconnect.de) (Ping timeout: 265 seconds) |
| 08:39:36 | <kuribas> | You can have Types depending on Types, however (Type -> Type) is not a type... |
| 08:40:33 | <kuribas> | I suppose haskell doesn't fit into the lambda cube? |
| 08:41:25 | <Hecate> | kenran: do! do ask! |
| 08:41:54 | <Hecate> | (https://www.youtube.com/watch?v=W3q8Od5qJio ) |
| 08:42:37 | <kenran> | I was wondering how/if (or if you can point me to resources on how) you reduce "friction" when working with effects but also having a somewhat concurrent application. That is, there's a web server in my case (or multiple) that use effects (polysemy) in their transformation when hoisting, for instance interacting with some "store". 1/n |
| 08:44:09 | → | akegalj joins (~akegalj@210-223.dsl.iskon.hr) |
| 08:44:52 | <kuribas> | kenran: I don't have much experience with polysemy, but the idea of effect systems is to abstract over effects, so you have mostly pure functions. They make concurrency much easier since you don't have to worry about mutable structures. |
| 08:45:03 | × | zer0bitz quits (~zer0bitz@2001:2003:f443:d600:9c68:6672:1252:446) () |
| 08:45:15 | <kuribas> | kenran: For example, you can update an MVar containing an immutable structure, which means you don't have conflicts. |
| 08:45:18 | <kenran> | Now there are some concurrent processes that supervise other stuff, like running system processes producing result, but that also need to react with the store (and use other effects the server also uses). So I need lots of combinations of interpreter functions, and I feel like trying to have certain common combinations of interpreters as functions always produces lots of "visually heavy" code, and also doesn't react well when I _do_ |
| 08:45:19 | <kenran> | have to change these |
| 08:45:49 | <[Leary]> | kuribas: `Type -> Type` kinded things are types, they just aren't `Type`s. |
| 08:46:48 | <kuribas> | [Leary]: aren't Types supposed to be inhabitable? |
| 08:47:29 | <kenran> | In essence, I have lots of "little entry points", that is, "just IO", where I very often have to chain interpreter functions, and I guess I'm looking for examples of how this is best structured/factored |
| 08:48:00 | <kuribas> | kenran: what do you mean with interpreter functions? |
| 08:48:04 | <kenran> | I often find myself annoyed at working with it -- but on the other hand I can only imagine that doing this mtl-style would be even worse |
| 08:49:05 | <kenran> | kuribas: with polysemy (and I guess effectful and others as well) you have to get from your effect "set" to IO somehow in the end. The interpreter functions peel away (usually) one effect at a time, or re-interpret it into other ones |
| 08:49:06 | <Hecate> | kenran: have you ever read Servant code? |
| 08:49:12 | <Hecate> | (code that makes use of Servant) |
| 08:49:30 | <kenran> | Hecate: the server I mention is using servant :) |
| 08:49:34 | <Hecate> | kenran: https://github.com/flora-pm/flora-server/ |
| 08:49:36 | <Hecate> | have fun |
| 08:50:23 | <[Leary]> | kuribas: Not really. Sometimes "type" /is/ used to mean a `Type` (even in GHC error messages, unfortunately), but more broadly a type is any type-level entity, i.e. anything with a kind. |
| 08:50:28 | <kenran> | Hecate: ah nice, it's a flake. I always love that, being able to get started quickly :) |
| 08:50:42 | <Hecate> | kenran: I can't guarantee it works, I have no nix expertise |
| 08:51:03 | <Hecate> | kenran: You want to start at Server.hs |
| 08:52:11 | <TheMatten[m]> | kenran: I don't think you can reasonably avoid separate "entry points" if they simply happen in different places and are independent |
| 08:52:11 | <TheMatten[m]> | But you may be able to recognize some common set of effects they use - then you could create type synonym for list of those and write interpreter that processes these at once |
| 08:52:19 | <kenran> | Hecate: oh right, I remember you tweeting angrily avoid it iirc :D |
| 08:52:24 | <kenran> | about* |
| 08:52:26 | <kuribas> | [Leary]: right, but that doesn't correspond to the lambda cube or type theory, does it? |
| 08:52:39 | <kuribas> | [Leary]: it is specific haskell terminology. |
| 08:53:03 | <TheMatten[m]> | BTW, if you have questions about polysemy in general, there's official channel over at funprog.zulipchat.com |
| 08:53:12 | <Hecate> | kenran: and I stopped tweeting about it because I let the experts/poor souls to deal with it :) |
| 08:54:10 | <kenran> | TheMatten[m]: yeah exactly, this is what I'm doing right now, but now that I'm refactoring stuff the synonyms are quite "annoying" to deal with. But I feared that I couldn't really avoid it. It just _looks_ so convenient when using servant, as it enables you to write this natural transformation once (but also maybe losing some granularity there I guess) |
| 08:54:51 | <kenran> | TheMatten[m]: cool, I didn't know that! (polysemy itself is not much of an issue anymore though. If I'd start anew I'd probably take effectful for a spin now) |
| 08:55:14 | × | paddymahoney quits (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) (Remote host closed the connection) |
| 08:55:38 | <kenran> | Hecate: thanks for the link, that looks like it not only will probably answer my question, but rather show me how you structure an application with effects (on the module level), which I was also always wondering about :) |
| 08:56:22 | <TheMatten[m]> | kenran: Yeah, you'll have to pick one from granularity and convenience, I don't think there's way around it (in any effect system) |
| 08:56:28 | <Hecate> | kenran: happy to be helpful, Flora's purpose is not only to be a nice website but to also help for teaching :) |
| 08:57:12 | <kenran> | if only there were more time... that code base looks so nice, I'd love to get into that |
| 08:57:47 | <kenran> | is that the "new" record dot syntax that I'm seeing there? (I'm still forced to live with GHC 8.10) |
| 08:58:13 | <TheMatten[m]> | kenran: (There're some developments under way in Polysemy that will simplify higher-order interface and make it more powerful, maybe you can give it one more try later on 😉) |
| 08:58:46 | <[Leary]> | kuribas: The confusion extends beyond Haskell, neither use of "type" is specific to us. I'm pretty sure lambda cube calculi (such as System F_omega, which Haskell roughly corresponds to) can bind "higher kinded" types. |
| 08:58:58 | <kenran> | TheMatten[m]: oh, I didn't want to sound "annoyed" at it. What I meant was that I'd like to try something else to get a good overview. We're using it in production for nearly 2 years now and that won't change |
| 08:59:11 | <kenran> | and we're generally happy with it :) |
| 09:00:06 | × | Quinten[m] quits (~quintenkd@2001:470:69fc:105::3:1b1c) (Quit: You have been kicked for being idle) |
| 09:02:00 | <TheMatten[m]> | kenran: Haha, no problem, sounds good |
| 09:02:23 | × | zeenk quits (~zeenk@2a02:2f04:a307:2300::fba) (Remote host closed the connection) |
| 09:02:24 | <kuribas> | [Leary]: I see, thanks |
| 09:02:46 | → | zeenk joins (~zeenk@2a02:2f04:a307:2300::7fe) |
| 09:02:57 | × | jmorris quits (uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 09:03:11 | <TheMatten[m]> | kenran: That's great to hear |
| 09:10:05 | → | acidjnk joins (~acidjnk@p200300d6e715c456158a400644be7cd5.dip0.t-ipconnect.de) |
| 09:10:32 | <Hecate> | kenran: if you want I can onboard you to the codebase, I'm free for a call |
| 09:12:32 | <kenran> | Hecate: I'd love to, but I'm at work right now and that would be straining my leeway a bit too much ^^" |
| 09:13:49 | <Hecate> | kenran: hehe, no worries :) |
| 09:14:02 | <Hecate> | kenran: don't hesitate to ask questions about the codebase though, always happy to answer! |
| 09:18:47 | <kenran> | Hecate: cool! I've just forked it to try some stuff out when I have time, but I immediately ran into a (nix) error. Could you tell me what horizon-platform is? Their gitlab at https://gitlab.homotopic.tech/ seems to be down |
| 09:20:45 | × | shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 255 seconds) |
| 09:20:46 | × | elkcl quits (~elkcl@broadband-37-110-27-252.ip.moscow.rt.ru) (Ping timeout: 255 seconds) |
| 09:23:12 | → | NiceBird joins (~NiceBird@185.133.111.196) |
| 09:24:02 | <Hecate> | kenran: Horizon is https://horizon-haskell.net/ |
| 09:24:45 | <Hecate> | kenran: Dan Firth is reachable at the links present at the bottom of the page, don't hesitate to reach him out |
| 09:27:33 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
| 09:28:41 | <kenran> | Hecate: thanks, it's doing something now! |
| 09:31:17 | → | elkcl joins (~elkcl@broadband-37-110-27-252.ip.moscow.rt.ru) |
| 09:36:14 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 09:38:55 | × | chanceyan quits (~chanceyan@user/chanceyan) (Quit: Client closed) |
| 09:39:11 | → | chanceyan joins (~chanceyan@user/chanceyan) |
| 09:39:23 | <carbolymer> | I have -Werror in ghc-options in cabal.project and -Wwarn in cabal.project.local - so -Wwarn should take precedence, right? |
| 09:40:07 | <geekosaur> | I would expect it to, but I'd probably use -v3 to verify |
| 09:42:22 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 09:42:57 | <carbolymer> | -Wall -Wcompat -Wincomplete-record-updates -Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints -Wunused-packages -hide-all-packages -fob |
| 09:42:57 | <carbolymer> | ject-code -freverse-errors -Wwarn -Werror |
| 09:43:10 | <geekosaur> | uh |
| 09:43:12 | <carbolymer> | they're both there and -Werror is last |
| 09:43:35 | <carbolymer> | so I guess it wins |
| 09:44:19 | <carbolymer> | how can I disable it? ghc docs say that -Wwarn should work, but I guess not in this case... |
| 09:44:30 | <geekosaur> | I'd toss that one at #hackage tbh |
| 09:45:18 | <carbolymer> | I'll try there, thanks |
| 09:47:52 | × | chanceyan quits (~chanceyan@user/chanceyan) (Quit: Client closed) |
| 09:49:49 | <ncf> | kuribas: assuming * : □, you can derive (* → *) : □ and thus (* → *) → * : □ |
| 09:49:59 | <ncf> | see https://en.wikipedia.org/wiki/Lambda_cube#Formal_definition |
| 10:00:13 | × | motherfsck quits (~motherfsc@user/motherfsck) (K-Lined) |
| 10:00:24 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 10:01:41 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 10:04:56 | → | gurkenglas joins (~gurkengla@dynamic-046-114-159-236.46.114.pool.telefonica.de) |
| 10:05:37 | <kuribas> | ncf: thanks |
| 10:08:12 | → | Square joins (~Square4@user/square) |
| 10:10:04 | × | xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 265 seconds) |
| 10:17:16 | xsarnik2 | is now known as xsarnik |
| 10:17:27 | × | Clint quits (~Clint@user/clint) (Ping timeout: 250 seconds) |
| 10:17:28 | × | nisstyre quits (wes@user/nisstyre) (Ping timeout: 252 seconds) |
| 10:17:37 | → | Clint joins (~Clint@user/clint) |
| 10:17:53 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 250 seconds) |
| 10:17:54 | × | dfg quits (~dfg@user/dfg) (Ping timeout: 250 seconds) |
| 10:18:06 | → | dfg joins (~dfg@dfg.rocks) |
| 10:18:06 | × | dfg quits (~dfg@dfg.rocks) (Changing host) |
| 10:18:06 | → | dfg joins (~dfg@user/dfg) |
| 10:18:51 | → | Maxdamantus joins (~Maxdamant@user/maxdamantus) |
| 10:19:02 | → | nisstyre joins (wes@user/nisstyre) |
| 10:20:55 | × | cheater quits (~Username@user/cheater) (Read error: Connection reset by peer) |
| 10:21:43 | → | cheater joins (~Username@user/cheater) |
| 10:24:36 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 10:24:48 | × | freeside quits (~mengwong@202.161.55.11) (Ping timeout: 252 seconds) |
| 10:28:28 | × | vglfr quits (~vglfr@88.155.38.111) (Ping timeout: 265 seconds) |
| 10:35:23 | <ncf> | just spent way too long rifling through my bookmarks to find this amazing website https://crypto.stanford.edu/~blynn/lambda/pts.html |
| 10:46:12 | → | Guest|59 joins (~Guest|59@114-37-197-26.dynamic-ip.hinet.net) |
| 10:54:50 | → | vglfr joins (~vglfr@88.155.38.111) |
| 10:58:58 | × | Vq quits (~vq@90-227-192-206-no77.tbcn.telia.com) (Ping timeout: 268 seconds) |
| 11:00:13 | → | Vq joins (~vq@90-227-192-206-no77.tbcn.telia.com) |
| 11:01:10 | <jackdk> | Strange question, but maybe one of you reads similar posts to me. I'm trying to find a blog post about forgotten tools from software engineering research. I remember it talking about rather clever tools (most written in java) that have bitrotted and how much of a shame that it was. One was a tool that did a sort of search starting from the data types you had, looking for the data types you wanted, and they had research showing that it worked well. |
| 11:01:44 | <jackdk> | Does this ring a bell for anyone? I feel like it would have been written by someone like Sandy Maguire or Hillel Wayne, but I can't find it on their websites, and my search-fu is failing me. |
| 11:03:30 | <Hecate> | I do recall Vanessa asking about forgotten Haskell tools |
| 11:04:13 | → | xff0x joins (~xff0x@ai098135.d.east.v6connect.net) |
| 11:04:27 | <Hecate> | jackdk: was it published before covid? |
| 11:04:50 | <jackdk> | 2019 feels right, but it's a low-confidence feeling |
| 11:17:43 | → | nate1 joins (~nate@98.45.169.16) |
| 11:19:15 | → | coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 11:21:04 | → | zer0bitz joins (~zer0bitz@2001:2003:f443:d600:f43c:a9e1:5195:3fd4) |
| 11:21:53 | × | mesaoptimizer quits (34cef275bb@user/PapuaHardyNet) (Quit: mesaoptimizer) |
| 11:22:02 | → | mesaoptimizer joins (34cef275bb@198.108.77.94) |
| 11:22:20 | × | hugo quits (znc@verdigris.lysator.liu.se) (Ping timeout: 260 seconds) |
| 11:22:22 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 252 seconds) |
| 11:22:46 | mesaoptimizer | is now known as mesaoptimizer|no |
| 11:23:08 | mesaoptimizer|no | is now known as mesaoptimizer|dn |
| 11:23:24 | mesaoptimizer0 | is now known as mesaoptimizer |
| 11:24:19 | × | andrewboltachev quits (~andrey@178.141.217.5) (Quit: Leaving.) |
| 11:29:01 | × | son0p quits (~ff@181.136.122.143) (Ping timeout: 240 seconds) |
| 11:29:16 | → | hugo joins (znc@verdigris.lysator.liu.se) |
| 11:32:38 | × | dextaa quits (~DV@user/dextaa) (Ping timeout: 252 seconds) |
| 11:34:56 | × | AkechiShiro quits (~licht@user/akechishiro) (Ping timeout: 248 seconds) |
| 11:35:02 | × | Luj quits (~Luj@2a01:e0a:5f9:9681:fb5f:6c8:ee87:5310) (Ping timeout: 246 seconds) |
| 11:37:34 | × | Guest|59 quits (~Guest|59@114-37-197-26.dynamic-ip.hinet.net) (Quit: Connection closed) |
| 11:40:54 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 11:41:58 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 11:43:59 | × | cfricke quits (~cfricke@user/cfricke) (Ping timeout: 268 seconds) |
| 11:50:56 | × | mesaoptimizer quits (apotheosis@user/PapuaHardyNet) (Quit: zzz) |
| 11:51:17 | → | mesaoptimizer joins (apotheosis@user/PapuaHardyNet) |
| 12:02:17 | ← | mesaoptimizer parts (apotheosis@user/PapuaHardyNet) () |
| 12:07:28 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 252 seconds) |
| 12:08:49 | × | hugo quits (znc@verdigris.lysator.liu.se) (Ping timeout: 250 seconds) |
| 12:10:04 | → | mikess joins (~sam@user/mikess) |
| 12:22:15 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 12:23:17 | → | hugo joins (znc@verdigris.lysator.liu.se) |
| 12:23:27 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 12:27:50 | → | dextaa joins (~DV@user/dextaa) |
| 12:28:22 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 12:28:44 | → | Luj joins (~Luj@2a01:e0a:5f9:9681:d4f1:5756:cd71:d4c) |
| 12:34:06 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 12:34:37 | × | chomwitt quits (~chomwitt@2a02:587:7a16:e500:1ac0:4dff:fedb:a3f1) (Ping timeout: 265 seconds) |
| 12:50:49 | × | robobub quits (uid248673@id-248673.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 12:52:25 | → | crazazy joins (~user@130.89.171.62) |
| 12:52:35 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:c911:2283:ea7e:cb15) |
| 12:56:45 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 12:56:58 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:c911:2283:ea7e:cb15) (Ping timeout: 252 seconds) |
| 13:00:16 | × | acidjnk quits (~acidjnk@p200300d6e715c456158a400644be7cd5.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 13:01:42 | → | shapr joins (~user@c-68-35-51-250.hsd1.al.comcast.net) |
| 13:03:26 | → | chomwitt joins (~chomwitt@ppp-94-69-24-223.home.otenet.gr) |
| 13:07:48 | → | dipper_ joins (~dipper@117.61.104.152) |
| 13:08:30 | × | dipper quits (~dipper@117.61.104.152) (Ping timeout: 260 seconds) |
| 13:11:23 | → | random-jellyfish joins (~random-je@user/random-jellyfish) |
| 13:12:01 | × | random-jellyfish quits (~random-je@user/random-jellyfish) (Client Quit) |
| 13:15:07 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 250 seconds) |
| 13:23:18 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 13:34:23 | × | noctux quits (~noctux@user/noctux) (Ping timeout: 246 seconds) |
| 13:34:31 | → | noctux joins (~noctux@user/noctux) |
| 13:36:32 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 13:36:32 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 13:36:32 | → | wroathe joins (~wroathe@user/wroathe) |
| 13:39:09 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 13:40:16 | → | Volt_ joins (~Volt_@c-73-167-118-200.hsd1.ma.comcast.net) |
| 13:43:03 | × | mei quits (~mei@user/mei) (Remote host closed the connection) |
| 13:45:29 | → | mei joins (~mei@user/mei) |
| 13:48:59 | × | gurkenglas quits (~gurkengla@dynamic-046-114-159-236.46.114.pool.telefonica.de) (Ping timeout: 248 seconds) |
| 13:55:20 | × | wroathe quits (~wroathe@user/wroathe) (Quit: leaving) |
| 13:56:03 | × | coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
| 14:00:38 | × | mei quits (~mei@user/mei) (Remote host closed the connection) |
| 14:01:31 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 240 seconds) |
| 14:01:41 | → | andrewboltachev joins (~andrey@178.141.217.5) |
| 14:02:25 | → | Maxdamantus joins (~Maxdamant@user/maxdamantus) |
| 14:03:04 | → | mei joins (~mei@user/mei) |
| 14:03:48 | × | vglfr quits (~vglfr@88.155.38.111) (Ping timeout: 255 seconds) |
| 14:05:02 | → | acidjnk joins (~acidjnk@p200300d6e715c456dce25f8032f84f0b.dip0.t-ipconnect.de) |
| 14:15:20 | → | vglfr joins (~vglfr@88.155.38.111) |
| 14:17:54 | × | Volt_ quits (~Volt_@c-73-167-118-200.hsd1.ma.comcast.net) (Quit: ) |
| 14:19:57 | × | xff0x quits (~xff0x@ai098135.d.east.v6connect.net) (Quit: xff0x) |
| 14:20:55 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 265 seconds) |
| 14:23:24 | → | xff0x joins (~xff0x@2405:6580:b080:900:875d:6d45:375d:580d) |
| 14:23:51 | → | ft joins (~ft@p4fc2a88b.dip0.t-ipconnect.de) |
| 14:24:10 | × | vglfr quits (~vglfr@88.155.38.111) (Read error: Connection reset by peer) |
| 14:24:38 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:3faf:4fc:3166:7b21) (Quit: WeeChat 2.8) |
| 14:25:16 | → | vglfr joins (~vglfr@88.155.38.111) |
| 14:26:45 | × | dipper_ quits (~dipper@117.61.104.152) (Remote host closed the connection) |
| 14:27:12 | → | dipper_ joins (~dipper@117.61.104.152) |
| 14:28:50 | × | vglfr quits (~vglfr@88.155.38.111) (Read error: Connection reset by peer) |
| 14:29:03 | → | freeside joins (~mengwong@103.252.202.85) |
| 14:29:36 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
| 14:31:15 | × | hugo quits (znc@verdigris.lysator.liu.se) (Ping timeout: 255 seconds) |
| 14:31:36 | → | vglfr joins (~vglfr@88.155.38.111) |
| 14:33:02 | → | aliosablack joins (~chomwitt@ppp-94-67-189-62.home.otenet.gr) |
| 14:34:19 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 248 seconds) |
| 14:34:51 | × | chomwitt quits (~chomwitt@ppp-94-69-24-223.home.otenet.gr) (Ping timeout: 248 seconds) |
| 14:34:56 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 14:35:27 | → | freeside joins (~mengwong@103.252.202.85) |
| 14:38:12 | → | hugo joins (znc@verdigris.lysator.liu.se) |
| 14:40:11 | × | vglfr quits (~vglfr@88.155.38.111) (Ping timeout: 248 seconds) |
| 14:40:31 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 240 seconds) |
| 14:40:43 | × | todi quits (~snuckls@p5dca57c0.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 14:40:58 | → | freeside joins (~mengwong@103.252.202.85) |
| 14:41:10 | → | vglfr joins (~vglfr@88.155.38.111) |
| 14:42:07 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 14:44:14 | → | bontaq joins (~user@ool-45779b84.dyn.optonline.net) |
| 14:44:59 | × | crazazy quits (~user@130.89.171.62) (Ping timeout: 248 seconds) |
| 14:46:28 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 252 seconds) |
| 14:50:15 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 14:52:38 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 14:54:28 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) |
| 14:59:07 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) (Ping timeout: 252 seconds) |
| 15:00:44 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 15:02:22 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 15:03:31 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 252 seconds) |
| 15:05:46 | × | kenran quits (~user@user/kenran) (Remote host closed the connection) |
| 15:07:46 | × | vglfr quits (~vglfr@88.155.38.111) (Read error: Connection reset by peer) |
| 15:08:03 | → | vglfr joins (~vglfr@88.155.38.111) |
| 15:09:47 | → | freeside joins (~mengwong@103.252.202.85) |
| 15:12:57 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) |
| 15:15:57 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 246 seconds) |
| 15:16:14 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 15:16:53 | × | JScript quits (~JScript@103.137.12.220) (Ping timeout: 250 seconds) |
| 15:17:00 | → | coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 15:17:30 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 15:18:10 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 15:19:15 | → | nate1 joins (~nate@98.45.169.16) |
| 15:19:27 | → | JScript joins (~JScript@103.137.12.220) |
| 15:19:50 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 15:23:34 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 15:24:03 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 260 seconds) |
| 15:24:58 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 15:28:28 | → | califax joins (~califax@user/califx) |
| 15:29:51 | → | phma joins (phma@2001:5b0:2172:ce28:ab20:59d:e6d5:b2fb) |
| 15:30:41 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) (Remote host closed the connection) |
| 15:30:42 | → | spacenautx joins (~spacenaut@user/spacenautx) |
| 15:32:11 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
| 15:32:28 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 15:33:27 | → | __monty__ joins (~toonn@user/toonn) |
| 15:33:32 | → | hgolden joins (~hgolden@cpe-172-251-233-141.socal.res.rr.com) |
| 15:36:50 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 15:37:42 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 15:38:36 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 15:40:06 | × | dipper_ quits (~dipper@117.61.104.152) (Ping timeout: 255 seconds) |
| 15:43:07 | → | freeside joins (~mengwong@103.252.202.85) |
| 15:45:30 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 255 seconds) |
| 15:47:45 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 260 seconds) |
| 15:53:29 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) |
| 15:55:33 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 15:59:49 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 16:02:31 | × | cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds) |
| 16:04:19 | → | cheater joins (~Username@user/cheater) |
| 16:12:33 | → | y04nn joins (~username@2a03:1b20:5:f011::aaae) |
| 16:12:57 | <vglfr> | Hey guys, how do I make trifecta's Unlined work? `parseString integer mempty "1 \n"` wants `Parser a` while `Unlined integer` produces `Unlined Parser a` so I'm assuming it needs to be flipped somehow to `Parser Unlined a`? https://hackage.haskell.org/package/parsers-0.12.10/docs/Text-Parser-Token.html#t:Unlined |
| 16:13:03 | → | myco joins (~myco@24-116-167-217.cpe.sparklight.net) |
| 16:13:26 | → | Guest42 joins (~Guest42@49.156.73.140) |
| 16:15:17 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) (Remote host closed the connection) |
| 16:15:56 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 268 seconds) |
| 16:16:55 | × | Guest42 quits (~Guest42@49.156.73.140) (Client Quit) |
| 16:18:24 | × | bgamari quits (~bgamari@64.223.175.233) (Ping timeout: 265 seconds) |
| 16:18:25 | × | vglfr quits (~vglfr@88.155.38.111) (Read error: Connection reset by peer) |
| 16:18:43 | → | bgamari joins (~bgamari@64.223.175.103) |
| 16:19:10 | → | vglfr joins (~vglfr@88.155.38.111) |
| 16:19:19 | × | codaraxis quits (~codaraxis@user/codaraxis) (Ping timeout: 276 seconds) |
| 16:20:22 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC (IRC client for Emacs 27.1)) |
| 16:21:45 | × | xff0x quits (~xff0x@2405:6580:b080:900:875d:6d45:375d:580d) (Ping timeout: 246 seconds) |
| 16:22:22 | <ncf> | vglfr: parseString (runUnlined integer) mempty "1 \n" ? |
| 16:23:40 | → | xff0x joins (~xff0x@ai098135.d.east.v6connect.net) |
| 16:23:56 | <ncf> | Success 1 |
| 16:26:31 | <vglfr> | ncf: works, many thanks! |
| 16:31:48 | → | econo joins (uid147250@user/econo) |
| 16:34:41 | ← | L29Ah parts (~L29Ah@wikipedia/L29Ah) () |
| 16:35:09 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 16:39:37 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 16:39:45 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 16:44:36 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) |
| 16:48:22 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 265 seconds) |
| 16:55:02 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) (Remote host closed the connection) |
| 16:55:10 | → | mechap joins (~mechap@user/mechap) |
| 16:57:47 | → | codaraxis joins (~codaraxis@user/codaraxis) |
| 16:59:27 | × | bgamari quits (~bgamari@64.223.175.103) (Ping timeout: 265 seconds) |
| 17:00:03 | × | TheCoffeMaker quits (~TheCoffeM@user/thecoffemaker) (Max SendQ exceeded) |
| 17:00:24 | → | freeside joins (~mengwong@103.252.202.85) |
| 17:00:44 | → | TheCoffeMaker joins (~TheCoffeM@user/thecoffemaker) |
| 17:01:03 | → | bgamari joins (~bgamari@64.223.233.113) |
| 17:01:07 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds) |
| 17:04:47 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 250 seconds) |
| 17:05:29 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) |
| 17:15:23 | × | myco quits (~myco@24-116-167-217.cpe.sparklight.net) (Ping timeout: 248 seconds) |
| 17:15:50 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
| 17:18:05 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 17:22:39 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 265 seconds) |
| 17:22:48 | <integral> | jackdk: https://www.pathsensitive.com/2021/03/developer-tools-can-be-magic-instead.html ? |
| 17:23:16 | → | freeside joins (~mengwong@103.252.202.85) |
| 17:25:01 | → | nschoe joins (~q@2a01:e0a:8e:a190:a9e1:9e08:69e3:fe6d) |
| 17:27:39 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 248 seconds) |
| 17:27:54 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 17:29:32 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) (Remote host closed the connection) |
| 17:30:59 | × | nschoe quits (~q@2a01:e0a:8e:a190:a9e1:9e08:69e3:fe6d) (Ping timeout: 246 seconds) |
| 17:36:37 | → | Tuplanolla joins (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) |
| 17:37:02 | → | szkl joins (uid110435@id-110435.uxbridge.irccloud.com) |
| 17:41:31 | × | briandaed quits (~briandaed@185.234.210.211) (Ping timeout: 248 seconds) |
| 17:43:21 | shapr | hops cheerfully |
| 17:45:52 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) |
| 17:50:21 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 17:54:52 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 276 seconds) |
| 17:59:51 | → | ph88 joins (~ph88@91.66.101.83) |
| 18:02:17 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds) |
| 18:04:44 | × | ph88 quits (~ph88@91.66.101.83) (Client Quit) |
| 18:07:57 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) (Remote host closed the connection) |
| 18:09:11 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 18:10:30 | × | jle` quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 265 seconds) |
| 18:11:01 | × | y04nn quits (~username@2a03:1b20:5:f011::aaae) (Ping timeout: 240 seconds) |
| 18:12:13 | → | jle` joins (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
| 18:12:36 | → | freeside joins (~mengwong@103.252.202.85) |
| 18:17:09 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 250 seconds) |
| 18:18:12 | <sm> | g'day all |
| 18:18:55 | <Hecate> | hey hey |
| 18:19:29 | <mon_aaraj> | hello fungis and fungirls |
| 18:19:39 | <mon_aaraj> | and funnbs |
| 18:19:43 | <Hecate> | mon_aaraj: ouh, nice intro :) |
| 18:19:58 | <sm> | In addition to the pleasantries, I have a boring question about setEnv.. I think it sets the variable in your program's process environment, so it will be visible to all subsequently evaluated IO code until program ends ? |
| 18:19:58 | <sm> | https://hackage.haskell.org/package/base-4.18.0.0/docs/System-Environment.html#v:setEnv |
| 18:20:32 | sm | was looking for a transient locally-scoped withEnvironment |
| 18:20:36 | <Hecate> | sm: can you reproduce this on the playground? |
| 18:20:49 | <Hecate> | hmm, are you looking for a Reader monad? :P |
| 18:21:33 | <sm> | no I need to set an environment variable before running an external program (LESS=R, for less) |
| 18:21:53 | <ncf> | you can invoke less with an extended environment |
| 18:22:09 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) |
| 18:23:09 | <sm> | oh I could use less's command line flags, true. Except I'm not (shouldn't be) running less directly, but rather user's $PAGER |
| 18:23:50 | <ncf> | then you probably also want to respect the user's LESS? |
| 18:24:17 | <sm> | via https://hackage.haskell.org/package/pager-0.1.1.0/docs/System-Pager.html#v:printOrPage |
| 18:24:32 | <sm> | yes, except that I want to override R for displaying some built-in help (either forcing it off or on, I'm not sure yet) |
| 18:24:44 | <sm> | context: https://github.com/simonmichael/hledger/issues/2015 |
| 18:25:58 | <sm> | or perhaps I need to give up on the idea of using ANSI at all in paged output, as I'll never get it robust ? |
| 18:26:24 | <geekosaur> | most programs just check if the output is a terminal and disable ANSI sequences if not |
| 18:26:41 | <geekosaur> | because indeed there's no way to do it robustly |
| 18:26:46 | <sm> | yes I'm doing that |
| 18:26:57 | <sm> | this is definitely a terminal, but with unknown pager setup |
| 18:27:31 | <geekosaur> | outputting to a pager is definitely not outputting to a terminal |
| 18:27:39 | <sm> | it's a pity, because paged long output with bold headings is really better when it works |
| 18:27:40 | <geekosaur> | and I've found -R to be buggy |
| 18:27:54 | <geekosaur> | breaks with line wrapping for example |
| 18:28:55 | <sm> | perhaps it must be configurable via program-specific env var then. Without tripping over the already complicated NO_COLOR/--color semantics.. |
| 18:29:03 | × | NiceBird quits (~NiceBird@185.133.111.196) (Quit: Leaving) |
| 18:30:30 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 18:31:55 | → | kenran joins (~user@user/kenran) |
| 18:31:58 | → | ph88 joins (~ph88@ip5b426553.dynamic.kabel-deutschland.de) |
| 18:34:11 | <ph88> | is it possile to see the generated code by deriving somewhere ? |
| 18:34:44 | <geekosaur> | -ddump-deriv |
| 18:34:50 | <ph88> | thanks :) |
| 18:35:47 | <geekosaur> | with cabal or stack you then have to search for a file foo.dump-deriv |
| 18:38:25 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 276 seconds) |
| 18:38:45 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 18:43:10 | → | gurkenglas joins (~gurkengla@dynamic-046-114-159-236.46.114.pool.telefonica.de) |
| 18:46:50 | × | talismanick quits (~talismani@2601:200:c000:f7a0::fb70) (Ping timeout: 260 seconds) |
| 18:47:37 | <tomsmeding> | sm: locally scoped environment variables is not a thing, but how are you starting the pager process? System.Process has a field for the child environment in CreateProcess |
| 18:50:29 | <sm> | thanks tomsmeding. Currently that's out of my control, done by the pager library. |
| 18:50:42 | <sm> | I think I need to meditate more on "when to attempt ANSI" |
| 18:50:44 | <tomsmeding> | that's unfortunate :p |
| 18:53:29 | <sm> | detecting on a per-call basis whether output is larger than window and a pager is about to be used seems.. not the way to go |
| 18:55:27 | → | Inst joins (~Inst@2601:6c4:4081:54f0:2db7:7969:50f2:df0c) |
| 18:55:29 | <Inst> | hmmm |
| 18:55:37 | <Inst> | for rose stream, I'm still trying to think of the uses |
| 18:55:51 | <Inst> | data RoseStream a = RS a [RoseStream a] |
| 18:56:08 | <Inst> | what about a multi-cored CPU? |
| 18:56:21 | <Inst> | could traverse into it |
| 18:56:49 | <tomsmeding> | isn't that just a rose tree |
| 18:58:17 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 18:59:11 | → | freeside joins (~mengwong@103.252.202.85) |
| 18:59:11 | <Inst> | yeah, it is ;_; |
| 18:59:32 | <Inst> | since termination is implied by RS a [] |
| 18:59:37 | <Inst> | a `RS` [] |
| 19:00:55 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 250 seconds) |
| 19:03:06 | → | waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
| 19:03:07 | × | ph88 quits (~ph88@ip5b426553.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds) |
| 19:03:45 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 260 seconds) |
| 19:03:57 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 250 seconds) |
| 19:04:44 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 252 seconds) |
| 19:05:00 | → | isekaijin joins (~isekaijin@user/isekaijin) |
| 19:08:06 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 19:13:16 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 19:13:47 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) (Remote host closed the connection) |
| 19:17:31 | <monochrom> | sm: Sometimes, you write your program to take a command line option or UI option for users to specify "force colouring" and "force no colouring", like ls's --colour and --no-colour. |
| 19:19:23 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 19:20:45 | → | nate1 joins (~nate@98.45.169.16) |
| 19:21:45 | → | Guest42 joins (~Guest42@49.156.73.140) |
| 19:22:53 | <sm> | I have that, hledger --help --colour=no works in fact. |
| 19:23:30 | <monochrom> | I have written a graph DFS algorithm that outputs a rose tree (it's Data.Tree's Tree) but it's lazy (at least I think so, haven't tested how lazy it is), so that until you demand a child node, the DFS is suspended right after the parent vertex. |
| 19:23:47 | <sm> | but I'm leaning towards no ANSI ever by default, and an opt-in HLEDGER_COLOR var to turn it on. Alas |
| 19:24:33 | <monochrom> | Does --colour=NONONOPLEASEGODNO also work? >:) |
| 19:24:50 | <tomsmeding> | if you pass that you deserve colour |
| 19:24:55 | <monochrom> | hahaha |
| 19:25:02 | <sm> | you get colour :) |
| 19:25:07 | <tomsmeding> | in any case it's a colourful argument |
| 19:25:19 | <monochrom> | BTW where is Haskell Weekly News? |
| 19:25:26 | <sm> | I'll tighten that up |
| 19:25:31 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 240 seconds) |
| 19:26:36 | <monochrom> | I reckon that my input contains 4 NO's so quadruple negation means "true" anyway. :D |
| 19:27:49 | <Guest42> | Hi everyone, I am interested in participating summer of haskell 2023. I want to contact the project mentor Aaron Allen for discussion. Can you tell me his username here or maybe email. I am actually new to libera chat platform also. so its bit confusing. |
| 19:31:01 | → | aazam joins (~aazam@103.182.66.28) |
| 19:32:42 | ← | L29Ah parts (~L29Ah@wikipedia/L29Ah) () |
| 19:34:38 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 19:35:00 | × | akegalj quits (~akegalj@210-223.dsl.iskon.hr) (Quit: leaving) |
| 19:36:40 | × | aazam quits (~aazam@103.182.66.28) (Quit: Client closed) |
| 19:37:52 | × | Guest42 quits (~Guest42@49.156.73.140) (Quit: Client closed) |
| 19:42:07 | × | gurkenglas quits (~gurkengla@dynamic-046-114-159-236.46.114.pool.telefonica.de) (Ping timeout: 276 seconds) |
| 19:43:05 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds) |
| 19:43:26 | → | gurkenglas joins (~gurkengla@dynamic-046-114-181-142.46.114.pool.telefonica.de) |
| 19:47:38 | ← | L29Ah parts (~L29Ah@wikipedia/L29Ah) () |
| 19:50:35 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 19:50:44 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 19:53:09 | → | Guest42 joins (~Guest42@49.156.73.140) |
| 19:55:12 | × | Guest42 quits (~Guest42@49.156.73.140) (Client Quit) |
| 19:58:41 | <sm> | when will when be in Prelude |
| 19:59:01 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 19:59:55 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 20:00:40 | × | _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
| 20:08:23 | × | trev quits (~trev@user/trev) (Quit: trev) |
| 20:08:42 | → | pavonia joins (~user@user/siracusa) |
| 20:09:19 | → | jumpnbrownweasel joins (~jumpnbrow@2603-800c-240f-1c55-8db8-2c23-1ffe-bf07.res6.spectrum.com) |
| 20:13:29 | ← | L29Ah parts (~L29Ah@wikipedia/L29Ah) () |
| 20:14:16 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) |
| 20:18:35 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:2c24:c958:e9eb:d096) (Ping timeout: 256 seconds) |
| 20:19:36 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
| 20:28:43 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 20:30:22 | → | Kuttenbrunzer joins (~Kuttenbru@2a02:8108:8b80:1d48::a37e) |
| 20:30:49 | → | NiceBird joins (~NiceBird@185.133.111.196) |
| 20:34:19 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 248 seconds) |
| 20:37:33 | × | Vq quits (~vq@90-227-192-206-no77.tbcn.telia.com) (Ping timeout: 255 seconds) |
| 20:39:07 | → | heraldo joins (~heraldo@user/heraldo) |
| 20:39:30 | → | Vq joins (~vq@90-227-192-206-no77.tbcn.telia.com) |
| 20:55:23 | <sm> | I decided to add R to $LESS and $MORE at program startup, this ensures at least less and less in more mode will show ANSI |
| 20:56:09 | <monochrom> | Ah, that helps too. |
| 21:00:29 | × | califax quits (~califax@user/califx) (Ping timeout: 255 seconds) |
| 21:01:33 | → | califax joins (~califax@user/califx) |
| 21:02:34 | × | APic quits (apic@apic.name) (Ping timeout: 265 seconds) |
| 21:03:17 | → | ph88 joins (~ph88@91.66.101.83) |
| 21:05:01 | × | kenran quits (~user@user/kenran) (Remote host closed the connection) |
| 21:12:08 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 21:14:45 | × | jwiegley quits (~jwiegley@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Quit: ZNC - http://znc.in) |
| 21:15:15 | → | dsrt^ joins (~dsrt@c-76-105-96-13.hsd1.ga.comcast.net) |
| 21:15:41 | <hpc> | but not at most more in less mode? |
| 21:16:53 | ski | glances around warily |
| 21:20:53 | × | segfaultfizzbuzz quits (~segfaultf@108.211.201.53) (Ping timeout: 250 seconds) |
| 21:21:48 | → | todi joins (~snuckls@p5dca57c0.dip0.t-ipconnect.de) |
| 21:30:21 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 21:30:23 | × | coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
| 21:33:35 | → | _xor joins (~xor@50.216.161.66.ded-dsl.fuse.net) |
| 21:33:48 | × | codaraxis quits (~codaraxis@user/codaraxis) (Ping timeout: 264 seconds) |
| 21:34:06 | → | jwiegley joins (~jwiegley@76-234-69-149.lightspeed.frokca.sbcglobal.net) |
| 21:40:45 | × | gurkenglas quits (~gurkengla@dynamic-046-114-181-142.46.114.pool.telefonica.de) (Ping timeout: 265 seconds) |
| 21:41:15 | × | heraldo quits (~heraldo@user/heraldo) (Ping timeout: 250 seconds) |
| 21:41:32 | × | NiceBird quits (~NiceBird@185.133.111.196) (Ping timeout: 268 seconds) |
| 21:42:07 | → | heraldo joins (~heraldo@user/heraldo) |
| 21:44:40 | → | Guest7818 joins (~talismani@c-98-238-242-189.hsd1.ca.comcast.net) |
| 21:46:51 | × | heraldo quits (~heraldo@user/heraldo) (Ping timeout: 255 seconds) |
| 21:47:37 | → | heraldo joins (~heraldo@user/heraldo) |
| 21:47:38 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 21:48:47 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 21:48:59 | × | Guest7818 quits (~talismani@c-98-238-242-189.hsd1.ca.comcast.net) (Ping timeout: 248 seconds) |
| 21:50:36 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 21:51:11 | <sm> | heh. You remind me of most, I wonder if most mimics more or less. |
| 21:51:22 | juri_ | glances at ski hungrilly. |
| 21:51:34 | × | shapr quits (~user@c-68-35-51-250.hsd1.al.comcast.net) (Ping timeout: 252 seconds) |
| 21:52:15 | × | heraldo quits (~heraldo@user/heraldo) (Ping timeout: 255 seconds) |
| 21:53:08 | → | heraldo joins (~heraldo@user/heraldo) |
| 21:53:28 | × | heraldo quits (~heraldo@user/heraldo) (Client Quit) |
| 21:54:01 | × | Cale quits (~cale@cpe80d04ade0a03-cm80d04ade0a01.cpe.net.cable.rogers.com) (Remote host closed the connection) |
| 21:54:16 | × | michalz quits (~michalz@185.246.207.193) (Remote host closed the connection) |
| 21:55:31 | → | Cale joins (~cale@cpe80d04ade0a03-cm80d04ade0a01.cpe.net.cable.rogers.com) |
| 21:57:37 | → | segfaultfizzbuzz joins (~segfaultf@108.211.201.53) |
| 21:59:39 | × | aliosablack quits (~chomwitt@ppp-94-67-189-62.home.otenet.gr) (Ping timeout: 248 seconds) |
| 22:04:59 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 264 seconds) |
| 22:15:37 | ski | grills a shish kabob for juri_ |
| 22:23:57 | → | shriekingnoise joins (~shrieking@186.137.175.87) |
| 22:26:27 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 22:39:59 | → | shapr joins (~user@c-68-35-51-250.hsd1.al.comcast.net) |
| 22:41:59 | × | Kuttenbrunzer quits (~Kuttenbru@2a02:8108:8b80:1d48::a37e) (Quit: Where is it) |
| 22:43:33 | × | todi quits (~snuckls@p5dca57c0.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 22:50:35 | × | MajorBiscuit quits (~MajorBisc@2001:1c00:2408:a400:7f99:b6d8:c8b8:dc05) (Ping timeout: 250 seconds) |
| 22:57:14 | × | mechap quits (~mechap@user/mechap) (Ping timeout: 246 seconds) |
| 22:59:27 | → | mechap joins (~mechap@user/mechap) |
| 22:59:48 | <juri_> | all veggies, please. :) |
| 23:00:01 | → | freeside joins (~mengwong@103.252.202.85) |
| 23:00:52 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 23:02:03 | <tusko> | tomsmeding, I was trying to use lambdabot in private chat but had some trouble. I don't know all the operators >, @, : etc but I chatted with lambdabot for a while and figured just a little bit out |
| 23:04:32 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 252 seconds) |
| 23:04:53 | <geekosaur> | https://github.com/geekosaur/lambdabot/blob/command-doc/doc/commands.md |
| 23:05:27 | <tusko> | -/\_ many blessings kind stranger |
| 23:06:04 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 23:06:55 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving) |
| 23:06:57 | → | mauke_ joins (~mauke@user/mauke) |
| 23:09:06 | × | mauke quits (~mauke@user/mauke) (Ping timeout: 268 seconds) |
| 23:09:07 | mauke_ | is now known as mauke |
| 23:10:10 | × | xff0x quits (~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 265 seconds) |
| 23:10:55 | → | xff0x joins (~xff0x@178.255.149.135) |
| 23:11:52 | → | mechap_ joins (~mechap@user/mechap) |
| 23:12:50 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 23:13:57 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 23:14:18 | → | APic joins (apic@apic.name) |
| 23:14:28 | <ski> | nw, juri_, how about some plantain, batate, tamarillo, taro, salak ? |
| 23:14:51 | × | mechap quits (~mechap@user/mechap) (Ping timeout: 250 seconds) |
| 23:22:17 | → | nate1 joins (~nate@98.45.169.16) |
| 23:26:07 | × | xff0x quits (~xff0x@178.255.149.135) (Ping timeout: 250 seconds) |
| 23:26:37 | × | Tuplanolla quits (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.) |
| 23:27:40 | × | nate1 quits (~nate@98.45.169.16) (Ping timeout: 276 seconds) |
| 23:28:08 | → | xff0x joins (~xff0x@2405:6580:b080:900:875d:6d45:375d:580d) |
| 23:31:44 | × | andrewboltachev quits (~andrey@178.141.217.5) (Quit: Leaving.) |
| 23:32:11 | × | zeenk quits (~zeenk@2a02:2f04:a307:2300::7fe) (Quit: Konversation terminated!) |
| 23:33:41 | <tusko> | tu comes batata? |
| 23:33:46 | → | dipper_ joins (~dipper@203.168.11.78) |
| 23:35:18 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 255 seconds) |
| 23:36:32 | × | acidjnk quits (~acidjnk@p200300d6e715c456dce25f8032f84f0b.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 23:39:09 | → | freeside joins (~mengwong@103.252.202.85) |
| 23:40:26 | × | AlexNoo quits (~AlexNoo@94.233.240.143) (Read error: Connection reset by peer) |
| 23:40:48 | × | ph88 quits (~ph88@91.66.101.83) (Ping timeout: 248 seconds) |
| 23:40:50 | → | AlexNoo joins (~AlexNoo@94.233.240.143) |
| 23:44:00 | × | freeside quits (~mengwong@103.252.202.85) (Ping timeout: 265 seconds) |
| 23:51:51 | → | czy joins (~user@host-140-25.ilcub310.champaign.il.us.clients.pavlovmedia.net) |
| 23:56:58 | × | Midjak quits (~Midjak@82.66.147.146) (Quit: This computer has gone to sleep) |
| 23:57:19 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 250 seconds) |
| 23:58:58 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
All times are in UTC on 2023-04-06.