2022-09-19 00:00:53 +0200 | edrx | (~Eduardo@2804:18:6020:97ea:4484:f432:54e5:8220) |
2022-09-19 00:01:29 +0200 | <edrx> | hi all! I am an emacs old-timer and a haskell newbie... |
2022-09-19 00:01:34 +0200 | <sclv> | fhello! |
2022-09-19 00:02:25 +0200 | <Hecate> | hiya |
2022-09-19 00:02:26 +0200 | <edrx> | is there an emacs package that lets me navigate the libraries with M-. for "go to the definition of this symbol" and M-, for "go back"? |
2022-09-19 00:02:29 +0200 | <edrx> | hi! =) |
2022-09-19 00:02:58 +0200 | <c_wraith> | Hmm. probably, but there's a problem.. by default, the source of libraries isn't installed anywhere |
2022-09-19 00:03:45 +0200 | <edrx> | here the sources for Process.System - for example - is in ~/bigsrc/ghc-8.10.3/libraries/process/System/ |
2022-09-19 00:05:04 +0200 | <c_wraith> | what is bigsrc? |
2022-09-19 00:05:06 +0200 | <edrx> | nevermind, let me ask my other question too... I am trying to port this to Haskell: http://angg.twu.net/eev-maxima.html#luatree |
2022-09-19 00:05:48 +0200 | <ski> | EvanR : note that what is initialized depend on `cur_sel' .. and `cur_sel' is exactly what is changed, as i jump out and in |
2022-09-19 00:05:49 +0200 | <Hecate> | c_wraith: technically they are in the FS at a deterministic location… just in a tarball :p |
2022-09-19 00:05:50 +0200 | <edrx> | c_wraith: I put the sources of things that are very big, like emacs, ghc, and agda, in ~/bigsrc/, and the smaller things in ~/usrc/ |
2022-09-19 00:06:08 +0200 | <c_wraith> | Hecate: and if you never clean up the cabal store |
2022-09-19 00:06:20 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 00:07:08 +0200 | <Hecate> | c_wraith: :D |
2022-09-19 00:07:11 +0200 | <sclv> | edrx: you can use haskell-hoogle to lookup the function name in hoogle, which often suffices |
2022-09-19 00:07:18 +0200 | <ski> | EvanR : effectively, i have `sel_count' number of `for' loops nested inside each other (with a call to `act' innermost), each one initializing, checking, and incrementing `opt_of[cur_sel]' for its particular `cur_sel' (one `for' for each value of `cur_sel') |
2022-09-19 00:07:41 +0200 | <edrx> | my first idea was to call my script in Lua - that produces the 2D representations of trees - using the Process thing, but that's hard |
2022-09-19 00:07:47 +0200 | <edrx> | sclv: thanks! looking |
2022-09-19 00:07:58 +0200 | <sclv> | edrx: for your own code you can use a haskell etags generator (there are many as well) and then traditional emacs tags functions |
2022-09-19 00:08:13 +0200 | <sclv> | or generate tags for other libs you've unpacked just to have around... |
2022-09-19 00:09:32 +0200 | <edrx> | sclv: can you recommend me one of the etags generators? |
2022-09-19 00:09:33 +0200 | <ski> | @where hoogle |
2022-09-19 00:09:34 +0200 | <lambdabot> | https://hoogle.haskell.org |
2022-09-19 00:09:35 +0200 | <ski> | @where hayoo |
2022-09-19 00:09:35 +0200 | <lambdabot> | http://hayoo.fh-wedel.de/ -- See also Hoogle: http://haskell.org/hoogle http://fpcomplete.com/hoogle |
2022-09-19 00:09:46 +0200 | <edrx> | hi ski! thanks! |
2022-09-19 00:09:51 +0200 | <ski> | @hoogle mapAccumL |
2022-09-19 00:09:52 +0200 | <lambdabot> | Data.List mapAccumL :: Traversable t => (a -> b -> (a, c)) -> a -> t b -> (a, t c) |
2022-09-19 00:09:52 +0200 | <lambdabot> | Data.Traversable mapAccumL :: Traversable t => (a -> b -> (a, c)) -> a -> t b -> (a, t c) |
2022-09-19 00:09:52 +0200 | <lambdabot> | GHC.OldList mapAccumL :: (acc -> x -> (acc, y)) -> acc -> [x] -> (acc, [y]) |
2022-09-19 00:10:05 +0200 | <ski> | @hoogle (a -> Bool) -> [a] -> [a] |
2022-09-19 00:10:06 +0200 | <lambdabot> | Prelude filter :: (a -> Bool) -> [a] -> [a] |
2022-09-19 00:10:06 +0200 | <lambdabot> | Prelude takeWhile :: (a -> Bool) -> [a] -> [a] |
2022-09-19 00:10:06 +0200 | <lambdabot> | Prelude dropWhile :: (a -> Bool) -> [a] -> [a] |
2022-09-19 00:10:10 +0200 | <ski> | @hoogle+ |
2022-09-19 00:10:11 +0200 | <lambdabot> | Data.List takeWhile :: (a -> Bool) -> [a] -> [a] |
2022-09-19 00:10:11 +0200 | <lambdabot> | Data.List dropWhile :: (a -> Bool) -> [a] -> [a] |
2022-09-19 00:10:11 +0200 | <lambdabot> | Data.List dropWhileEnd :: (a -> Bool) -> [a] -> [a] |
2022-09-19 00:10:28 +0200 | <ski> | heya edrx :) |
2022-09-19 00:10:50 +0200 | <edrx> | =) |
2022-09-19 00:11:06 +0200 | <sclv> | https://hackage.haskell.org/package/hs-tags and https://hackage.haskell.org/package/hasktags are the two common tags generators iirc |
2022-09-19 00:11:22 +0200 | <EvanR> | ski, yep my brain just exploded |
2022-09-19 00:11:36 +0200 | ski | whistles innocently |
2022-09-19 00:12:19 +0200 | <EvanR> | I have saved this code for stress testing lol |
2022-09-19 00:12:21 +0200 | <ski> | EvanR : it's not that different from `replicateM_' for the list monad |
2022-09-19 00:13:12 +0200 | <edrx> | I will have to go offline soon, so let me ask some basic questions to work on them offlineishly... |
2022-09-19 00:13:29 +0200 | <ski> | EvanR : if you want to, i can give you the whole file (with call to `app_ordered_selections') |
2022-09-19 00:14:43 +0200 | <EvanR> | sure |
2022-09-19 00:15:54 +0200 | tdsdp^ | (~tdsdp@173-160-76-137-atlanta.hfc.comcastbusiness.net) |
2022-09-19 00:15:54 +0200 | <ski> | (oh and `app' was named after val app : ('a -> unit) -> 'a list -> unit in SML, which is basically `mapM_') |
2022-09-19 00:16:26 +0200 | <EvanR> | at least the motivation makes more sense talking about list monads |
2022-09-19 00:17:26 +0200 | shapr | (~user@68.54.166.125) |
2022-09-19 00:18:13 +0200 | hgolden | (~hgolden@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection) |
2022-09-19 00:20:31 +0200 | <edrx> | I found some old notes on cabal here, from when I used it to install agda without understanding it... I'm on Debian, does this look right? |
2022-09-19 00:20:40 +0200 | <edrx> | sudo apt-get install cabal; cabal update |
2022-09-19 00:20:52 +0200 | <edrx> | oops |
2022-09-19 00:20:59 +0200 | <edrx> | sudo apt-get install cabal-install; cabal update |
2022-09-19 00:21:02 +0200 | <sclv> | the current way is install ghcup, then use that to install ghc and cabal binaries both |
2022-09-19 00:21:23 +0200 | <sclv> | https://www.haskell.org/ghcup/ |
2022-09-19 00:21:35 +0200 | <sclv> | the cabal you get from apt-get may be somewhat old |
2022-09-19 00:21:47 +0200 | <edrx> | thanks! |
2022-09-19 00:21:49 +0200 | <sclv> | that said, apt-get should still work, just not give you the most up to dat |
2022-09-19 00:22:41 +0200 | <ski> | EvanR, PMed you the link |
2022-09-19 00:23:04 +0200 | <edrx> | going offline now! all hints saved! thanks, cya later =) |
2022-09-19 00:25:51 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 268 seconds) |
2022-09-19 00:27:56 +0200 | edrx | (~Eduardo@2804:18:6020:97ea:4484:f432:54e5:8220) (Ping timeout: 260 seconds) |
2022-09-19 00:29:27 +0200 | fjMSX | (~hypni2p@2.92.213.55) |
2022-09-19 00:38:56 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 00:43:21 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 252 seconds) |
2022-09-19 00:43:36 +0200 | <EvanR> | got it |
2022-09-19 00:47:59 +0200 | ystael | (~ystael@user/ystael) (Ping timeout: 244 seconds) |
2022-09-19 00:50:29 +0200 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2022-09-19 00:57:16 +0200 | ystael | (~ystael@user/ystael) |
2022-09-19 01:00:09 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 01:01:57 +0200 | coot | (~coot@213.134.176.158) (Quit: coot) |
2022-09-19 01:05:33 +0200 | forell | (~forell@user/forell) (Ping timeout: 244 seconds) |
2022-09-19 01:11:11 +0200 | perdent | (~perdent@125.7.37.86) |
2022-09-19 01:12:04 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 268 seconds) |
2022-09-19 01:15:38 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-09-19 01:17:15 +0200 | forell | (~forell@user/forell) |
2022-09-19 01:17:49 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 252 seconds) |
2022-09-19 01:20:05 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 01:21:03 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 244 seconds) |
2022-09-19 01:23:17 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-09-19 01:25:01 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 268 seconds) |
2022-09-19 01:31:06 +0200 | hochata | (~user@user/hochata) |
2022-09-19 01:35:45 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-34.elisa-laajakaista.fi) (Quit: Leaving.) |
2022-09-19 01:37:35 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 01:39:39 +0200 | EvanR_ | (~EvanR@user/evanr) |
2022-09-19 01:39:54 +0200 | EvanR_ | (~EvanR@user/evanr) (Remote host closed the connection) |
2022-09-19 01:42:23 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 252 seconds) |
2022-09-19 01:43:05 +0200 | degraafk | (sid71464@id-71464.lymington.irccloud.com) (Ping timeout: 255 seconds) |
2022-09-19 01:46:21 +0200 | degraafk | (sid71464@id-71464.lymington.irccloud.com) |
2022-09-19 01:51:35 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-09-19 01:54:33 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 02:00:04 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 265 seconds) |
2022-09-19 02:06:53 +0200 | Axman6 | (~Axman6@user/axman6) |
2022-09-19 02:08:54 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 258 seconds) |
2022-09-19 02:11:36 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2022-09-19 02:13:07 +0200 | johnw | (~johnw@2600:1700:cf00:db0:f056:f097:9c2d:4e24) (Quit: ZNC - http://znc.in) |
2022-09-19 02:14:10 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 02:16:08 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-09-19 02:17:54 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2022-09-19 02:18:38 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2022-09-19 02:26:24 +0200 | gay9 | (~quassel@94-168-123-190.static.v4.ziggozakelijk.nl) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2022-09-19 02:27:36 +0200 | janus | (janus@anubis.0x90.dk) |
2022-09-19 02:27:51 +0200 | <janus> | how do i declare an ffi function that doesn't take any arguments? |
2022-09-19 02:28:06 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 265 seconds) |
2022-09-19 02:28:54 +0200 | <EvanR> | you could give it the type IO () or IO A if it returns something |
2022-09-19 02:29:26 +0200 | <EvanR> | where A is the return type |
2022-09-19 02:30:00 +0200 | <EvanR> | () -> IO () is also valid but possibly pointless |
2022-09-19 02:31:43 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 02:32:05 +0200 | gay9 | (~quassel@94-168-123-190.static.v4.ziggozakelijk.nl) |
2022-09-19 02:32:17 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-09-19 02:36:11 +0200 | <hpc> | alternatively, it is extra pointy ;) |
2022-09-19 02:37:34 +0200 | <janus> | if i used "IO CLong" which part of the FFI declaration would state that it is a function? i'd think it would be just a long to the FFI then |
2022-09-19 02:37:56 +0200 | <janus> | just because it says "ccall", it must be a function? |
2022-09-19 02:43:48 +0200 | <EvanR> | the type IO Whatever means it's a function |
2022-09-19 02:43:57 +0200 | <EvanR> | the type IO Whatever means it's a (foreign) function |
2022-09-19 02:44:10 +0200 | <EvanR> | oh, this isn't discord |
2022-09-19 02:44:38 +0200 | <EvanR> | in C, it couldn't be anything else |
2022-09-19 02:50:16 +0200 | <janus> | but surely a symbol in C isn't necessarily a function? |
2022-09-19 02:50:58 +0200 | <monochrom> | "IO" already states that it's a C "function". |
2022-09-19 02:51:23 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 268 seconds) |
2022-09-19 02:53:06 +0200 | <hpc> | in C, only functions can perform IO |
2022-09-19 02:54:18 +0200 | <monochrom> | https://www.haskell.org/onlinereport/haskell2010/haskellch8.html#x15-1620008.5.1 |
2022-09-19 02:54:24 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Quit: Lost terminal) |
2022-09-19 02:55:12 +0200 | <monochrom> | So actually "ccall" and absence of "&" together say that it's a C "function". |
2022-09-19 02:56:10 +0200 | <monochrom> | Becasue even "foreign import ccall foo :: CInt" is "int foo(void)". This one assumes that foo is pure. |
2022-09-19 02:57:50 +0200 | <EvanR> | cool, a pure function that takes no arguments is just a constant |
2022-09-19 02:58:25 +0200 | <janus> | oh, does that mean that is no difference between 'unsafePerformIO ioFun' and 'funNotInIO'? |
2022-09-19 02:59:20 +0200 | <monochrom> | Yes. |
2022-09-19 02:59:24 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.6) |
2022-09-19 03:01:14 +0200 | <EvanR> | :thonk: if ioFun :: IO A, and isn't "pure", then there might be a difference depending on how the uPIO expression is used? |
2022-09-19 03:01:58 +0200 | <janus> | i'm trying to fix up ghc-0.29 to compile with nhc98, and they use a pre-haskell98 ffi mechanism using a '_call_' keyword |
2022-09-19 03:02:25 +0200 | <janus> | s/_call_/_ccall_/ |
2022-09-19 03:02:49 +0200 | <monochrom> | EvanR, I believe that the question means that if my foo example turns out to be impure, then lying that it is pure gets the same illness as using unsafePerformIO. |
2022-09-19 03:02:54 +0200 | azimut_ | (~azimut@gateway/tor-sasl/azimut) |
2022-09-19 03:03:06 +0200 | <EvanR> | yeah makes sense in context of foo |
2022-09-19 03:03:56 +0200 | <monochrom> | But yeah now the result depends on how the impure thing is used and funny things done by code optimizations. |
2022-09-19 03:04:46 +0200 | <monochrom> | _ccall_ is likely a precursor of ccall. |
2022-09-19 03:05:14 +0200 | <janus> | nhc98 supports haskell98 all right, so i converting things to standard ffi |
2022-09-19 03:05:41 +0200 | <janus> | but this is for the NameSupply, and genSymZh is probably impure |
2022-09-19 03:06:01 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds) |
2022-09-19 03:06:22 +0200 | <EvanR> | when in doubt, FFI your stuff as IO |
2022-09-19 03:06:27 +0200 | <janus> | but they use it to construct initialNameSupply where "data NameSupply Name NameSupply NameSupply" |
2022-09-19 03:06:29 +0200 | <EvanR> | impure until proven pure |
2022-09-19 03:06:47 +0200 | <janus> | problem is that they use unsafePerformIO or some interleaving variant of it |
2022-09-19 03:06:54 +0200 | <EvanR> | welp |
2022-09-19 03:07:01 +0200 | <janus> | so maybe they are relying on it getting repeatedly evaluated somehow |
2022-09-19 03:07:08 +0200 | <EvanR> | o_O |
2022-09-19 03:07:23 +0200 | <EvanR> | sounds insane |
2022-09-19 03:08:39 +0200 | <janus> | here is the file i am currently trying to port: https://paste.sr.ht/~janus/4429f882ec90027f116a576540beed5d01d0d21c |
2022-09-19 03:09:44 +0200 | <janus> | so i thought i'd adapt the GLASGOW_HASKELL variant, since i have h98 ccall but i don't have Yale's Symbol or __gensym from HBC |
2022-09-19 03:10:24 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2022-09-19 03:10:25 +0200 | <janus> | don't have LMLgensym either? (btw does anyone know where i can get LML?) |
2022-09-19 03:11:31 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-09-19 03:12:04 +0200 | <EvanR> | LML, that's going back to the beginning isn't it |
2022-09-19 03:12:55 +0200 | <EvanR> | is old software being impossible to build proof that time travel isn't possible |
2022-09-19 03:13:18 +0200 | <janus> | i don't think LML is available anywhere on the web? nhc98 is pretty good imho, and was maintained for a long time |
2022-09-19 03:13:19 +0200 | vglfr | (~vglfr@145.224.94.16) (Ping timeout: 252 seconds) |
2022-09-19 03:14:07 +0200 | <janus> | and it was almost bootsrapped |
2022-09-19 03:15:42 +0200 | <janus> | i suppose i could try and keep it impure, since the YALE_HASKELL path suggests that they tried that |
2022-09-19 03:16:31 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2022-09-19 03:18:24 +0200 | <EvanR> | hmm https://github.com/GunterMueller/Rio |
2022-09-19 03:19:14 +0200 | <janus> | oooh that sounds like it is exactly meant for this use case |
2022-09-19 03:23:04 +0200 | frost | (~frost@user/frost) |
2022-09-19 03:28:07 +0200 | <janus> | surely i can't unconditionally recurse on myself in haskell98's IO? |
2022-09-19 03:28:43 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 252 seconds) |
2022-09-19 03:29:46 +0200 | <janus> | seems like the monadic equivalent of "initialNameSupply = NameSupply <$> genSymZh <*> initialNameSupply <*> initialNameSupply" can't work |
2022-09-19 03:29:47 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 258 seconds) |
2022-09-19 03:31:14 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2022-09-19 03:32:05 +0200 | nunggu | (~q@user/nunggu) (Ping timeout: 258 seconds) |
2022-09-19 03:32:37 +0200 | <EvanR> | could be an especially lazy monad |
2022-09-19 03:33:06 +0200 | <janus> | yeah i guess PrimIO could be lazy like that... ah bummer.. |
2022-09-19 03:33:45 +0200 | azimut_ | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2022-09-19 03:34:06 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-09-19 03:34:19 +0200 | <janus> | but Yale uses the 'IO' name and still has this construction |
2022-09-19 03:35:09 +0200 | <EvanR> | um did <*> exist in ghc-0.29 |
2022-09-19 03:35:33 +0200 | <janus> | no, it didn't. that's why i said the 'monadic equivalent'. just used applicative for brevity |
2022-09-19 03:36:38 +0200 | <janus> | as you can see, Monad didn't even exist in GHC, they have monomorphized binders for all monads. oh the calamity |
2022-09-19 03:36:54 +0200 | <EvanR> | it does look like an infinite binary tree of syms generated via unsafeIO evaluation |
2022-09-19 03:37:33 +0200 | <janus> | yeah, not sure how to express this with NHC98... i will have to see how this is used, maybe i can avoid the infinite tree somehow |
2022-09-19 03:38:29 +0200 | <EvanR> | how you learned to stop worrying and love the infinite tree |
2022-09-19 03:38:33 +0200 | <EvanR> | of unsafePerformIO |
2022-09-19 03:39:16 +0200 | jinsun__ | (~jinsun@user/jinsun) |
2022-09-19 03:39:17 +0200 | jinsun | Guest4828 |
2022-09-19 03:39:17 +0200 | jinsun__ | jinsun |
2022-09-19 03:42:06 +0200 | Guest4828 | (~jinsun@user/jinsun) (Ping timeout: 244 seconds) |
2022-09-19 03:43:18 +0200 | <janus> | SplitUniq mentions how this part of the code is the most performance sensitive |
2022-09-19 03:44:03 +0200 | <janus> | but given that i just need to run this compiler a couple of times, and our machines are so much faster than in the 90's, maybe i could get away with some naive version |
2022-09-19 03:46:26 +0200 | <janus> | a Name is an Int, so it could be NameSupply 0 (NameSupply (-1) ...) (NameSupply 1 ...) |
2022-09-19 03:47:42 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5) |
2022-09-19 03:50:59 +0200 | <EvanR> | what's this, enumerating the plane |
2022-09-19 03:51:42 +0200 | <janus> | yeah, i think Name's just need to be unique, i don't think that there are any other requirements |
2022-09-19 03:52:22 +0200 | <janus> | so i just need to make a binary tree that enumerates the 32-bit integers breadth first |
2022-09-19 03:52:24 +0200 | _xor | (~xor@74.215.182.83) (Quit: bbiab) |
2022-09-19 03:53:53 +0200 | <EvanR> | interval bisection |
2022-09-19 03:55:17 +0200 | ddellacosta | (~ddellacos@89.45.224.130) |
2022-09-19 03:55:48 +0200 | <EvanR> | [a,c] yields b=(a+c)/2, continue with [a,b] and [b,c] or something |
2022-09-19 03:56:08 +0200 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-09-19 03:56:09 +0200 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-09-19 03:56:09 +0200 | wroathe | (~wroathe@user/wroathe) |
2022-09-19 03:56:21 +0200 | <janus> | thanks that seems like it fits the bill |
2022-09-19 03:57:14 +0200 | <EvanR> | left side + width probably makes more sense instead of overflowing |
2022-09-19 03:57:27 +0200 | jero98772 | (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection) |
2022-09-19 04:02:19 +0200 | <EvanR> | since you can start with clean -2^31 and width/2 = 2^31 |
2022-09-19 04:02:47 +0200 | <EvanR> | the first number is zero |
2022-09-19 04:03:00 +0200 | lemonsnicks | (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (Quit: ZNC 1.8.2 - https://znc.in) |
2022-09-19 04:03:33 +0200 | ddellacosta | (~ddellacos@89.45.224.130) (Ping timeout: 252 seconds) |
2022-09-19 04:05:37 +0200 | ddellacosta | (~ddellacos@86.106.143.161) |
2022-09-19 04:13:26 +0200 | emmanuelux | (~emmanuelu@2a01cb0000f39300c038d63b00f83cab.ipv6.abo.wanadoo.fr) (Quit: au revoir) |
2022-09-19 04:17:29 +0200 | frost | (~frost@user/frost) (Quit: Client closed) |
2022-09-19 04:21:29 +0200 | lemonsnicks | (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) |
2022-09-19 04:25:26 +0200 | frost | (~frost@user/frost) |
2022-09-19 04:26:17 +0200 | td_ | (~td@muedsl-82-207-238-056.citykom.de) (Ping timeout: 252 seconds) |
2022-09-19 04:28:03 +0200 | td_ | (~td@muedsl-82-207-238-061.citykom.de) |
2022-09-19 04:28:47 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds) |
2022-09-19 04:32:12 +0200 | xff0x | (~xff0x@2405:6580:b080:900:dd90:9b38:b496:ed23) (Ping timeout: 264 seconds) |
2022-09-19 04:35:52 +0200 | nate1 | (~nate@98.45.169.16) |
2022-09-19 04:36:21 +0200 | vglfr | (~vglfr@145.224.94.16) |
2022-09-19 04:39:19 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2022-09-19 04:39:19 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2022-09-19 04:39:19 +0200 | finn_elija | FinnElija |
2022-09-19 04:43:04 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 244 seconds) |
2022-09-19 04:45:17 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
2022-09-19 04:49:44 +0200 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 265 seconds) |
2022-09-19 04:51:47 +0200 | <mrianbloom> | Is there a standard function with the type :: (MonadTrans t, Monad m) => (m a -> m b -> m c) -> t m a -> t m b -> t m c |
2022-09-19 04:54:47 +0200 | xff0x | (~xff0x@2405:6580:b080:900:1f6b:da1d:cffe:2329) |
2022-09-19 04:55:22 +0200 | <Axman6> | Not that I'm aware of - I'm not sure it would be generally possible to write one either. it would have to be specific to each t |
2022-09-19 04:55:44 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 04:55:54 +0200 | <Axman6> | @unmty ExceptT e m a |
2022-09-19 04:55:54 +0200 | <lambdabot> | m (Either e a) |
2022-09-19 04:58:37 +0200 | <Axman6> | l* to be able to write unliftT2 :: (m a -> m b -> m c) -> ExceptT e m a -> ExceptT e m b -> ExceptT e m c, you need to know that the inner m's are actually returning Either, to then run them, see if either returned Left, then if not, call the function on the Right values, and lift that result back into ExceptT. It could be a type class, but I'm not sure how common it is for that to come up in practice |
2022-09-19 04:59:44 +0200 | <mrianbloom> | Axman6: I see, that makes sense. What about a typeclass function for t? |
2022-09-19 05:00:06 +0200 | <Axman6> | I don't understand the question |
2022-09-19 05:00:51 +0200 | <mrianbloom> | A typeclass whose parameter is t |
2022-09-19 05:01:02 +0200 | <Axman6> | you could have class MonadTrans t => MonadApply t where unliftA2 :: (m a -> m b -> m c) -> t m a -> t m b -> t m c, but you would need instances for each t |
2022-09-19 05:01:25 +0200 | ddellacosta | (~ddellacos@86.106.143.161) (Ping timeout: 268 seconds) |
2022-09-19 05:01:38 +0200 | <mrianbloom> | Is there a standard typeclass like that? |
2022-09-19 05:01:51 +0200 | <mrianbloom> | I'm just trying no to reinvent the wheel. |
2022-09-19 05:02:09 +0200 | <mrianbloom> | *not |
2022-09-19 05:03:27 +0200 | <Axman6> | Not that I'm aware of |
2022-09-19 05:04:00 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2022-09-19 05:04:10 +0200 | <[Leary]> | mrianbloom: You can take advantage of the fact that Applicatives compose to write things like this generally, given that your Monad transformer is just the composition of a particular Monad. |
2022-09-19 05:04:17 +0200 | <Axman6> | this was announced last weel, maybe it's in there :) https://hackage.haskell.org/package/monadology |
2022-09-19 05:04:34 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-09-19 05:04:37 +0200 | <Axman6> | week* |
2022-09-19 05:04:52 +0200 | <mrianbloom> | Nice |
2022-09-19 05:05:01 +0200 | <mrianbloom> | I'll check that out. |
2022-09-19 05:05:09 +0200 | <Axman6> | in fact https://hackage.haskell.org/package/monadology-0.1/docs/Control-Monad-Ology-General-Trans-Tunnel.h… looks very relevant |
2022-09-19 05:06:13 +0200 | <mrianbloom> | I'll give this a shot. |
2022-09-19 05:07:33 +0200 | <[Leary]> | % :t liftA2 @(Compose _ _) |
2022-09-19 05:07:33 +0200 | <yahb2> | liftA2 @(Compose _ _) ; :: (Applicative _1, Applicative _2) => ; (a -> b -> c) ; -> Compose _1 _2 a -> Compose _1 _2 b -> Compose _1 _2 c |
2022-09-19 05:07:51 +0200 | <[Leary]> | Hmm, not quite right. |
2022-09-19 05:09:35 +0200 | <[Leary]> | I guess it's just regular `liftA2`, once your `t m a` has been reduced to some `tf (m a)`. |
2022-09-19 05:13:34 +0200 | <mrianbloom> | Is it the case that for both tunnel and hoist, the underlying function must be an endomorph |
2022-09-19 05:20:55 +0200 | dtman34 | (~dtman34@c-73-62-246-247.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
2022-09-19 05:26:16 +0200 | nunggu | (~q@user/nunggu) |
2022-09-19 05:27:11 +0200 | jargon | (~jargon@184.101.186.15) |
2022-09-19 05:37:35 +0200 | Batzy | (~quassel@user/batzy) (Read error: Connection reset by peer) |
2022-09-19 05:37:51 +0200 | Batzy | (~quassel@user/batzy) |
2022-09-19 05:45:06 +0200 | nunggu | (~q@user/nunggu) (Ping timeout: 258 seconds) |
2022-09-19 05:46:12 +0200 | Batzy | (~quassel@user/batzy) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2022-09-19 05:46:49 +0200 | Batzy | (~quassel@user/batzy) |
2022-09-19 05:50:13 +0200 | Vajb | (~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57) (Read error: Connection reset by peer) |
2022-09-19 05:51:09 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) |
2022-09-19 05:53:48 +0200 | Batzy | (~quassel@user/batzy) (Ping timeout: 264 seconds) |
2022-09-19 05:54:30 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 265 seconds) |
2022-09-19 05:55:54 +0200 | rembo10 | (~rembo10@main.remulis.com) (Quit: ZNC 1.8.2 - https://znc.in) |
2022-09-19 05:58:02 +0200 | rembo10 | (~rembo10@main.remulis.com) |
2022-09-19 06:01:11 +0200 | shriekingnoise | (~shrieking@186.137.167.202) |
2022-09-19 06:06:08 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer) |
2022-09-19 06:06:58 +0200 | bontaq | (~user@ool-45779fe5.dyn.optonline.net) |
2022-09-19 06:06:58 +0200 | tdsdp^ | (~tdsdp@173-160-76-137-atlanta.hfc.comcastbusiness.net) (Remote host closed the connection) |
2022-09-19 06:12:11 +0200 | Vajb | (~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57) |
2022-09-19 06:12:34 +0200 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2022-09-19 06:12:34 +0200 | shriekingnoise | (~shrieking@186.137.167.202) (Read error: Connection reset by peer) |
2022-09-19 06:15:32 +0200 | shriekingnoise | (~shrieking@186.137.167.202) |
2022-09-19 06:15:46 +0200 | nate1 | (~nate@98.45.169.16) |
2022-09-19 06:18:14 +0200 | rembo10 | (~rembo10@main.remulis.com) (Quit: ZNC 1.8.2 - https://znc.in) |
2022-09-19 06:20:19 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 252 seconds) |
2022-09-19 06:20:22 +0200 | rembo10 | (~rembo10@main.remulis.com) |
2022-09-19 06:31:50 +0200 | nate1 | (~nate@98.45.169.16) |
2022-09-19 06:33:49 +0200 | shriekingnoise | (~shrieking@186.137.167.202) (Quit: Quit) |
2022-09-19 06:34:12 +0200 | shriekingnoise | (~shrieking@186.137.167.202) |
2022-09-19 06:35:47 +0200 | shriekingnoise | (~shrieking@186.137.167.202) (Read error: Connection reset by peer) |
2022-09-19 06:36:18 +0200 | shriekingnoise | (~shrieking@186.137.167.202) |
2022-09-19 06:37:50 +0200 | shriekingnoise | (~shrieking@186.137.167.202) (Client Quit) |
2022-09-19 06:40:05 +0200 | mvk | (~mvk@2607:fea8:5ce3:8500::6e80) (Ping timeout: 268 seconds) |
2022-09-19 06:41:30 +0200 | Null_A | (~null_a@c-73-93-244-42.hsd1.ca.comcast.net) () |
2022-09-19 06:42:26 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 260 seconds) |
2022-09-19 06:53:59 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-09-19 06:55:46 +0200 | nate1 | (~nate@98.45.169.16) |
2022-09-19 07:00:26 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 268 seconds) |
2022-09-19 07:00:46 +0200 | Luj | (~Luj@2a01:e0a:5f9:9681:b08d:568b:3590:6640) (Quit: Ping timeout (120 seconds)) |
2022-09-19 07:01:06 +0200 | Luj | (~Luj@2a01:e0a:5f9:9681:5880:c9ff:fe9f:3dfb) |
2022-09-19 07:05:42 +0200 | titibandit | (~titibandi@xdsl-87-78-162-143.nc.de) |
2022-09-19 07:08:49 +0200 | Maeda | (~Maeda@91-161-10-149.subs.proxad.net) |
2022-09-19 07:09:32 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2022-09-19 07:09:51 +0200 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 260 seconds) |
2022-09-19 07:10:12 +0200 | gmg | (~user@user/gehmehgeh) (Ping timeout: 258 seconds) |
2022-09-19 07:13:38 +0200 | jinsun__ | (~jinsun@user/jinsun) |
2022-09-19 07:13:38 +0200 | jinsun | Guest7632 |
2022-09-19 07:13:39 +0200 | Guest7632 | (~jinsun@user/jinsun) (Killed (calcium.libera.chat (Nickname regained by services))) |
2022-09-19 07:13:39 +0200 | jinsun__ | jinsun |
2022-09-19 07:16:40 +0200 | jinsun | (~jinsun@user/jinsun) (Read error: Connection reset by peer) |
2022-09-19 07:16:59 +0200 | jinsun | (~jinsun@user/jinsun) |
2022-09-19 07:17:08 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 265 seconds) |
2022-09-19 07:27:05 +0200 | gmg | (~user@user/gehmehgeh) |
2022-09-19 07:27:47 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds) |
2022-09-19 07:28:03 +0200 | jinsun__ | (~jinsun@user/jinsun) |
2022-09-19 07:28:04 +0200 | jinsun | Guest7366 |
2022-09-19 07:28:04 +0200 | jinsun__ | jinsun |
2022-09-19 07:29:20 +0200 | jinsun__ | (~jinsun@user/jinsun) |
2022-09-19 07:29:21 +0200 | jinsun | Guest214 |
2022-09-19 07:29:21 +0200 | jinsun__ | jinsun |
2022-09-19 07:31:19 +0200 | `2jt | (~jtomas@86.red-88-17-188.dynamicip.rima-tde.net) |
2022-09-19 07:31:31 +0200 | Guest7366 | (~jinsun@user/jinsun) (Ping timeout: 244 seconds) |
2022-09-19 07:32:32 +0200 | Guest214 | (~jinsun@user/jinsun) (Ping timeout: 244 seconds) |
2022-09-19 07:44:43 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2022-09-19 07:45:58 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 07:48:12 +0200 | causal | (~user@50.35.83.177) (Quit: WeeChat 3.6) |
2022-09-19 07:50:00 +0200 | analoq | (~yashi@user/dies) (Ping timeout: 265 seconds) |
2022-09-19 07:51:25 +0200 | analoq | (~yashi@user/dies) |
2022-09-19 07:53:08 +0200 | gmg | (~user@user/gehmehgeh) (Ping timeout: 258 seconds) |
2022-09-19 07:54:23 +0200 | gmg | (~user@user/gehmehgeh) |
2022-09-19 07:56:01 +0200 | nate1 | (~nate@98.45.169.16) |
2022-09-19 08:00:47 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 252 seconds) |
2022-09-19 08:16:00 +0200 | nunggu | (~q@user/nunggu) |
2022-09-19 08:20:17 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 250 seconds) |
2022-09-19 08:27:58 +0200 | perdent | (~perdent@125.7.37.86) (Ping timeout: 252 seconds) |
2022-09-19 08:28:24 +0200 | gmg | (~user@user/gehmehgeh) (Ping timeout: 258 seconds) |
2022-09-19 08:29:18 +0200 | c209e6dc-4d76-47 | (~aditya@2601:249:4300:1296:195:dac6:592c:a55a) |
2022-09-19 08:29:33 +0200 | <c209e6dc-4d76-47> | is there something like networkx for haskell? |
2022-09-19 08:29:47 +0200 | <Axman6> | what is networkx? |
2022-09-19 08:30:05 +0200 | <c209e6dc-4d76-47> | library to work on graphs/networks |
2022-09-19 08:30:09 +0200 | gmg | (~user@user/gehmehgeh) |
2022-09-19 08:30:23 +0200 | <c209e6dc-4d76-47> | i am working on spectral graph theory |
2022-09-19 08:30:29 +0200 | <Axman6> | perhaps fgl? |
2022-09-19 08:31:04 +0200 | <c209e6dc-4d76-47> | let me take a look, does it support for linear algebra related stuff - eigenvalues, laplacian, etc? |
2022-09-19 08:31:43 +0200 | <Axman6> | No idea I'm sorry, I've never done much with graphs, a mate of mine is/was the maintainer of fgl and did a lot of his PhD work using it |
2022-09-19 08:32:58 +0200 | <c209e6dc-4d76-47> | no problem, but thanks for helping out! |
2022-09-19 08:33:30 +0200 | <Axman6> | it's worth taking a look around hackage and seeing what turns up |
2022-09-19 08:33:46 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 258 seconds) |
2022-09-19 08:34:27 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2022-09-19 08:39:29 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2022-09-19 08:48:11 +0200 | zeenk | (~zeenk@2a02:2f04:a311:2d00:6865:d863:4c93:799f) |
2022-09-19 08:49:53 +0200 | nate1 | (~nate@98.45.169.16) |
2022-09-19 08:50:37 +0200 | chomwitt | (~chomwitt@2a02:587:dc14:f500:b602:1ca2:8fdc:ffae) |
2022-09-19 08:54:46 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 265 seconds) |
2022-09-19 08:56:23 +0200 | nunggu | (~q@user/nunggu) (Ping timeout: 258 seconds) |
2022-09-19 08:58:01 +0200 | nunggu | (~q@user/nunggu) |
2022-09-19 08:58:57 +0200 | oldsk00l | (~znc@ec2-18-134-177-246.eu-west-2.compute.amazonaws.com) (Ping timeout: 260 seconds) |
2022-09-19 09:00:59 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds) |
2022-09-19 09:01:21 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:f304:45a9:c72c:4fdd) |
2022-09-19 09:01:23 +0200 | chomwitt | (~chomwitt@2a02:587:dc14:f500:b602:1ca2:8fdc:ffae) (Ping timeout: 268 seconds) |
2022-09-19 09:01:29 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 09:09:45 +0200 | coot | (~coot@213.134.176.158) |
2022-09-19 09:14:58 +0200 | EvanR_ | (~EvanR@user/evanr) |
2022-09-19 09:15:21 +0200 | EvanR | (~EvanR@user/evanr) (Ping timeout: 244 seconds) |
2022-09-19 09:21:48 +0200 | <alp> | c209e6dc-4d76-47: you can find haskell igraph bindings out there, maybe as close as it gets. but nothing shockingy polished and comprehensive like networkx sadly, should however cover quite a bit of ground. |
2022-09-19 09:23:35 +0200 | hochata | (~user@user/hochata) (Ping timeout: 268 seconds) |
2022-09-19 09:24:58 +0200 | dtman34 | (~dtman34@2601:446:4400:2ad9:49aa:be6d:b3ac:4bab) |
2022-09-19 09:27:33 +0200 | <siers> | ski, I have gotten to the F-algebra portion of "basic category theory for computer scientists" and I'm so excited that I'll be able to follow your F-algebra fueled explanations you sent me from like a month or two ago. :) |
2022-09-19 09:30:07 +0200 | odnes | (~odnes@ppp089210198232.access.hol.gr) |
2022-09-19 09:31:17 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2022-09-19 09:31:53 +0200 | califax | (~califax@user/califx) |
2022-09-19 09:34:50 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2022-09-19 09:34:54 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
2022-09-19 09:34:54 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Read error: Connection reset by peer) |
2022-09-19 09:35:30 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2022-09-19 09:35:34 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-09-19 09:39:23 +0200 | toeffel | (~toeffel@user/toeffel) |
2022-09-19 09:43:54 +0200 | odnes | (~odnes@ppp089210198232.access.hol.gr) (Ping timeout: 268 seconds) |
2022-09-19 09:44:58 +0200 | c209e6dc-4d76-47 | (~aditya@2601:249:4300:1296:195:dac6:592c:a55a) (Quit: Konversation terminated!) |
2022-09-19 09:46:36 +0200 | odnes | (~odnes@ppp089210198232.access.hol.gr) |
2022-09-19 09:46:57 +0200 | titibandit | (~titibandi@xdsl-87-78-162-143.nc.de) (Remote host closed the connection) |
2022-09-19 09:46:59 +0200 | johnjaye | (~pi@173.209.64.74) (Ping timeout: 265 seconds) |
2022-09-19 09:47:06 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2022-09-19 09:48:42 +0200 | johnjaye | (~pi@173.209.64.74) |
2022-09-19 09:50:13 +0200 | MajorBiscuit | (~MajorBisc@145.94.160.96) |
2022-09-19 09:51:25 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-09-19 09:53:08 +0200 | king_gs | (~Thunderbi@2806:103e:29:ac5e:a16e:4ac9:a89b:4d) |
2022-09-19 09:53:18 +0200 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2022-09-19 09:57:07 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds) |
2022-09-19 09:57:10 +0200 | Pickchea | (~private@user/pickchea) |
2022-09-19 09:59:41 +0200 | cheater | (~Username@user/cheater) (Quit: (BitchX) A gentleman is one who knows how to play the bagpipes, but chooses not to.) |
2022-09-19 10:03:42 +0200 | <ski> | cheers, siers :) |
2022-09-19 10:04:07 +0200 | shriekingnoise | (~shrieking@186.137.167.202) |
2022-09-19 10:08:59 +0200 | cheater | (~Username@user/cheater) |
2022-09-19 10:12:45 +0200 | shriekingnoise | (~shrieking@186.137.167.202) (Quit: Quit) |
2022-09-19 10:14:18 +0200 | odnes | (~odnes@ppp089210198232.access.hol.gr) (Quit: Leaving) |
2022-09-19 10:17:13 +0200 | razetime | (~quassel@117.254.35.177) |
2022-09-19 10:17:28 +0200 | yvan-sraka | (~yvan-srak@2a02:2788:224:71c:df30:9337:5d21:828) |
2022-09-19 10:17:58 +0200 | razetime_ | (~quassel@117.254.35.177) |
2022-09-19 10:17:59 +0200 | razetime_ | (~quassel@117.254.35.177) (Client Quit) |
2022-09-19 10:18:05 +0200 | razetime | (~quassel@117.254.35.177) (Client Quit) |
2022-09-19 10:18:28 +0200 | razetime | (~quassel@117.254.35.177) |
2022-09-19 10:18:48 +0200 | yvan-sraka | (~yvan-srak@2a02:2788:224:71c:df30:9337:5d21:828) (Remote host closed the connection) |
2022-09-19 10:20:13 +0200 | yvan-sraka | (~yvan-srak@2a02:2788:224:71c:8fe3:ee0f:6df3:aee0) |
2022-09-19 10:29:30 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2022-09-19 10:30:49 +0200 | vglfr | (~vglfr@145.224.94.16) (Remote host closed the connection) |
2022-09-19 10:31:24 +0200 | vglfr | (~vglfr@145.224.94.16) |
2022-09-19 10:34:27 +0200 | toeffel | (~toeffel@user/toeffel) (Quit: quit) |
2022-09-19 10:36:22 +0200 | califax | (~califax@user/califx) |
2022-09-19 10:42:21 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
2022-09-19 10:49:20 +0200 | mestre | (~mestre@191.177.181.194) (Ping timeout: 265 seconds) |
2022-09-19 10:49:45 +0200 | ft | (~ft@p3e9bc57b.dip0.t-ipconnect.de) (Quit: Lost terminal) |
2022-09-19 10:50:04 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2022-09-19 10:51:03 +0200 | king_gs | (~Thunderbi@2806:103e:29:ac5e:a16e:4ac9:a89b:4d) (Quit: king_gs) |
2022-09-19 10:53:55 +0200 | __monty__ | (~toonn@user/toonn) |
2022-09-19 10:57:12 +0200 | frost | (~frost@user/frost) (Ping timeout: 252 seconds) |
2022-09-19 11:02:36 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2022-09-19 11:03:21 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2022-09-19 11:03:26 +0200 | yvan-sraka | (~yvan-srak@2a02:2788:224:71c:8fe3:ee0f:6df3:aee0) (Remote host closed the connection) |
2022-09-19 11:03:44 +0200 | yvan-sraka | (~yvan-srak@2a02:2788:224:71c:2047:c85a:1d1e:f109) |
2022-09-19 11:05:57 +0200 | nunggu | (~q@user/nunggu) (Ping timeout: 258 seconds) |
2022-09-19 11:06:09 +0200 | mestre | (~mestre@191.177.181.194) |
2022-09-19 11:09:25 +0200 | nunggu | (~q@user/nunggu) |
2022-09-19 11:13:14 +0200 | yvan-sraka | (~yvan-srak@2a02:2788:224:71c:2047:c85a:1d1e:f109) (Remote host closed the connection) |
2022-09-19 11:13:33 +0200 | yvan-sraka | (~yvan-srak@2a02:2788:224:71c:b243:152c:3096:7d25) |
2022-09-19 11:18:50 +0200 | bontaq | (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 244 seconds) |
2022-09-19 11:19:21 +0200 | kuribas | (~user@ptr-17d51epqora8ux5p3qo.18120a2.ip6.access.telenet.be) |
2022-09-19 11:19:38 +0200 | zaquest | (~notzaques@5.130.79.72) (Remote host closed the connection) |
2022-09-19 11:21:00 +0200 | zaquest | (~notzaques@5.130.79.72) |
2022-09-19 11:22:06 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2022-09-19 11:23:22 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2022-09-19 11:40:47 +0200 | jargon | (~jargon@184.101.186.15) (Remote host closed the connection) |
2022-09-19 11:42:52 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-09-19 11:44:32 +0200 | ix | (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
2022-09-19 11:50:36 +0200 | yvan-sraka | (~yvan-srak@2a02:2788:224:71c:b243:152c:3096:7d25) (Remote host closed the connection) |
2022-09-19 11:51:14 +0200 | <carbolymer> | does ghc have two runtimes? |
2022-09-19 11:51:49 +0200 | <dminuoso> | Yes and no. The threaded and non-threaded runtime. |
2022-09-19 11:51:52 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 11:52:06 +0200 | <carbolymer> | ah right |
2022-09-19 11:56:20 +0200 | <carbolymer> | what are the downsides of using threaded rutime? |
2022-09-19 11:57:23 +0200 | <dminuoso> | Ask the opposide |
2022-09-19 11:57:31 +0200 | <dminuoso> | The non-threaded runtime is, officially, not even supported, despite being the default. |
2022-09-19 11:57:52 +0200 | perrierjouet | (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.6) |
2022-09-19 11:57:56 +0200 | <dminuoso> | I dont even know why it is the way it is |
2022-09-19 11:58:46 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 11:58:48 +0200 | <dminuoso> | carbolymer: But, consult https://gitlab.haskell.org/ghc/ghc/-/merge_requests/538 for a list of reasons why it is not yet the default. |
2022-09-19 11:59:46 +0200 | perrierjouet | (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) |
2022-09-19 12:00:09 +0200 | <dminuoso> | carbolymer: In reality, using the non-threaded RTS will make quite a few things block or not work. |
2022-09-19 12:03:02 +0200 | <carbolymer> | dminuoso: thanks for that link. That's why I'm asking, I don't see the reason to still keep non-threaded rts around |
2022-09-19 12:05:32 +0200 | <dminuoso> | Well keeping it around is necessary for compatibility with some systems as far as I understand it |
2022-09-19 12:08:24 +0200 | <ski> | @quote optimization.of.infinity |
2022-09-19 12:08:24 +0200 | <lambdabot> | sipa says: it can optimize non-terminating programs into programs that output "<<loop>>" and quit; that's an optimization of infinity% ! |
2022-09-19 12:11:47 +0200 | akegalj | (~akegalj@93.138.18.60) |
2022-09-19 12:12:58 +0200 | nate1 | (~nate@98.45.169.16) |
2022-09-19 12:13:09 +0200 | luffy | (~chenqisu1@183.217.201.192) |
2022-09-19 12:16:23 +0200 | cfricke | (~cfricke@user/cfricke) |
2022-09-19 12:17:45 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 250 seconds) |
2022-09-19 12:21:10 +0200 | `2jt | (~jtomas@86.red-88-17-188.dynamicip.rima-tde.net) (Ping timeout: 265 seconds) |
2022-09-19 12:22:08 +0200 | jmdaemon | (~jmdaemon@user/jmdaemon) (Ping timeout: 265 seconds) |
2022-09-19 12:25:26 +0200 | vglfr | (~vglfr@145.224.94.16) (Quit: Quit) |
2022-09-19 12:25:33 +0200 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) |
2022-09-19 12:25:39 +0200 | vglfr | (~vglfr@145.224.94.16) |
2022-09-19 12:25:52 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:6078:e539:2d7c:fa86) |
2022-09-19 12:32:48 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:6078:e539:2d7c:fa86) (Ping timeout: 268 seconds) |
2022-09-19 12:43:26 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-09-19 12:46:34 +0200 | <maerwald[m]> | New stack release |
2022-09-19 12:48:19 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
2022-09-19 13:01:23 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 13:04:31 +0200 | `2jt | (~jtomas@86.red-88-17-188.dynamicip.rima-tde.net) |
2022-09-19 13:05:22 +0200 | toeffel | (~toeffel@user/toeffel) |
2022-09-19 13:05:41 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 13:08:42 +0200 | chomwitt | (~chomwitt@2a02:587:dc14:f500:b006:2ebc:491e:e6d5) |
2022-09-19 13:14:57 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 13:16:40 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 13:18:58 +0200 | nunggu | (~q@user/nunggu) (Ping timeout: 258 seconds) |
2022-09-19 13:19:39 +0200 | nunggu | (~q@user/nunggu) |
2022-09-19 13:20:39 +0200 | toeffel | billcosby |
2022-09-19 13:23:54 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:85c2:c19d:1c67:c8bc) |
2022-09-19 13:24:23 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:85c2:c19d:1c67:c8bc) (Remote host closed the connection) |
2022-09-19 13:24:41 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:85c2:c19d:1c67:c8bc) |
2022-09-19 13:25:30 +0200 | billcosby | (~toeffel@user/toeffel) (Quit: quit) |
2022-09-19 13:29:36 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:85c2:c19d:1c67:c8bc) (Ping timeout: 260 seconds) |
2022-09-19 13:30:01 +0200 | WaxCPU | Andrew |
2022-09-19 13:31:05 +0200 | NieDzejkob | (~quassel@178-37-215-128.adsl.inetia.pl) |
2022-09-19 13:34:59 +0200 | NieDzejkob | (~quassel@178-37-215-128.adsl.inetia.pl) (Client Quit) |
2022-09-19 13:35:25 +0200 | Maja_ | (~quassel@178-37-215-128.adsl.inetia.pl) |
2022-09-19 13:36:40 +0200 | Maja_ | (~quassel@178-37-215-128.adsl.inetia.pl) (Client Quit) |
2022-09-19 13:37:01 +0200 | Maja_ | (~quassel@178-37-215-128.adsl.inetia.pl) |
2022-09-19 13:40:33 +0200 | Maja_ | Maja |
2022-09-19 13:43:48 +0200 | coot | (~coot@213.134.176.158) (Ping timeout: 265 seconds) |
2022-09-19 13:48:25 +0200 | frost | (~frost@user/frost) |
2022-09-19 14:09:44 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:85c2:c19d:1c67:c8bc) |
2022-09-19 14:12:23 +0200 | lyle | (~lyle@104.246.145.85) |
2022-09-19 14:12:36 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2022-09-19 14:15:19 +0200 | nunggu | (~q@user/nunggu) (Ping timeout: 258 seconds) |
2022-09-19 14:17:00 +0200 | hgolden | (~hgolden@cpe-172-251-233-141.socal.res.rr.com) |
2022-09-19 14:22:12 +0200 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) |
2022-09-19 14:22:42 +0200 | MajorBiscuit | (~MajorBisc@145.94.160.96) (Ping timeout: 260 seconds) |
2022-09-19 14:23:29 +0200 | <dminuoso> | Mmm, I wish optparse-applicative would get rid of this silly monoid interface everywhere, and just accept [Mod T a] instead |
2022-09-19 14:23:36 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2022-09-19 14:23:56 +0200 | <dminuoso> | Its visually disrupting with no real benefit. Seeing as we can interpret list as the free monoid, it's more than equivalent. :) |
2022-09-19 14:23:59 +0200 | vorpuni | (~pvorp@2001:861:3881:c690:ce8:83c1:1cb7:4be9) |
2022-09-19 14:25:16 +0200 | MajorBiscuit | (~MajorBisc@145.94.160.96) |
2022-09-19 14:26:19 +0200 | <dminuoso> | Things like `idm` just add more confusion to unsuspecting newcomers as well |
2022-09-19 14:35:52 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2022-09-19 14:36:04 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2022-09-19 14:42:39 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 252 seconds) |
2022-09-19 14:46:12 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-09-19 14:50:40 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 244 seconds) |
2022-09-19 14:53:27 +0200 | coot | (~coot@213.134.176.158) |
2022-09-19 14:58:39 +0200 | toeffel | (~toeffel@user/toeffel) |
2022-09-19 15:06:17 +0200 | toeffel | (~toeffel@user/toeffel) (Quit: quit) |
2022-09-19 15:10:07 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2022-09-19 15:10:19 +0200 | razetime | (~quassel@117.254.35.177) (Ping timeout: 265 seconds) |
2022-09-19 15:12:08 +0200 | res0nat0r084490 | (~Fletch@dia.whatbox.ca) (Quit: Ping timeout (120 seconds)) |
2022-09-19 15:12:23 +0200 | res0nat0r084490 | (~Fletch@dia.whatbox.ca) |
2022-09-19 15:13:37 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-09-19 15:18:33 +0200 | luffy | (~chenqisu1@183.217.201.192) (Ping timeout: 265 seconds) |
2022-09-19 15:21:35 +0200 | razetime | (~quassel@117.254.35.161) |
2022-09-19 15:28:59 +0200 | <ski> | dminuoso : hm, there was some recentish blag which talked about something like that (except, i think, for HTML or XML generation, rather than option parsing) |
2022-09-19 15:29:02 +0200 | PiDelport | (uid25146@id-25146.lymington.irccloud.com) |
2022-09-19 15:29:22 +0200 | <ski> | (about whether to use `m' where `Monoid m', or use `[m]') |
2022-09-19 15:29:57 +0200 | <ski> | (.. if i could find it, that would be nice) |
2022-09-19 15:30:18 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Remote host closed the connection) |
2022-09-19 15:30:24 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 15:33:26 +0200 | jero98772 | (~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c) |
2022-09-19 15:38:42 +0200 | <[Leary]> | ski: https://blog.ocharles.org.uk/posts/2022-06-22-list-of-monoids-pattern.html |
2022-09-19 15:38:54 +0200 | <[Leary]> | I don't find it very compelling though. |
2022-09-19 15:40:27 +0200 | <ski> | ty |
2022-09-19 15:44:55 +0200 | `2jt | (~jtomas@86.red-88-17-188.dynamicip.rima-tde.net) (Ping timeout: 244 seconds) |
2022-09-19 15:45:06 +0200 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2022-09-19 15:46:01 +0200 | `2jt | (~jtomas@86.red-88-17-188.dynamicip.rima-tde.net) |
2022-09-19 15:51:21 +0200 | <int-e> | Hmm. So basically they're pushing an mconcat from the call site into the implementation, with the idea that if you need only one argument, [x] to pass a singleton is light-weight compared to mconcat [x,y] for combining multiple arguments? |
2022-09-19 15:52:41 +0200 | tcard | (~tcard@p1772079-ipngn12801hodogaya.kanagawa.ocn.ne.jp) (Ping timeout: 250 seconds) |
2022-09-19 15:53:14 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:85c2:c19d:1c67:c8bc) (Ping timeout: 268 seconds) |
2022-09-19 15:53:16 +0200 | <int-e> | . o O ( Cute, but not much of a pattern; those tend to run deeper. ) |
2022-09-19 15:58:34 +0200 | mestre | (~mestre@191.177.181.194) (Quit: Lost terminal) |
2022-09-19 16:06:50 +0200 | razetime | (~quassel@117.254.35.161) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2022-09-19 16:06:51 +0200 | benin08 | (benin@gateway/vpn/protonvpn/benin) |
2022-09-19 16:08:48 +0200 | benin0 | (~benin@183.82.204.58) (Ping timeout: 265 seconds) |
2022-09-19 16:08:49 +0200 | benin08 | benin0 |
2022-09-19 16:10:20 +0200 | frost | (~frost@user/frost) (Ping timeout: 252 seconds) |
2022-09-19 16:14:30 +0200 | nate1 | (~nate@98.45.169.16) |
2022-09-19 16:16:07 +0200 | benin02 | (~benin@183.82.207.175) |
2022-09-19 16:17:39 +0200 | benin0 | (benin@gateway/vpn/protonvpn/benin) (Ping timeout: 248 seconds) |
2022-09-19 16:17:39 +0200 | benin02 | benin0 |
2022-09-19 16:19:05 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 252 seconds) |
2022-09-19 16:20:12 +0200 | ezzieyguywuf | (~Unknown@user/ezzieyguywuf) (Quit: leaving) |
2022-09-19 16:20:28 +0200 | ezzieyguywuf | (~Unknown@user/ezzieyguywuf) |
2022-09-19 16:25:48 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2022-09-19 16:32:24 +0200 | <dminuoso> | I think for most uses of optparse-applicative, there will be more than just a singleton in most uses of Mod. |
2022-09-19 16:32:53 +0200 | <dminuoso> | (Or there will be often exactly none in case of InfoMod) |
2022-09-19 16:36:21 +0200 | weier | (~z@219.70.204.146) |
2022-09-19 16:38:59 +0200 | acidjnk | (~acidjnk@p200300d6e7137a147dd3ef2b14c15b4a.dip0.t-ipconnect.de) |
2022-09-19 16:40:56 +0200 | akegalj | (~akegalj@93.138.18.60) (Quit: leaving) |
2022-09-19 16:49:32 +0200 | benin0 | (~benin@183.82.207.175) (Remote host closed the connection) |
2022-09-19 16:58:20 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 17:03:29 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Remote host closed the connection) |
2022-09-19 17:04:16 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 17:16:09 +0200 | EvanR_ | Evanr |
2022-09-19 17:16:11 +0200 | Evanr | EvanR |
2022-09-19 17:18:51 +0200 | DavidBinder | (~davidbind@134.2.10.18) |
2022-09-19 17:19:49 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-09-19 17:23:00 +0200 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 3.6) |
2022-09-19 17:25:35 +0200 | raym | (~raym@user/raym) (Quit: gonna try artix) |
2022-09-19 17:27:14 +0200 | DavidBinder | (~davidbind@134.2.10.18) (Quit: Leaving) |
2022-09-19 17:29:51 +0200 | DavidBinder | (~DavidBind@134.2.10.18) |
2022-09-19 17:29:59 +0200 | David_Binder | (~DavidBind@134.2.10.18) |
2022-09-19 17:29:59 +0200 | David_Binder | (~DavidBind@134.2.10.18) (Client Quit) |
2022-09-19 17:30:21 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 17:30:50 +0200 | jero98772 | (~jero98772@2800:484:1d80:d8ce:3490:26c5:1782:da8c) (Ping timeout: 244 seconds) |
2022-09-19 17:36:12 +0200 | raehik | (~raehik@zone3.jesus.cam.ac.uk) |
2022-09-19 17:38:04 +0200 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 244 seconds) |
2022-09-19 17:39:48 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-09-19 17:44:00 +0200 | jero98772 | (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) |
2022-09-19 17:49:49 +0200 | k` | (~user@152.7.255.205) |
2022-09-19 17:50:00 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-09-19 17:50:43 +0200 | EashanHatti | (~Thunderbi@c-24-126-44-70.hsd1.wv.comcast.net) () |
2022-09-19 17:51:00 +0200 | <k`> | How do folks normally use Storable with CStringLen? Just manually peek and poke at the length and the length and the string, and assume the alignment will be right? |
2022-09-19 17:54:51 +0200 | hochata | (~user@user/hochata) |
2022-09-19 18:01:40 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-09-19 18:03:23 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2022-09-19 18:03:32 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:f282:6ee3:55a:e90f) |
2022-09-19 18:06:46 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Remote host closed the connection) |
2022-09-19 18:06:47 +0200 | califax | (~califax@user/califx) (Write error: Broken pipe) |
2022-09-19 18:07:12 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2022-09-19 18:07:12 +0200 | califax | (~califax@user/califx) |
2022-09-19 18:10:45 +0200 | doyougnu | (~doyougnu@2001:7c0:921:0:f282:6ee3:55a:e90f) (Ping timeout: 268 seconds) |
2022-09-19 18:13:25 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 18:13:46 +0200 | tcard | (~tcard@p696070-ipngn8501hodogaya.kanagawa.ocn.ne.jp) |
2022-09-19 18:15:15 +0200 | DavidBinder | (~DavidBind@134.2.10.18) (Remote host closed the connection) |
2022-09-19 18:16:16 +0200 | causal | (~user@50.35.83.177) |
2022-09-19 18:19:59 +0200 | raym | (~raym@user/raym) |
2022-09-19 18:20:14 +0200 | nate1 | (~nate@98.45.169.16) |
2022-09-19 18:21:36 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2022-09-19 18:21:44 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-09-19 18:28:52 +0200 | titibandit | (~titibandi@xdsl-87-78-162-143.nc.de) |
2022-09-19 18:34:35 +0200 | <ski> | @hoogle withCStringLen |
2022-09-19 18:34:36 +0200 | <lambdabot> | Foreign.C.String withCStringLen :: String -> (CStringLen -> IO a) -> IO a |
2022-09-19 18:34:36 +0200 | <lambdabot> | GHC.Foreign withCStringLen :: TextEncoding -> String -> (CStringLen -> IO a) -> IO a |
2022-09-19 18:34:36 +0200 | <lambdabot> | Data.Text.Foreign withCStringLen :: Text -> (CStringLen -> IO a) -> IO a |
2022-09-19 18:34:45 +0200 | MajorBiscuit | (~MajorBisc@145.94.160.96) (Ping timeout: 250 seconds) |
2022-09-19 18:34:59 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Remote host closed the connection) |
2022-09-19 18:35:23 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
2022-09-19 18:37:15 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-09-19 18:42:36 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 18:42:48 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:f304:45a9:c72c:4fdd) (Quit: WeeChat 2.8) |
2022-09-19 18:44:11 +0200 | johnw | (~johnw@2600:1700:cf00:db0:7521:269e:c5d9:26aa) |
2022-09-19 18:44:59 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 18:49:03 +0200 | k` | (~user@152.7.255.205) (Ping timeout: 252 seconds) |
2022-09-19 18:49:47 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds) |
2022-09-19 18:51:21 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 18:52:35 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-09-19 18:53:30 +0200 | TonyStone | (~TonyStone@2603-7080-8607-c36a-c1e9-cb91-01c1-e3d9.res6.spectrum.com) (Ping timeout: 244 seconds) |
2022-09-19 18:55:25 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2022-09-19 18:55:38 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-09-19 18:57:29 +0200 | titibandit | (~titibandi@xdsl-87-78-162-143.nc.de) (Quit: Leaving.) |
2022-09-19 18:57:59 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 265 seconds) |
2022-09-19 19:00:02 +0200 | weier | (~z@219.70.204.146) (Quit: Konversation terminated!) |
2022-09-19 19:00:39 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 19:00:53 +0200 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) |
2022-09-19 19:01:33 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2022-09-19 19:03:35 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 19:05:31 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 250 seconds) |
2022-09-19 19:05:39 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 19:05:40 +0200 | TonyStone | (~TonyStone@2603-7080-8607-c36a-61f2-c7b2-cd95-6846.res6.spectrum.com) |
2022-09-19 19:10:00 +0200 | waldo | (~waldo@user/waldo) |
2022-09-19 19:10:18 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2022-09-19 19:13:48 +0200 | jmdaemon | (~jmdaemon@user/jmdaemon) |
2022-09-19 19:17:31 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Remote host closed the connection) |
2022-09-19 19:18:40 +0200 | nate1 | (~nate@98.45.169.16) (Ping timeout: 268 seconds) |
2022-09-19 19:19:28 +0200 | econo | (uid147250@user/econo) |
2022-09-19 19:19:37 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in) |
2022-09-19 19:20:16 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-09-19 19:20:49 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
2022-09-19 19:21:05 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 19:21:07 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2022-09-19 19:24:23 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-09-19 19:25:53 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 19:32:18 +0200 | <sm> | @where operators |
2022-09-19 19:32:18 +0200 | <lambdabot> | I know nothing about operators. |
2022-09-19 19:32:56 +0200 | <sm> | @where+ operators https://www.fpcomplete.com/haskell/tutorial/operators |
2022-09-19 19:32:56 +0200 | <lambdabot> | Done. |
2022-09-19 19:33:59 +0200 | `2jt | (~jtomas@86.red-88-17-188.dynamicip.rima-tde.net) (Ping timeout: 268 seconds) |
2022-09-19 19:34:16 +0200 | <sm> | good article (found via https://news.ycombinator.com/item?id=32893762) |
2022-09-19 19:35:53 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 19:37:43 +0200 | kuribas | (~user@ptr-17d51epqora8ux5p3qo.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2022-09-19 19:39:57 +0200 | ski | just saw it in another channel, some hour or two ago |
2022-09-19 19:40:28 +0200 | <ski> | (someone seemed to think it contained a bewildering plethora of operators .. but it mostly seemed pretty tame to me) |
2022-09-19 19:40:36 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds) |
2022-09-19 19:41:28 +0200 | <geekosaur> | my observation is that those who come from a fixed-operators background are often bewildered by the number of haskell operators, not to mention that it's trivial to define new ones |
2022-09-19 19:43:49 +0200 | <EvanR> | I made this YMMV https://github.com/haskellcats/haskell-operators |
2022-09-19 19:43:53 +0200 | jero98772 | (~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection) |
2022-09-19 19:44:52 +0200 | <EvanR> | "too many operators" debunked! |
2022-09-19 19:45:00 +0200 | `2jt | (~jtomas@86.red-88-17-188.dynamicip.rima-tde.net) |
2022-09-19 19:45:11 +0200 | hochata | (~user@user/hochata) (Ping timeout: 268 seconds) |
2022-09-19 19:46:43 +0200 | ski | . o O ( "but I do try to avoid doing that because it does sound arrogant and patronizing" -- "yeah, the ignorant tend to misunderstand and incorrectly infer intent" ) |
2022-09-19 19:46:48 +0200 | raehik | (~raehik@zone3.jesus.cam.ac.uk) (Ping timeout: 265 seconds) |
2022-09-19 19:48:15 +0200 | ski | also mentioned <https://github.com/ekmett/lens/wiki/Operators> as a larger maze to get lost in |
2022-09-19 19:48:37 +0200 | <EvanR> | wow there's no so many in lens as I thought |
2022-09-19 19:48:50 +0200 | <EvanR> | oh, it's 4 columns... |
2022-09-19 19:49:06 +0200 | <glguy> | EvanR: <> is in Prelude now |
2022-09-19 19:49:13 +0200 | <EvanR> | yeah I realize that |
2022-09-19 19:49:16 +0200 | <geekosaur> | but in lens at least they follow patterns and if you learn the patterns you get pretty much the entire suite of operators |
2022-09-19 19:49:31 +0200 | <EvanR> | I need to dust off my table |
2022-09-19 19:49:32 +0200 | <geekosaur> | and there's only like 4 patterns iirc |
2022-09-19 19:49:38 +0200 | <ski> | (plus a few more in the Notes) |
2022-09-19 19:51:32 +0200 | <dolio> | Clearly it's much less bewildering to overload the same small collection of operators in many different, incoherent ways depending on the context. |
2022-09-19 19:53:46 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 19:55:10 +0200 | <EvanR> | that's kind of how alphabets work too |
2022-09-19 19:55:38 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 19:56:05 +0200 | <EvanR> | most of the image space of a 8x13 pixel grid is going unused! |
2022-09-19 19:56:14 +0200 | <geekosaur> | enh. it's incoherent in English but not Spanish |
2022-09-19 19:56:34 +0200 | <geekosaur> | (or at least much less incoherent) |
2022-09-19 19:56:54 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2022-09-19 19:57:00 +0200 | <int-e> | EvanR: ink is expensive |
2022-09-19 19:57:47 +0200 | titibandit | (~titibandi@xdsl-87-78-162-143.nc.de) |
2022-09-19 19:57:51 +0200 | <sm> | I think the article did a great job explaining the most common and useful operators, with motivating examples.. good writing |
2022-09-19 19:59:09 +0200 | <sm> | bad at displaying date and author alas |
2022-09-19 19:59:21 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 265 seconds) |
2022-09-19 20:00:09 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
2022-09-19 20:04:11 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2022-09-19 20:10:10 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-34.elisa-laajakaista.fi) |
2022-09-19 20:13:00 +0200 | Techcable | (~Techcable@user/Techcable) (Remote host closed the connection) |
2022-09-19 20:13:08 +0200 | Techcable | (~Techcable@user/Techcable) |
2022-09-19 20:15:29 +0200 | redviking | (~redviking@24.48.51.166) |
2022-09-19 20:17:23 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 20:21:56 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-09-19 20:23:25 +0200 | haskell_is_no_ha | (~haskell_i@c-73-169-221-60.hsd1.wa.comcast.net) |
2022-09-19 20:23:54 +0200 | tomboy64 | (~tomboy64@user/tomboy64) |
2022-09-19 20:29:02 +0200 | haskell_is_no_ha | (~haskell_i@c-73-169-221-60.hsd1.wa.comcast.net) (Remote host closed the connection) |
2022-09-19 20:31:21 +0200 | waldo | (~waldo@user/waldo) (Ping timeout: 252 seconds) |
2022-09-19 20:36:11 +0200 | Pickchea | (~private@user/pickchea) |
2022-09-19 20:36:55 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 20:37:36 +0200 | Linux | (~kernel@user/OpenSource) (Ping timeout: 268 seconds) |
2022-09-19 20:39:16 +0200 | Guest|59 | (~Guest|59@80.143.205.77.rev.sfr.net) |
2022-09-19 20:39:51 +0200 | Guest|59 | (~Guest|59@80.143.205.77.rev.sfr.net) (Client Quit) |
2022-09-19 20:40:11 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds) |
2022-09-19 20:44:55 +0200 | <zzz> | @type (, 7 ()) |
2022-09-19 20:44:56 +0200 | <lambdabot> | Num (() -> t1) => t2 -> (t2, t1) |
2022-09-19 20:45:02 +0200 | <zzz> | can anyone explain this to me? |
2022-09-19 20:46:00 +0200 | <geekosaur> | (, x) for some x is a tuple section (requires TupleSections extension), which takes a parameter and produces a tuple |
2022-09-19 20:46:14 +0200 | <zzz> | yes |
2022-09-19 20:46:27 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 20:46:32 +0200 | <geekosaur> | `7 ()` reads `7` as a function which is passed a parameter `()`; this means a Num instance for a function i srequired |
2022-09-19 20:46:44 +0200 | <geekosaur> | thus `Num (() -> t1)` |
2022-09-19 20:46:51 +0200 | <zzz> | that's the part i'm having trouble with |
2022-09-19 20:47:51 +0200 | <geekosaur> | Haskell does not know what a "number" is; any type for which you can write fromInteger can conceivably have a Num instance |
2022-09-19 20:47:56 +0200 | <geekosaur> | including functions |
2022-09-19 20:48:14 +0200 | <geekosaur> | :t 7 |
2022-09-19 20:48:15 +0200 | <lambdabot> | Num p => p |
2022-09-19 20:48:40 +0200 | <geekosaur> | numeric literals are treated specially: they are stored as Integer and fromInteger is called on them at runtime |
2022-09-19 20:49:31 +0200 | <geekosaur> | btw it *is* possible to write a function instance of Num. moreover, it's possible to write a Num instance for any Applicative, not just functions |
2022-09-19 20:50:29 +0200 | <zzz> | ah i get it |
2022-09-19 20:50:31 +0200 | <zzz> | thanks |
2022-09-19 20:50:39 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2022-09-19 20:51:08 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds) |
2022-09-19 20:51:13 +0200 | <geekosaur> | (if it's got a decimal point, it's stored as a Rational and fromRational is called on them) |
2022-09-19 20:52:38 +0200 | MoC | (~moc@user/moc) |
2022-09-19 20:53:26 +0200 | Lord_of_Life_ | Lord_of_Life |
2022-09-19 20:54:55 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
2022-09-19 20:55:27 +0200 | <geekosaur> | @let instance Num a => Num (b -> a) where (+) = liftA2 (+); (-) = liftA2 (-); (*) = liftA2 (*); negate = fmap negate; abs = fmap abs; signum = fmap signum; fromInteger = pure . fromInteger |
2022-09-19 20:55:29 +0200 | <lambdabot> | Defined. |
2022-09-19 20:55:44 +0200 | <geekosaur> | there's your instance for any Applicative including functions |
2022-09-19 20:56:06 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-09-19 20:57:15 +0200 | <geekosaur> | well, wibble on "any Applicative": it has to have something with a Num instance "inside" it |
2022-09-19 20:57:47 +0200 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2022-09-19 20:57:50 +0200 | <geekosaur> | so `7 ()` won't work with it unless you give () a Num instance (which is possible, just pretty useless) |
2022-09-19 20:58:54 +0200 | MoC | (~moc@user/moc) (Quit: Konversation terminated!) |
2022-09-19 20:59:05 +0200 | chomwitt | (~chomwitt@2a02:587:dc14:f500:b006:2ebc:491e:e6d5) (Ping timeout: 268 seconds) |
2022-09-19 21:00:14 +0200 | <geekosaur> | @let instance Num () where _ + _ = (); _ - _ = (); negate = id; abs = id; signum = id; fromInteger _ = () |
2022-09-19 21:00:15 +0200 | <lambdabot> | /sandbox/tmp/.L.hs:172:10: error: [-Wmissing-methods, -Werror=missing-methods] |
2022-09-19 21:00:15 +0200 | <lambdabot> | • No explicit implementation for |
2022-09-19 21:00:15 +0200 | <lambdabot> | ‘*’ |
2022-09-19 21:00:30 +0200 | <geekosaur> | @let instance Num () where _ + _ = (); _ - _ = (); _ * _ = (); negate = id; abs = id; signum = id; fromInteger _ = () |
2022-09-19 21:00:31 +0200 | <lambdabot> | Defined. |
2022-09-19 21:01:05 +0200 | <geekosaur> | > (0, 7 ()) |
2022-09-19 21:01:07 +0200 | <lambdabot> | ((),()) |
2022-09-19 21:03:34 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds) |
2022-09-19 21:03:43 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 21:04:34 +0200 | <geekosaur> | (this is partly because ExtendedDefaultRules is enabled in lambdabot so () is also the default type instead of Integer; accordingly, that Num instance for () produces a lot of surprises in lambdabot and ghci) |
2022-09-19 21:04:44 +0200 | <EvanR> | a numeric constant like 1.234e308 is stored as a Rational ? xD |
2022-09-19 21:05:00 +0200 | <geekosaur> | iirc yes |
2022-09-19 21:05:47 +0200 | `2jt | (~jtomas@86.red-88-17-188.dynamicip.rima-tde.net) (Ping timeout: 244 seconds) |
2022-09-19 21:06:17 +0200 | <geekosaur> | maybe someone who knows more about ghc internals can chime in about it; I think this might work out to be 1.234 stored as Rational and e becomes ^? |
2022-09-19 21:06:26 +0200 | <zzz> | ok i'm bending my mind with the Num (b -> a) instance |
2022-09-19 21:06:31 +0200 | <zzz> | thanks |
2022-09-19 21:06:51 +0200 | <geekosaur> | function instances for anything are pretty mindbending |
2022-09-19 21:07:13 +0200 | <EvanR> | even if the compiler is smart about it, now I'm scared about doing conversions at runtime through Rational heh |
2022-09-19 21:07:26 +0200 | <geekosaur> | good, I think |
2022-09-19 21:07:43 +0200 | <geekosaur> | it's not recommended for a number of reasons iirc |
2022-09-19 21:07:57 +0200 | <geekosaur> | not just the chance for memory-filling denoms |
2022-09-19 21:09:09 +0200 | redviking | (~redviking@24.48.51.166) (Quit: Client closed) |
2022-09-19 21:11:33 +0200 | sagri__ | (~cpli@77.47.62.180) |
2022-09-19 21:11:39 +0200 | <zzz> | f <*> g = \x -> f x (g x) -- this is fun |
2022-09-19 21:11:42 +0200 | raym | (~raym@user/raym) (Remote host closed the connection) |
2022-09-19 21:12:27 +0200 | <Rembane> | Which bird is that? |
2022-09-19 21:12:51 +0200 | <geekosaur> | `ap` / S combinator |
2022-09-19 21:13:14 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-09-19 21:13:27 +0200 | <Rembane> | Sweet! Thank you! |
2022-09-19 21:13:53 +0200 | sagri__ | sai |
2022-09-19 21:14:01 +0200 | sai | saii |
2022-09-19 21:14:09 +0200 | <Rembane> | Starling! |
2022-09-19 21:14:33 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2022-09-19 21:15:46 +0200 | <EvanR> | that combinator comes up a lot |
2022-09-19 21:16:03 +0200 | <EvanR> | so you use <*> and then no one understands the code |
2022-09-19 21:19:14 +0200 | <zzz> | Rembane: https://gist.github.com/jrvieira/69c2af44f04cd6924aaf976f2a8d0fc3 |
2022-09-19 21:20:40 +0200 | raym | (~raym@user/raym) |
2022-09-19 21:21:29 +0200 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Remote host closed the connection) |
2022-09-19 21:21:35 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds) |
2022-09-19 21:22:22 +0200 | <Rembane> | zzz: Thank you! |
2022-09-19 21:22:54 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-09-19 21:23:38 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-09-19 21:23:51 +0200 | <ski> | > sortBy (comparing length <> compare) (words "The quick brown fox jumps over the lazy dog") -- sorting primarily by length, secondarily by usual lexicographic ordering |
2022-09-19 21:23:52 +0200 | saii | (~cpli@77.47.62.180) (Quit: WeeChat 3.6) |
2022-09-19 21:23:54 +0200 | <lambdabot> | ["The","dog","fox","the","lazy","over","brown","jumps","quick"] |
2022-09-19 21:23:55 +0200 | <ski> | @where monoids |
2022-09-19 21:23:55 +0200 | <lambdabot> | comment on "Monoids? In my programming language?" by Cale in 2008 (or 2009 ?) at <http://www.reddit.com/r/programming/comments/7cf4r/monoids_in_my_programming_language/c06adnx> about a use of ` |
2022-09-19 21:23:55 +0200 | <lambdabot> | instance Monoid a => Monoid (rho -> a)' |
2022-09-19 21:24:09 +0200 | <ski> | zzz : see ^ for another use of function instance |
2022-09-19 21:24:09 +0200 | sagri_ | (~cpli@77.47.62.180) |
2022-09-19 21:24:19 +0200 | sagri_ | sai |
2022-09-19 21:24:27 +0200 | <zzz> | i love that one |
2022-09-19 21:25:20 +0200 | <ski> | > map (id^2 + 1) [0 .. 9] :: [Integer] |
2022-09-19 21:25:22 +0200 | <lambdabot> | [1,2,5,10,17,26,37,50,65,82] |
2022-09-19 21:25:44 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 21:25:54 +0200 | raym | (~raym@user/raym) (Remote host closed the connection) |
2022-09-19 21:25:56 +0200 | <ski> | > map (cos^2 + sin^2) [0,pi/4 .. 2*pi] |
2022-09-19 21:25:58 +0200 | <lambdabot> | [1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0] |
2022-09-19 21:26:48 +0200 | <ski> | > map (fst^2 - fst*snd + snd^2) [(x,y) | [x,y] <- replicateM 2 [-1 .. 2]9 |
2022-09-19 21:26:49 +0200 | <lambdabot> | <hint>:1:72: error: |
2022-09-19 21:26:49 +0200 | <lambdabot> | parse error (possibly incorrect indentation or mismatched brackets) |
2022-09-19 21:26:53 +0200 | <ski> | > map (fst^2 - fst*snd + snd^2) [(x,y) | [x,y] <- replicateM 2 [-1 .. 2]] |
2022-09-19 21:26:54 +0200 | <lambdabot> | [()] |
2022-09-19 21:27:04 +0200 | <ski> | > map (fst^2 - fst*snd + snd^2) [(x,y) | [x,y] <- replicateM 2 [-1 .. 2]] :: [Integer] |
2022-09-19 21:27:06 +0200 | <lambdabot> | [1,1,3,7,1,0,1,4,3,1,1,3,7,4,3,4] |
2022-09-19 21:27:23 +0200 | pavonia | (~user@user/siracusa) |
2022-09-19 21:27:38 +0200 | <dminuoso> | Is there builtin support for exceptions in ST? |
2022-09-19 21:27:53 +0200 | <dminuoso> | Im almost convinced there is not, but maybe Im overlooking something |
2022-09-19 21:27:58 +0200 | <dminuoso> | (Beyond using say ExceptT of course) |
2022-09-19 21:28:24 +0200 | <ski> | afaik, no |
2022-09-19 21:29:03 +0200 | <ski> | (hm .. how about `STM' ?) |
2022-09-19 21:29:20 +0200 | sai | saii |
2022-09-19 21:29:32 +0200 | <ski> | (not counting `retry', of course) |
2022-09-19 21:30:12 +0200 | <dminuoso> | STM has exceptions yeah (throwSTM), but its not usable for me |
2022-09-19 21:30:12 +0200 | <ski> | how are exceptions arising ? or you'd like to raise some yourself ? |
2022-09-19 21:30:16 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Ping timeout: 260 seconds) |
2022-09-19 21:30:18 +0200 | <dminuoso> | I would like to raise some myself |
2022-09-19 21:30:25 +0200 | <ski> | ok |
2022-09-19 21:30:29 +0200 | MoC | (~moc@user/moc) |
2022-09-19 21:30:40 +0200 | <dminuoso> | But I can address it by switching from `traverse_` over a list into just recursing into that list, and producing an Either at the end |
2022-09-19 21:30:57 +0200 | <ski> | probably `ExceptT', or some CPS variant, is where it is at |
2022-09-19 21:32:10 +0200 | cg1 | (~cg1@199.241.26.152) |
2022-09-19 21:32:36 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 260 seconds) |
2022-09-19 21:34:33 +0200 | beteigeuze | (~Thunderbi@p5090d00a.dip0.t-ipconnect.de) |
2022-09-19 21:38:11 +0200 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2022-09-19 21:39:10 +0200 | gmg | (~user@user/gehmehgeh) |
2022-09-19 21:40:39 +0200 | raym | (~raym@user/raym) |
2022-09-19 21:41:46 +0200 | gmg | (~user@user/gehmehgeh) (Client Quit) |
2022-09-19 21:44:56 +0200 | waleee | (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) |
2022-09-19 21:45:09 +0200 | OpenSource | (~kernel@user/OpenSource) |
2022-09-19 21:45:09 +0200 | trcc | (~trcc@87-57-134-11-cable.dk.customer.tdc.net) |
2022-09-19 21:46:54 +0200 | <ski> | @type (runState .) . mapM . (state .) |
2022-09-19 21:46:56 +0200 | <lambdabot> | Traversable t => (a -> s -> (b, s)) -> t a -> s -> (t b, s) |
2022-09-19 21:47:05 +0200 | <ski> | @type flip . (((swap .) . runState) .) . mapM . ((state . (swap .)) .) . flip |
2022-09-19 21:47:07 +0200 | <lambdabot> | Traversable t => (s -> a -> (s, b)) -> s -> t a -> (s, t b) |
2022-09-19 21:47:14 +0200 | <ski> | @hoogle mapAccumL |
2022-09-19 21:47:15 +0200 | <lambdabot> | Data.List mapAccumL :: Traversable t => (a -> b -> (a, c)) -> a -> t b -> (a, t c) |
2022-09-19 21:47:15 +0200 | <lambdabot> | Data.Traversable mapAccumL :: Traversable t => (a -> b -> (a, c)) -> a -> t b -> (a, t c) |
2022-09-19 21:47:15 +0200 | <lambdabot> | GHC.OldList mapAccumL :: (acc -> x -> (acc, y)) -> acc -> [x] -> (acc, [y]) |
2022-09-19 21:47:26 +0200 | <ski> | @type (execState .) . mapM . (state .) |
2022-09-19 21:47:27 +0200 | <lambdabot> | Traversable t => (a -> s -> (b, s)) -> t a -> s -> s |
2022-09-19 21:47:37 +0200 | <ski> | @type flip . ((execState) .) . mapM . ((state . (swap .)) .) . flip |
2022-09-19 21:47:38 +0200 | <lambdabot> | Traversable t => (s -> a -> (s, b)) -> s -> t a -> s |
2022-09-19 21:47:44 +0200 | <ski> | @hoogle mapAccumL_ |
2022-09-19 21:47:45 +0200 | <lambdabot> | Stream mapAccumL_ :: Monad m => (c -> a -> m (c, b)) -> c -> Stream m a r -> Stream m b (c, r) |
2022-09-19 21:47:53 +0200 | <ski> | @type (runExcept .) . mapM . (except .) |
2022-09-19 21:47:55 +0200 | <lambdabot> | Traversable t => (a -> Either e b) -> t a -> Either e (t b) |
2022-09-19 21:48:02 +0200 | <ski> | @type (runExceptT .) . mapM . (ExceptT .) |
2022-09-19 21:48:03 +0200 | <lambdabot> | (Traversable t, Monad m) => (a -> m (Either e b)) -> t a -> m (Either e (t b)) |
2022-09-19 21:48:12 +0200 | <ski> | @type (runExceptT .) . mapM_ . (ExceptT .) |
2022-09-19 21:48:13 +0200 | <lambdabot> | (Foldable t, Monad m) => (a -> m (Either e b)) -> t a -> m (Either e ()) |
2022-09-19 21:48:20 +0200 | <ski> | @type (execExceptT .) . mapM_ . (ExceptT .) |
2022-09-19 21:48:21 +0200 | <lambdabot> | (Foldable t, Monad m) => (a -> m (Either e b)) -> t a -> m (Maybe e) |
2022-09-19 21:50:12 +0200 | waleee | (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) (Ping timeout: 244 seconds) |
2022-09-19 21:51:44 +0200 | <trcc> | I have this: https://paste.tomsmeding.com/h8D57ics and I am wondering why I get an error with line 32 whereas lines 29-31 works fine. It is hspec with shouldSatisfy |
2022-09-19 21:54:44 +0200 | <ski> | it apparently wants to be able to `Show' `result' |
2022-09-19 21:54:54 +0200 | <geekosaur> | because `shouldSatisfy` wants to do `show` on the left parameter if the right parameter isn't satisfied. The one that works unwraps the Cmd.Failure and shows its contents; that and the error suggests that Cmd doesn't have a Show instance |
2022-09-19 21:54:57 +0200 | <ski> | presumably if the check fails |
2022-09-19 21:55:22 +0200 | <geekosaur> | which is different from its unwrapped content having one |
2022-09-19 21:55:39 +0200 | <trcc> | geekosaur okay. Weird requirement in my opinion. Thank you though |
2022-09-19 21:56:26 +0200 | <geekosaur> | why? it makes sense that a failure case would be displayed |
2022-09-19 21:56:34 +0200 | adanwan_ | (~adanwan@gateway/tor-sasl/adanwan) |
2022-09-19 21:56:43 +0200 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2022-09-19 21:58:35 +0200 | <trcc> | hm yes |
2022-09-19 21:58:41 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 21:59:20 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-09-19 21:59:37 +0200 | <geekosaur> | it just doesn't necessarily fit with a parser where a success case might include non-`show`able components |
2022-09-19 21:59:42 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 265 seconds) |
2022-09-19 22:00:05 +0200 | <trcc> | just avoided the shouldsatisfy and called the function directly |
2022-09-19 22:02:40 +0200 | <ski> | perhaps there could be a variant that is supplied with a (partial) accessor for the part to check |
2022-09-19 22:03:07 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
2022-09-19 22:04:06 +0200 | <ski> | shouldSatisfyPart :: (HasCallStack,Show b) => (a -> Maybe b) -> a -> (b -> Bool) -> Expectation -- or somesuch |
2022-09-19 22:05:40 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds) |
2022-09-19 22:06:49 +0200 | trcc | (~trcc@87-57-134-11-cable.dk.customer.tdc.net) (Quit: Connection closed) |
2022-09-19 22:15:39 +0200 | tomboy64 | (~tomboy64@user/tomboy64) (Read error: Connection reset by peer) |
2022-09-19 22:15:48 +0200 | lyle | (~lyle@104.246.145.85) (Quit: WeeChat 3.6) |
2022-09-19 22:16:16 +0200 | tomboy64 | (~tomboy64@user/tomboy64) |
2022-09-19 22:17:38 +0200 | titibandit | (~titibandi@xdsl-87-78-162-143.nc.de) (Remote host closed the connection) |
2022-09-19 22:17:56 +0200 | hochata | (~user@user/hochata) |
2022-09-19 22:23:30 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-09-19 22:24:58 +0200 | ft_ | (~ft@p3e9bc57b.dip0.t-ipconnect.de) |
2022-09-19 22:25:54 +0200 | waleee | (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) |
2022-09-19 22:26:03 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 22:26:50 +0200 | waleee | (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) (Read error: Connection reset by peer) |
2022-09-19 22:26:55 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2022-09-19 22:28:13 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
2022-09-19 22:29:03 +0200 | ft_ | ft |
2022-09-19 22:30:18 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 22:31:55 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-09-19 22:34:10 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2022-09-19 22:38:15 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds) |
2022-09-19 22:39:41 +0200 | rockymarine | (~rocky@user/rockymarine) (Ping timeout: 260 seconds) |
2022-09-19 22:41:14 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Remote host closed the connection) |
2022-09-19 22:45:59 +0200 | waleee | (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) |
2022-09-19 22:46:29 +0200 | gay9 | (~quassel@94-168-123-190.static.v4.ziggozakelijk.nl) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2022-09-19 22:47:22 +0200 | gay9 | (~quassel@94-168-123-190.static.v4.ziggozakelijk.nl) |
2022-09-19 22:49:29 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 22:56:51 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Ping timeout: 244 seconds) |
2022-09-19 22:58:02 +0200 | MoC | (~moc@user/moc) (Quit: Konversation terminated!) |
2022-09-19 22:59:03 +0200 | rockymarine | (~rocky@user/rockymarine) |
2022-09-19 23:06:05 +0200 | LukeHoersten | (~LukeHoers@user/lukehoersten) |
2022-09-19 23:08:48 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 23:09:37 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2022-09-19 23:10:57 +0200 | mestre | (~mestre@191.177.181.194) |
2022-09-19 23:11:09 +0200 | LukeHoersten | (~LukeHoers@user/lukehoersten) (Ping timeout: 268 seconds) |
2022-09-19 23:11:41 +0200 | johnjaye | (~pi@173.209.64.74) (Ping timeout: 268 seconds) |
2022-09-19 23:12:49 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2022-09-19 23:13:04 +0200 | johnjaye | (~pi@173.209.64.74) |
2022-09-19 23:16:35 +0200 | jinsun__ | (~jinsun@user/jinsun) |
2022-09-19 23:16:36 +0200 | jinsun | Guest9638 |
2022-09-19 23:16:36 +0200 | Guest9638 | (~jinsun@user/jinsun) (Killed (sodium.libera.chat (Nickname regained by services))) |
2022-09-19 23:16:36 +0200 | jinsun__ | jinsun |
2022-09-19 23:21:58 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2022-09-19 23:26:06 +0200 | matthewmosior | (~matthewmo@173.170.253.91) |
2022-09-19 23:30:34 +0200 | matthewmosior | (~matthewmo@173.170.253.91) (Ping timeout: 265 seconds) |
2022-09-19 23:40:23 +0200 | OpenSource | QNX |
2022-09-19 23:42:03 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2022-09-19 23:43:21 +0200 | LukeHoersten | (~LukeHoers@user/lukehoersten) |
2022-09-19 23:45:33 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2022-09-19 23:47:29 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-09-19 23:51:44 +0200 | coot | (~coot@213.134.176.158) (Quit: coot) |
2022-09-19 23:59:34 +0200 | LukeHoersten | (~LukeHoers@user/lukehoersten) (Ping timeout: 265 seconds) |