Logs: liberachat/#haskell
| 2021-08-10 14:08:22 | × | Guest9072 quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2021-08-10 14:09:18 | <_73> | is there an extension that lets you use conditional expressions in the body of case statements? Something like `case length xs of VALUE > 0 -> True; _ -> False` |
| 2021-08-10 14:09:25 | <maerwald[m]> | Athas: that's why I said: generate your own file. Add it to extra-source-files, read it via TH |
| 2021-08-10 14:09:52 | <merijn> | _73: Don't need an extension |
| 2021-08-10 14:09:56 | <maerwald[m]> | don't depend on broken libraries |
| 2021-08-10 14:10:01 | <Athas> | That requires me to either use a custom Setup.hs or put some layer on top of cabal/stack, right? |
| 2021-08-10 14:10:07 | × | burnsidesLlama quits (~burnsides@dhcp168-020.wadham.ox.ac.uk) (Ping timeout: 258 seconds) |
| 2021-08-10 14:10:16 | <merijn> | > case length "foo" of x | x > 2 -> True; _ -> False |
| 2021-08-10 14:10:17 | <lambdabot> | True |
| 2021-08-10 14:10:40 | <_73> | oh nice. Thanks |
| 2021-08-10 14:10:42 | <merijn> | _73: You're allowed to put guards on patterns in case-of |
| 2021-08-10 14:10:50 | × | ystael quits (~ystael@user/ystael) (Quit: Lost terminal) |
| 2021-08-10 14:11:16 | <maerwald[m]> | if you write a custom Setup.hs, note that the operation may fail (e.g. when used as sdist) |
| 2021-08-10 14:11:41 | <merijn> | This is why I suggested hiding it behind a flag and getting make to auto-invoke it :p |
| 2021-08-10 14:12:00 | → | chomwitt joins (~chomwitt@ppp-2-85-147-24.home.otenet.gr) |
| 2021-08-10 14:12:19 | <maerwald[m]> | Or you just catch the failure |
| 2021-08-10 14:12:42 | <merijn> | maerwald[m]: The flag approach can be done without a custom Setup.hs |
| 2021-08-10 14:12:53 | → | ystael joins (~ystael@user/ystael) |
| 2021-08-10 14:13:02 | <maerwald[m]> | sure, then you have to use make |
| 2021-08-10 14:13:08 | <merijn> | Well, no |
| 2021-08-10 14:13:15 | <merijn> | Could enable the flag in cabal.project.local too |
| 2021-08-10 14:13:16 | → | chris joins (~chris@81.96.113.213) |
| 2021-08-10 14:13:19 | chris | is now known as Guest1100 |
| 2021-08-10 14:13:20 | → | enoq joins (~enoq@194-208-179-35.lampert.tv) |
| 2021-08-10 14:13:27 | <merijn> | Oh, for the external generation you mean |
| 2021-08-10 14:13:29 | <merijn> | Yeah |
| 2021-08-10 14:13:33 | jackhill_ | is now known as jackhill |
| 2021-08-10 14:13:54 | <merijn> | Easy choice for me, I already use make for all the surrounding C/C++ :p |
| 2021-08-10 14:14:10 | <merijn> | And I don't care about the haskell being standalone compilable anyway |
| 2021-08-10 14:15:40 | <maerwald[m]> | There are some projects that don't use cabal, but ghc directly via makefiles |
| 2021-08-10 14:16:14 | × | Guest1100 quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2021-08-10 14:16:18 | <Athas> | I care a lot about my projects being easy for users to compile, so I don't want to add abstraction layers. |
| 2021-08-10 14:16:25 | → | chris joins (~chris@81.96.113.213) |
| 2021-08-10 14:16:29 | chris | is now known as Guest7700 |
| 2021-08-10 14:19:37 | → | res0nat0r8 joins (~Fletch@dia.whatbox.ca) |
| 2021-08-10 14:20:20 | × | sander quits (~sander@user/sander) (Remote host closed the connection) |
| 2021-08-10 14:22:25 | × | res0nat0r quits (~Fletch@dia.whatbox.ca) (Ping timeout: 248 seconds) |
| 2021-08-10 14:25:09 | → | sander joins (~sander@user/sander) |
| 2021-08-10 14:25:31 | <merijn> | Athas: Sure, but in my case I only care about users being able to compile project easily "from a git checkout, using make" since half the code is dependent on the external C++ bits, so compiling just the Haskell isn't particularly sensible :p |
| 2021-08-10 14:26:48 | × | Vajb quits (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) (Read error: Connection reset by peer) |
| 2021-08-10 14:27:22 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
| 2021-08-10 14:29:09 | → | fendor joins (~fendor@212095005227.public.telering.at) |
| 2021-08-10 14:31:08 | → | zebrag joins (~chris@user/zebrag) |
| 2021-08-10 14:33:34 | → | slack1256 joins (~slack1256@181.203.126.41) |
| 2021-08-10 14:35:02 | → | mastarija joins (~mastarija@78-3-210-70.adsl.net.t-com.hr) |
| 2021-08-10 14:36:45 | × | mastarija quits (~mastarija@78-3-210-70.adsl.net.t-com.hr) (Client Quit) |
| 2021-08-10 14:37:02 | → | mastarija joins (~mastarija@78-3-210-70.adsl.net.t-com.hr) |
| 2021-08-10 14:37:19 | ← | mastarija parts (~mastarija@78-3-210-70.adsl.net.t-com.hr) () |
| 2021-08-10 14:38:55 | → | mastarija joins (~mastarija@78-3-210-70.adsl.net.t-com.hr) |
| 2021-08-10 14:39:42 | → | derelict joins (~derelict@user/derelict) |
| 2021-08-10 14:41:19 | <srid[m]> | What library release automation tool do you all use? (Better if integrates with nix) |
| 2021-08-10 14:41:53 | <Clint> | what's a library release automation tool? |
| 2021-08-10 14:42:43 | <srid[m]> | sdist, build docs, upload to hackage, git tag, etc. |
| 2021-08-10 14:42:55 | <maerwald[m]> | cabal |
| 2021-08-10 14:43:05 | <srid[m]> | pretty much automate this https://www.srid.ca/haskell-release-process |
| 2021-08-10 14:43:10 | <Clint> | cabal sdist; cabal upload |
| 2021-08-10 14:43:50 | <maerwald[m]> | I skip everything that contains the word "nix" and save so much time that there's nothing to automate |
| 2021-08-10 14:43:56 | <merijn> | srid[m]: You can upload package candidates via "cabal upload" too |
| 2021-08-10 14:47:18 | × | xff0x quits (~xff0x@2001:1a81:53d2:1c00:3b45:e81a:a20c:e310) (Ping timeout: 258 seconds) |
| 2021-08-10 14:48:03 | → | xff0x joins (~xff0x@2001:1a81:53d2:1c00:f58c:78ee:80de:d293) |
| 2021-08-10 14:50:22 | → | mattil joins (~mattilinn@87-92-9-185.bb.dnainternet.fi) |
| 2021-08-10 14:51:19 | × | mattil quits (~mattilinn@87-92-9-185.bb.dnainternet.fi) (Remote host closed the connection) |
| 2021-08-10 14:51:45 | → | mattil joins (~mattilinn@87-92-9-185.bb.dnainternet.fi) |
| 2021-08-10 14:52:17 | × | fendor quits (~fendor@212095005227.public.telering.at) (Ping timeout: 258 seconds) |
| 2021-08-10 14:52:50 | → | shapr joins (~user@pool-108-28-144-11.washdc.fios.verizon.net) |
| 2021-08-10 14:53:32 | × | acidjnk_new quits (~acidjnk@p200300d0c72b9574c56a490b8c03a837.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 2021-08-10 14:54:17 | <Drew[m]1> | <merijn> "So pretty sure you can't "see..." <- OK so now I'm appalled ... I wrote my own `HasField`-like class defined using type families instead of functional dependencies... |
| 2021-08-10 14:54:17 | <Drew[m]1> | And that made writing the last instance trivial. |
| 2021-08-10 14:54:21 | <Drew[m]1> | So both type families and functional dependencies can solve a problem. Things are easy if you always use functional dependencies to solve the problem, and easy if you always use type families to solve the problem, but if you mix them you get pain and gnashing of teeth? |
| 2021-08-10 14:54:47 | <Drew[m]1> | The code: https://paste.tomsmeding.com/szkCB4Dj |
| 2021-08-10 14:55:21 | <shapr> | @quote |
| 2021-08-10 14:55:21 | <lambdabot> | coedwardk says: <contrapumpkin> like yoda, I speak now <coedwardk> is that word ordering contra-diction? |
| 2021-08-10 14:58:02 | → | slowButPresent joins (~slowButPr@user/slowbutpresent) |
| 2021-08-10 14:58:56 | × | doyougnu quits (~user@c-73-25-202-122.hsd1.or.comcast.net) (Remote host closed the connection) |
| 2021-08-10 15:00:18 | × | yaroot quits (~yaroot@6.3.30.125.dy.iij4u.or.jp) (Quit: The Lounge - https://thelounge.chat) |
| 2021-08-10 15:01:08 | → | yaroot joins (~yaroot@6.3.30.125.dy.iij4u.or.jp) |
| 2021-08-10 15:01:44 | → | lavaman joins (~lavaman@98.38.249.169) |
| 2021-08-10 15:03:28 | <mastarija> | Has anyone used native vim lsp with HLS? |
| 2021-08-10 15:03:33 | <mastarija> | *nvim |
| 2021-08-10 15:04:24 | <mastarija> | I've managed to set it up by following the readme, but when ever I push "K" for hower functionality, I get the message "Invalid value for argument cmd: 'man' is not executable" |
| 2021-08-10 15:05:12 | <maerwald[m]> | yes, but not me |
| 2021-08-10 15:05:30 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 244 seconds) |
| 2021-08-10 15:05:31 | → | doyougnu joins (~user@c-73-25-202-122.hsd1.or.comcast.net) |
| 2021-08-10 15:05:33 | → | jpds1 joins (~jpds@gateway/tor-sasl/jpds) |
| 2021-08-10 15:06:05 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 258 seconds) |
| 2021-08-10 15:06:14 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 2021-08-10 15:09:39 | × | mastarija quits (~mastarija@78-3-210-70.adsl.net.t-com.hr) (Quit: Leaving) |
| 2021-08-10 15:10:31 | <merijn> | Sounds like: 1) your system is borked 2) you didn't setup keybinds from whatever docs you're following? |
| 2021-08-10 15:11:14 | <maerwald[m]> | no man on your system? |
| 2021-08-10 15:11:26 | × | Akronymus quits (~Akronymus@85.31.8.181) (Quit: Client closed) |
| 2021-08-10 15:15:22 | × | rmoe quits (~rmoe@c-71-236-207-44.hsd1.wa.comcast.net) (Ping timeout: 240 seconds) |
| 2021-08-10 15:17:03 | × | yoctocell quits (~user@h87-96-130-155.cust.a3fiber.se) (Read error: Connection reset by peer) |
| 2021-08-10 15:19:37 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:295c:2a1b:92fa:2044) (Quit: WeeChat 2.8) |
| 2021-08-10 15:22:53 | → | rmoe joins (~rmoe@c-71-236-207-44.hsd1.wa.comcast.net) |
| 2021-08-10 15:23:14 | × | justsome1 quits (~justsomeg@user/justsomeguy) (Ping timeout: 272 seconds) |
| 2021-08-10 15:23:39 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 2021-08-10 15:24:30 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds) |
| 2021-08-10 15:27:24 | → | myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net) |
| 2021-08-10 15:28:21 | → | rostero joins (uid236576@id-236576.tooting.irccloud.com) |
| 2021-08-10 15:29:24 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
All times are in UTC.