Logs: liberachat/#haskell
| 2021-06-10 23:18:16 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 2021-06-10 23:18:23 | <janus> | *functions in App |
| 2021-06-10 23:18:25 | <geekosaur> | they won't, that's what the newtype gives you |
| 2021-06-10 23:19:36 | ← | Profpatsch parts (~Profpatsc@static.88-198-193-255.clients.your-server.de) (WeeChat 3.1) |
| 2021-06-10 23:19:44 | <janus> | so this ReaderT, what do people call that? where do i put that? not in the App, because it wraps the App |
| 2021-06-10 23:21:22 | <geekosaur> | newtype AppContextM m = MkApp (ReaderT MyEnv m); type AppContext = AppContextM App |
| 2021-06-10 23:21:35 | <geekosaur> | which is a pattern you'll see in a number of applications |
| 2021-06-10 23:22:17 | <janus> | and a sample function with this model, does it have "(MonadReader AppContext m) => ... -> m Int" for example? |
| 2021-06-10 23:22:33 | <janus> | oh no wait |
| 2021-06-10 23:22:38 | <janus> | MonadReader MyEnv, surely |
| 2021-06-10 23:23:07 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 2021-06-10 23:23:11 | <geekosaur> | mosrt of the time it'll be inferred because you're using AppContext directly in your types |
| 2021-06-10 23:23:18 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection) |
| 2021-06-10 23:23:41 | <janus> | intresting! i think i need to experiment a bit. thanks for the responses |
| 2021-06-10 23:23:45 | <geekosaur> | and the only importance of MonadReader is it's what enables using ask / asks |
| 2021-06-10 23:24:04 | <geekosaur> | oh, and I slightly blew it earlier, you need to derive MonadReader on the newtype |
| 2021-06-10 23:24:16 | <janus> | right |
| 2021-06-10 23:24:55 | <geekosaur> | and that's close to the only place you mention MonadReader unless you for some reason want something higher level than asks but not restricted to AppContext |
| 2021-06-10 23:25:09 | <geekosaur> | which would be rare |
| 2021-06-10 23:27:17 | × | pdxleif quits (~leif@75.164.44.108) (Ping timeout: 272 seconds) |
| 2021-06-10 23:28:30 | → | qrpnxz joins (~qrpnxz@user/qrpnxz) |
| 2021-06-10 23:29:04 | <qrpnxz> | do you guys know how to check within ghci the version of the base package, or some other way to check that? |
| 2021-06-10 23:29:15 | → | Shaeto joins (~Shaeto@94.25.234.158) |
| 2021-06-10 23:30:04 | <hugo> | qrpnxz: https://wiki.haskell.org/Base_package |
| 2021-06-10 23:30:16 | <hugo> | Not a built in way, but here's a table |
| 2021-06-10 23:30:26 | <maerwald> | ghcup list shows you that table too |
| 2021-06-10 23:30:43 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-06-10 23:30:43 | <qrpnxz> | hugo, think that'll do thanks |
| 2021-06-10 23:30:44 | <maerwald> | https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/libraries/version-history |
| 2021-06-10 23:30:51 | <maerwald> | and this is more up2date probably than the wiki |
| 2021-06-10 23:31:37 | <qrpnxz> | ok, for some reason haskell doesn't know about `<&>`, i've got Data.Function imported not sure what the problem is |
| 2021-06-10 23:32:01 | <qrpnxz> | using ghc 8.8.4 btw |
| 2021-06-10 23:32:27 | <wrunt> | try Data.Functor |
| 2021-06-10 23:32:37 | <qrpnxz> | yes one sec |
| 2021-06-10 23:32:52 | <qrpnxz> | cheers ty |
| 2021-06-10 23:33:10 | <wrunt> | np |
| 2021-06-10 23:33:21 | <wrunt> | I often just import Control.Lens.Operators to get that and friends |
| 2021-06-10 23:33:41 | × | Shaeto quits (~Shaeto@94.25.234.158) (Ping timeout: 244 seconds) |
| 2021-06-10 23:34:23 | <qrpnxz> | lenses seem to be some hot new thing i'll have to look at yeah |
| 2021-06-10 23:34:35 | <ski> | janus : hm, ok. the type that you derive `MonadReader MyEnv' for, using, `GeneralizedNewtypeDeriving', has to be a `newtype', but it doesn't matter if it happens to use record syntax or not (in either case, there's just a single data constructor, with a single component). but that's unrelated to `MyEnv' using record syntax |
| 2021-06-10 23:34:36 | <maerwald> | hot, yeah... new? barely |
| 2021-06-10 23:34:39 | <qrpnxz> | was just trying to get something like F# |> working and looks like i found it |
| 2021-06-10 23:35:32 | <qrpnxz> | maerwald, for this kind of thing 5-10 years old is still new, if it's older than that then alright not new ig, but i haven't seen it much used |
| 2021-06-10 23:36:15 | <maerwald> | I'm personally not a fan. Whenever I use it, it becomes perl-style code: something you don't understand yourself 2 weeks later |
| 2021-06-10 23:36:29 | <maerwald> | And it's so polymorphic that bugs still compile |
| 2021-06-10 23:36:42 | × | crazazy quits (~user@130.89.171.203) (Ping timeout: 252 seconds) |
| 2021-06-10 23:36:58 | <qrpnxz> | lol |
| 2021-06-10 23:37:08 | → | bontaq` joins (~user@ool-18e47f8d.dyn.optonline.net) |
| 2021-06-10 23:37:58 | <maerwald> | right... this little Monoid constraint defaulted all the queries to 0 |
| 2021-06-10 23:38:00 | <maerwald> | oops |
| 2021-06-10 23:38:23 | → | Shaeto joins (~Shaeto@94.25.234.158) |
| 2021-06-10 23:38:24 | × | jespada quits (~jespada@90.254.242.55) (Ping timeout: 245 seconds) |
| 2021-06-10 23:40:36 | × | Techcable quits (~Techcable@168.235.93.147) (Quit: ZNC - https://znc.in) |
| 2021-06-10 23:41:09 | → | Techcable joins (~Techcable@168.235.93.147) |
| 2021-06-10 23:41:29 | → | jespada joins (~jespada@90.254.242.55) |
| 2021-06-10 23:41:58 | → | fendor_ joins (~fendor@77.119.128.240.wireless.dyn.drei.com) |
| 2021-06-10 23:42:45 | × | Shaeto quits (~Shaeto@94.25.234.158) (Ping timeout: 252 seconds) |
| 2021-06-10 23:42:59 | → | lbseale_ joins (~lbseale@user/ep1ctetus) |
| 2021-06-10 23:44:14 | × | fendor quits (~fendor@77.119.128.226.wireless.dyn.drei.com) (Ping timeout: 245 seconds) |
| 2021-06-10 23:44:39 | → | ubikium joins (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) |
| 2021-06-10 23:44:49 | × | fendor__ quits (~fendor@77.119.128.226.wireless.dyn.drei.com) (Ping timeout: 272 seconds) |
| 2021-06-10 23:44:56 | → | fendor joins (~fendor@77.119.128.240.wireless.dyn.drei.com) |
| 2021-06-10 23:45:54 | × | lbseale quits (~lbseale@user/ep1ctetus) (Ping timeout: 245 seconds) |
| 2021-06-10 23:45:57 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 2021-06-10 23:46:01 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 2021-06-10 23:47:33 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit) |
| 2021-06-10 23:48:57 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 2021-06-10 23:49:07 | → | hmmmas joins (~chenqisu1@183.217.200.246) |
| 2021-06-10 23:49:22 | → | pdxleif joins (~leif@c-24-20-85-226.hsd1.or.comcast.net) |
| 2021-06-10 23:51:06 | × | fizbin quits (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 272 seconds) |
| 2021-06-10 23:51:26 | × | zeenk quits (~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41) (Quit: Konversation terminated!) |
| 2021-06-10 23:52:47 | → | econo joins (uid147250@user/econo) |
| 2021-06-10 23:53:20 | × | jmcarthur quits (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Client Quit) |
| 2021-06-10 23:53:35 | <hololeap> | microlens is alright sometimes |
| 2021-06-10 23:53:40 | → | waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
| 2021-06-10 23:53:45 | → | jmcarthur joins (~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) |
| 2021-06-10 23:53:57 | × | Techcable quits (~Techcable@168.235.93.147) (Quit: ZNC - https://znc.in) |
| 2021-06-10 23:54:26 | <hololeap> | but we really need record dot syntax like in elm and purescript |
| 2021-06-10 23:54:35 | → | jaevanko joins (~jaevanko@2600:1700:1330:2bef:2af8:ee9a:b15a:6b86) |
| 2021-06-10 23:55:08 | → | ec_ joins (~ec@gateway/tor-sasl/ec) |
| 2021-06-10 23:55:16 | → | Techcable joins (~Techcable@168.235.93.147) |
| 2021-06-10 23:56:38 | → | Shaeto joins (~Shaeto@94.25.234.158) |
| 2021-06-11 00:00:50 | → | adinfinitum joins (~user@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f) |
| 2021-06-11 00:01:04 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Remote host closed the connection) |
| 2021-06-11 00:01:32 | × | Shaeto quits (~Shaeto@94.25.234.158) (Ping timeout: 264 seconds) |
| 2021-06-11 00:01:35 | ← | adinfinitum parts (~user@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f) () |
| 2021-06-11 00:04:10 | → | renzhi joins (~xp@2607:fa49:6500:bc00::e7b) |
| 2021-06-11 00:04:41 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds) |
| 2021-06-11 00:06:01 | → | fizbin joins (~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) |
| 2021-06-11 00:07:35 | <Axman6> | do they support applying function to dotted record paths? |
| 2021-06-11 00:07:54 | <Axman6> | also, don't we have RecordDotSyntax? |
| 2021-06-11 00:08:46 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
| 2021-06-11 00:14:53 | → | Shaeto joins (~Shaeto@94.25.234.158) |
| 2021-06-11 00:17:24 | × | pdxleif quits (~leif@c-24-20-85-226.hsd1.or.comcast.net) (Ping timeout: 252 seconds) |
| 2021-06-11 00:19:14 | × | Shaeto quits (~Shaeto@94.25.234.158) (Ping timeout: 245 seconds) |
| 2021-06-11 00:19:36 | × | myShoggoth quits (~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 252 seconds) |
| 2021-06-11 00:20:40 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-06-11 00:21:20 | × | awth13 quits (~user@user/awth13) (Read error: Connection reset by peer) |
| 2021-06-11 00:22:09 | → | awth13 joins (~user@user/awth13) |
| 2021-06-11 00:23:05 | × | thyriaen__ quits (~thyriaen@45.178.73.238) (Quit: Leaving) |
All times are in UTC.