Home freenode/#haskell: Logs Calendar

Logs: freenode/#haskell

←Prev  Next→ 502,152 events total
2021-03-15 21:08:12 chrisosaurus joins (chris@segfault.net.nz)
2021-03-15 21:08:26 × hyperisco quits (~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 260 seconds)
2021-03-15 21:08:37 <Gurkenglas> > eval (+1) $ S undefined -- <tomsmeding> Gurkenglas: for which 'f' is 'eval f x' not equal to 'iterate S x !! f 0' :) although you may have been thinking "either that implementation is wrong or this equality holds"
2021-03-15 21:08:40 <lambdabot> S (S (S *Exception: Prelude.undefined
2021-03-15 21:08:53 <tomsmeding> Gurkenglas: I was indeed :p
2021-03-15 21:09:58 <tomsmeding> funny how lambdabot seems to go one S too deep
2021-03-15 21:10:01 <Gurkenglas> should have been like "there's your counterexample! wait." before talking about it being wrong
2021-03-15 21:10:14 × epstein quits (~dwsjeid91@193.27.14.135) (Ping timeout: 264 seconds)
2021-03-15 21:11:55 <monochrom> If foo is non-strict, foo (unS x) is non-strict in x, too, yes.
2021-03-15 21:13:12 <__minoru__shirae> hololeap: what does unlift-stm library do?
2021-03-15 21:13:13 <monochrom> My favourite example is "const () (unS whatever)" and generally "const () (f $!!!!! x)" it doesn't matter how many seqs and pattern matchings you have in "f $!!!! x", const simply doesn't care.
2021-03-15 21:15:30 <monochrom> The subtle difference between "'seq x y' causes evaluation of x" and "evaluation of 'seq x y' causes evaluation of x".
2021-03-15 21:16:04 <hololeap> __minoru__shirae: eh, i was hoping the docs would explain that... :)
2021-03-15 21:16:22 <hololeap> do you know about MonadIO?
2021-03-15 21:16:27 <epst3in> > (repeat "i love jess ")
2021-03-15 21:16:27 × coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-03-15 21:16:30 <lambdabot> ["i love jess ","i love jess ","i love jess ","i love jess ","i love jess ",...
2021-03-15 21:17:07 <hpc> yeah, a good mental model is that evaluation is always caused by something
2021-03-15 21:17:10 <hpc> (such as execution)
2021-03-15 21:17:16 <hpc> also, execution is always caused by something
2021-03-15 21:17:31 × epst3in quits (~dwsjeid91@91.193.7.55) (K-Lined)
2021-03-15 21:17:42 <dolio> Should have used `cycle`.
2021-03-15 21:18:03 <int-e> monochrom: As Archimedes said, let me define a thunk that's is evaluated and I'll move the whole world.
2021-03-15 21:18:11 <monochrom> hpc: I wonder if the docs of unliftio-core explains better what unliftio is about. Then unlift-stm is just an instance of that.
2021-03-15 21:18:22 <monochrom> haha int-e.
2021-03-15 21:18:27 Sorna is now known as Sornaensis
2021-03-15 21:18:27 <{abby}> what's recommended for compiling haskell to javascript these days?
2021-03-15 21:18:40 <monochrom> oops hpc sorry, wrong person
2021-03-15 21:18:43 × maerwald quits (~maerwald@mail.hasufell.de) (Quit: gone)
2021-03-15 21:18:48 son0p joins (~son0p@181.136.122.143)
2021-03-15 21:18:56 <monochrom> hololeap: I wonder if the docs of unliftio-core explains better what unliftio is about. Then unlift-stm is just an instance of that.
2021-03-15 21:19:10 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 260 seconds)
2021-03-15 21:19:17 <dolio> {abby}: The only option is GHCJS if you literally mean Haskell, I think.
2021-03-15 21:19:28 <hololeap> __minoru__shirae: basically, it's a convenience library when working with the STM monad. so you can use the same functions for STM or (WriterT String STM) or (ReaderT Env (ExceptT String STM)), etc
2021-03-15 21:19:43 maerwald joins (~maerwald@mail.hasufell.de)
2021-03-15 21:19:44 <hololeap> {abby}: i recommend elm or purescript
2021-03-15 21:19:56 <hololeap> which aren't haskell, but similar
2021-03-15 21:20:03 <hololeap> (especially purescript)
2021-03-15 21:20:08 <__minoru__shirae> hololeap: something like a MonadBase instance for Stm?
2021-03-15 21:20:10 <dolio> Yeah, PureScript is pretty close.
2021-03-15 21:20:18 <{abby}> there is no way i'm rewriting all this code
2021-03-15 21:20:33 × dhil quits (~dhil@80.208.56.181) (Ping timeout: 256 seconds)
2021-03-15 21:20:34 <{abby}> has there really been nothing better than ghcjs? that's 13 months out of date
2021-03-15 21:20:57 dhil joins (~dhil@80.208.56.181)
2021-03-15 21:21:09 <hololeap> {abby}: purescript won't be far off. it's very very similar to haskell
2021-03-15 21:21:13 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-15 21:21:24 <hololeap> __minoru__shirae: it's closest to MonadIO for the IO monad
2021-03-15 21:21:29 <maerwald> do ppl even consider maturity and ecosystem when suggesting languages? :p
2021-03-15 21:21:35 <{abby}> hololeap: that's still rewriting ~3000 lines of code in a strict language
2021-03-15 21:22:20 <monochrom> I think suggesting elm or purescript is precisely on consideration of ecosystem maturity.
2021-03-15 21:22:32 <maerwald> monochrom: they are very different
2021-03-15 21:22:34 <monochrom> I mean in the context of "compiles to javascript".
2021-03-15 21:23:05 <monochrom> GHCJS is the ecosystemly immature one here.
2021-03-15 21:23:23 <maerwald> I think of all of those I'd only call elm mature
2021-03-15 21:23:32 <monochrom> or was mature, now bitrotten.
2021-03-15 21:24:06 <maerwald> isn't obelisk using ghcjs?
2021-03-15 21:24:18 <monochrom> "postmaturity" >:)
2021-03-15 21:25:14 × conal quits (~conal@64.71.133.70) (Ping timeout: 260 seconds)
2021-03-15 21:25:47 <dolio> If you mean exactly Haskell, then there is not just nothing better. There is nothing else (unless I'm misinformed).
2021-03-15 21:25:53 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds)
2021-03-15 21:26:11 <{abby}> epic
2021-03-15 21:26:24 × cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
2021-03-15 21:26:38 <hololeap> {abby}: what made you think otherwise?
2021-03-15 21:26:56 <dolio> Oh, actually, that's not techincally true. UHC can output JavaScript, I guess.
2021-03-15 21:29:13 × Aquazi quits (uid312403@gateway/web/irccloud.com/x-umfzpfeguzyfkkwm) (Quit: Connection closed for inactivity)
2021-03-15 21:30:00 conal joins (~conal@192.145.118.137)
2021-03-15 21:30:04 <Gurkenglas> @let evalM :: Monad m => LensLike' m VeryLazyNaturals Int; evalM f x = do i <- f 0; foldr (.) id (replicate i S) <$> (\(S x) -> evalM (fmap (subtract i) . f . (+1)) x) x -- this is sure to come in handy
2021-03-15 21:30:08 <lambdabot> Defined.
2021-03-15 21:32:08 × malumore quits (~malumore@151.62.122.60) (Ping timeout: 245 seconds)
2021-03-15 21:32:27 × connrs_ quits (~connrs@runciter.connrs.uk) (Ping timeout: 256 seconds)
2021-03-15 21:32:28 esp32_prog joins (~esp32_pro@185.254.75.51)
2021-03-15 21:32:31 × ByteEater quits (57cd846a@gateway/web/cgi-irc/kiwiirc.com/ip.87.205.132.106) (Quit: Connection closed)
2021-03-15 21:33:36 × codygman` quits (~user@209.251.131.98) (Ping timeout: 246 seconds)
2021-03-15 21:33:43 × dhouthoo quits (~dhouthoo@ptr-eitgbj2w0uu6delkbrh.18120a2.ip6.access.telenet.be) (Quit: WeeChat 3.0)
2021-03-15 21:34:42 connrs joins (~connrs@runciter.connrs.uk)
2021-03-15 21:34:43 × sea-gull quits (~sea-gull@li1815-136.members.linode.com) (Ping timeout: 256 seconds)
2021-03-15 21:35:11 sea-gull joins (~sea-gull@li1815-136.members.linode.com)
2021-03-15 21:37:07 deni_ joins (~deni@unaffiliated/deni)
2021-03-15 21:37:14 × deni quits (~deni@unaffiliated/deni) (Ping timeout: 256 seconds)
2021-03-15 21:37:33 × Aleksejs quits (~Aleksejs@haskell.lv) (Ping timeout: 256 seconds)
2021-03-15 21:38:51 Aleksejs joins (~Aleksejs@haskell.lv)
2021-03-15 21:39:15 × cheater quits (~user@unaffiliated/cheater) (Ping timeout: 256 seconds)
2021-03-15 21:39:45 cheater joins (~user@unaffiliated/cheater)
2021-03-15 21:40:03 × conal quits (~conal@192.145.118.137) (Quit: Computer has gone to sleep.)
2021-03-15 21:40:18 <hololeap> monochrom: honestly, i've been wondering if MonadIO and MonadSTM could be abstracted further into something that works on a transformer stack over any base monad
2021-03-15 21:40:57 × dilinger quits (~dilinger@spindle.queued.net) (Ping timeout: 256 seconds)
2021-03-15 21:41:04 dilinger joins (~dilinger@spindle.queued.net)
2021-03-15 21:41:23 <hololeap> because unlift-stm is so damn similar to MonadIO and MonadUnliftIO
2021-03-15 21:46:14 × slack1256 quits (~slack1256@dvc-186-186-101-190.movil.vtr.net) (Ping timeout: 260 seconds)
2021-03-15 21:46:22 × nisstyre quits (~wes@python-zero/conduct-committee/nisstyre) (Quit: WeeChat 2.9)
2021-03-15 21:46:42 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2021-03-15 21:46:54 <monochrom> I would think that things like MonadTrans, MonadReader, MonadState are doing that.
2021-03-15 21:47:16 kiweun joins (~kiweun@2607:fea8:2a62:9600:c98d:ec81:e94d:3657)
2021-03-15 21:48:19 × mantovani quits (~mantovani@104.131.207.121) (Ping timeout: 256 seconds)
2021-03-15 21:48:42 conal joins (~conal@64.71.133.70)
2021-03-15 21:48:48 mantovani joins (~mantovani@104.131.207.121)
2021-03-15 21:49:28 <hololeap> something that says, "this action works on the base monad of the stack"
2021-03-15 21:49:51 <hololeap> because those are not quite the same
2021-03-15 21:50:33 × hwabyong quits (~hwabyong@ec2-3-221-194-167.compute-1.amazonaws.com) (Ping timeout: 256 seconds)
2021-03-15 21:50:34 <Gurkenglas> @let evalA :: Traversal' VeryLazyNaturals Int; evalA f x = foldr (.) id <$> (flip replicate S <$> f 0) <*> let !(S y) = x in evalA (f . (+1)) y -- in fact, this. although now the monotonic function g must come in the format "f x = g x - g (x-1)"

All times are in UTC.