Logs: liberachat/#haskell
| 2021-07-07 09:16:01 | <fendor> | trying to be backwards compatible, I thought introducing a pattern synonym for the union Name and Fieldlabel, e.g. introduce AvailName and AvailFieldLabel, would be a good idea |
| 2021-07-07 09:16:09 | <haskl> | I feel like I've gone from complete beginner to intermediate/okayish/mediocre in Haskell programming but every time I use that library I feel a little confused and often like I'm twisting it to do what I want. |
| 2021-07-07 09:16:20 | <fendor> | but to achieve that, AvailFieldLabel must never be a valid pattern synonym for ghc < 9.2 |
| 2021-07-07 09:16:30 | <haskl> | I feel relatively comfortable with applicative functors, too |
| 2021-07-07 09:16:50 | <haskl> | no I didn't see optparse-generic |
| 2021-07-07 09:17:33 | <sshine> | haskl, I haven't had to model a CLI argument set that was so complicated the library gave me trouble. |
| 2021-07-07 09:17:43 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:cdb:cabc:a7c7:75c9) (Remote host closed the connection) |
| 2021-07-07 09:19:43 | <haskl> | This is what I did. https://github.com/hyperrealgopher/burrow/blob/master/app/Main.hs |
| 2021-07-07 09:20:26 | <haskl> | (planning to add many more subcommands soon) |
| 2021-07-07 09:21:29 | <sshine> | cool |
| 2021-07-07 09:21:37 | → | darklambda joins (~whateverg@111.65.56.40) |
| 2021-07-07 09:21:50 | <darklambda> | oooh... lot's of people here now |
| 2021-07-07 09:22:18 | <sshine> | yeah, but we were active from day one. :) |
| 2021-07-07 09:22:39 | <haskl> | I'm trying out Miso. It's really cool. |
| 2021-07-07 09:22:48 | <darklambda> | i just came to know about the freenode debacle yesterday :-P |
| 2021-07-07 09:22:56 | <darklambda> | been away from irc for months |
| 2021-07-07 09:23:08 | <darklambda> | i like Miso |
| 2021-07-07 09:23:09 | → | toms joins (~foobar@pogostick.net) |
| 2021-07-07 09:23:29 | <darklambda> | usually i get that when visiting japanese restaurant |
| 2021-07-07 09:23:42 | <haskl> | good one |
| 2021-07-07 09:23:46 | <darklambda> | :-) |
| 2021-07-07 09:23:48 | <haskl> | I have to learn about Nix more before I use Miso properly |
| 2021-07-07 09:24:03 | <sshine> | haskl, I did these: https://github.com/sshine/lira/blob/master/src/Main.hs - https://github.com/sshine/hello/blob/master/src/Hello.hs - the latter is optparse-generic. you'll see that the actual parser is auto-generated from a data type. :) |
| 2021-07-07 09:24:13 | <haskl> | thanks for sharing that sshine |
| 2021-07-07 09:24:44 | <darklambda> | i came to know it first from last year's munich haskell conf... i forgot why i end up not trying it... not sure if it's because of nix requirement (running win10 here) |
| 2021-07-07 09:25:54 | <darklambda> | anyway, one of the good things about new network is that a bunch of nicks became available... |
| 2021-07-07 09:25:58 | <darklambda> | check this out... |
| 2021-07-07 09:26:01 | darklambda | is now known as pointfree |
| 2021-07-07 09:26:03 | <pointfree> | :-) |
| 2021-07-07 09:28:04 | haskl | is now known as linustorvalds |
| 2021-07-07 09:28:15 | linustorvalds | is now known as haskl |
| 2021-07-07 09:28:24 | <haskl> | i should've made a less lazy username, but that's ok |
| 2021-07-07 09:29:38 | <pointfree> | i wanted lambda.. but it was already taken |
| 2021-07-07 09:30:29 | pointfree | is now known as darklambda |
| 2021-07-07 09:31:44 | × | zaquest quits (~notzaques@5.128.210.178) (Remote host closed the connection) |
| 2021-07-07 09:31:45 | <sshine> | haskl, and the --help is also auto-generated with the content of the <?> annotations. |
| 2021-07-07 09:33:44 | <sshine> | haskl, optparse-generic is mostly smart when you can get away with having record fields that match exactly the argument names. otherwise you're not implicitly deriving things anyway. |
| 2021-07-07 09:34:27 | <haskl> | Thanks. |
| 2021-07-07 09:35:41 | <darklambda> | when's the next haskell conf? |
| 2021-07-07 09:36:04 | <haskl> | Next thing I want to look into is error handling in optparse-applicative. |
| 2021-07-07 09:36:59 | → | zaquest joins (~notzaques@5.128.210.178) |
| 2021-07-07 09:37:21 | <sshine> | haskl, what's insufficient with the default error handling? |
| 2021-07-07 09:37:53 | <Profpatsch> | I wonder how hard it is to switch from Validation to These |
| 2021-07-07 09:38:06 | <Profpatsch> | where you go from “accumulate errors” to “just collect warnings” |
| 2021-07-07 09:38:22 | <haskl> | sshine, well, for example, if I don't specify a subcommand or flag, it just tells me "missing COMMAND" without telling me the options for the commands which can be used or the like. maybe even just displaying the help page would be ideal. |
| 2021-07-07 09:40:45 | <merijn> | haskl: There's an option for that with optarse-applicative |
| 2021-07-07 09:40:57 | <merijn> | Dunno if optparse-generic supports that, though |
| 2021-07-07 09:41:39 | → | kamy joins (~kamy@83-245-253-38-nat-p.elisa-mobile.fi) |
| 2021-07-07 09:41:42 | <sshine> | I do 'customExecParser (prefs showHelpOnError) argsParserInfo' in one case. |
| 2021-07-07 09:41:47 | <merijn> | haskl: https://hackage.haskell.org/package/optparse-applicative-0.16.1.0/docs/Options-Applicative.html#t:ParserPrefs |
| 2021-07-07 09:41:55 | <haskl> | amazing |
| 2021-07-07 09:41:59 | <merijn> | haskl: see prefShowHelpOnError and prefShowHelpOnEmpty |
| 2021-07-07 09:42:00 | × | azeem quits (~azeem@dynamic-adsl-84-220-226-129.clienti.tiscali.it) (Ping timeout: 258 seconds) |
| 2021-07-07 09:42:15 | <haskl> | thanks i figured |
| 2021-07-07 09:42:50 | → | jushur joins (~human@user/jushur) |
| 2021-07-07 09:43:02 | <sshine> | the --help of some programs can get pretty huge, though. so I wouldn't print the whole --help if it grows beyond a few lines :) much rather have the somewhat uninformative "these are your options, go guess what they mean." |
| 2021-07-07 09:43:10 | <haskl> | i'll get back to that after fiddling around with Miso, i promised someone i'd at least write one line with Miso |
| 2021-07-07 09:43:22 | × | stefan-_ quits (~cri@42dots.de) (Ping timeout: 240 seconds) |
| 2021-07-07 09:43:50 | <haskl> | oh i don't think i have to worry about that, i divide things up nicely with hsubcommands or whatever it's called |
| 2021-07-07 09:44:13 | <haskl> | the app in question is a gopherhole builder. like a static site builder, but for gopher protocol. |
| 2021-07-07 09:44:30 | → | azeem joins (~azeem@176.201.33.66) |
| 2021-07-07 09:44:57 | <sshine> | cool |
| 2021-07-07 09:45:07 | <haskl> | ty |
| 2021-07-07 09:45:09 | <sshine> | I'm trying to quit the WWW, so I appreciate alternatives. |
| 2021-07-07 09:45:17 | <haskl> | are you in #gopher? |
| 2021-07-07 09:45:23 | <sshine> | I was too young. |
| 2021-07-07 09:45:35 | <sshine> | I only really went online in 1997. :) |
| 2021-07-07 09:45:48 | <haskl> | i made a gopher client, a gopher builder, and i'm working on a gopher server docker image that will help you with serving using burrow |
| 2021-07-07 09:46:06 | <sshine> | nice. |
| 2021-07-07 09:46:15 | <darklambda> | nice |
| 2021-07-07 09:46:26 | <darklambda> | what language you use for those? haskell? |
| 2021-07-07 09:46:40 | <haskl> | darklambda, yes |
| 2021-07-07 09:46:45 | <darklambda> | wow |
| 2021-07-07 09:46:53 | <haskl> | https://github.com/hyperrealgopher/burrow |
| 2021-07-07 09:47:06 | <haskl> | https://github.com/hyperrealgopher/waffle |
| 2021-07-07 09:47:21 | <haskl> | i started doing projects in haskell about a year ago |
| 2021-07-07 09:47:50 | → | stefan-_ joins (~cri@42dots.de) |
| 2021-07-07 09:47:51 | → | yauhsien joins (~yauhsien@61-231-39-135.dynamic-ip.hinet.net) |
| 2021-07-07 09:47:57 | <darklambda> | nice |
| 2021-07-07 09:48:09 | <haskl> | i started waffle about a year ago to learn haskell |
| 2021-07-07 09:48:25 | <haskl> | so its code sucks comparatively to burrow |
| 2021-07-07 09:49:22 | <sshine> | surely waffles aren't staple gopher diet. |
| 2021-07-07 09:49:52 | <sshine> | do you really want to risk introducing diabetes into such a small community? |
| 2021-07-07 09:49:55 | <haskl> | i would hope not! very sugary |
| 2021-07-07 09:50:05 | <haskl> | "The origin of the word 'gopher' is uncertain; French gaufre, meaning 'waffle', has been suggested, on account of the gopher tunnels resembling the honeycomb-like pattern of holes in a waffle…" |
| 2021-07-07 09:50:05 | <darklambda> | at first, i thought it's a utility for golang.. hehe |
| 2021-07-07 09:50:19 | <sshine> | ahh :) |
| 2021-07-07 09:50:47 | <darklambda> | gophers are golang's mascots |
| 2021-07-07 09:50:53 | <darklambda> | like minions... so cute |
| 2021-07-07 09:50:57 | <haskl> | nah it's just a nerdy retro protocol project i did because of how I needed to detox from the direction the web has taken |
| 2021-07-07 09:51:38 | → | dunkeln joins (~dunkeln@188.70.10.207) |
| 2021-07-07 09:51:39 | <haskl> | i have mixed feelings about the modern web. it's not all bad. |
| 2021-07-07 09:52:03 | <darklambda> | i have high hopes for modern web |
| 2021-07-07 09:52:10 | <darklambda> | especially for web assembly |
| 2021-07-07 09:52:40 | <sshine> | haskl, since adblockers seem to be winning, I'm only struggling with the addictiveness of the availability of resources. |
| 2021-07-07 09:52:41 | × | yauhsien quits (~yauhsien@61-231-39-135.dynamic-ip.hinet.net) (Ping timeout: 252 seconds) |
| 2021-07-07 09:52:50 | <haskl> | lots of cool stuff on the bend. yes i was just going to say wasm/wasi. i actually have been trying to write a forth itnerpreter to learn forth because forth is being used in webasm and it has lots of other interesteing properties which make it high level with low level speeds |
| 2021-07-07 09:52:58 | × | oxide quits (~lambda@user/oxide) (Ping timeout: 240 seconds) |
| 2021-07-07 09:53:45 | → | ptr_frac7al joins (~longlong@user/ptr-frac7al/x-0038398) |
| 2021-07-07 09:53:47 | <sshine> | also, not discouraging this conversation, but #haskell-offtopic :) |
All times are in UTC.