Logs: liberachat/#haskell
| 2021-06-13 20:01:15 | <davean> | You need to use the folds |
| 2021-06-13 20:01:29 | <maerwald> | but then I thought... why use tar at all, I'm gonna re-implement it in streamly |
| 2021-06-13 20:01:46 | <maerwald> | but then I was too lazy and used `libarchive` |
| 2021-06-13 20:02:00 | <maerwald> | which now exposed me to tons of c2hs errors |
| 2021-06-13 20:02:10 | <maerwald> | you can't win :) |
| 2021-06-13 20:02:31 | <davean> | So you can use the folds interface just fine of tar |
| 2021-06-13 20:02:42 | <shapr> | I kinda want to start a hackathon to add more tests to the most used libraries on hackage |
| 2021-06-13 20:02:49 | <shapr> | too bad I won't be at zurihac :-( |
| 2021-06-13 20:03:04 | <maerwald> | shapr: why not? |
| 2021-06-13 20:03:07 | <davean> | shapr: Yah, we actually signed up for the UNIX tests as an OSS project to run the ACTUAL standards tests on tar |
| 2021-06-13 20:03:28 | <Rembane> | shapr: If you start a distancehackathon wtih that purpose I'm in! |
| 2021-06-13 20:03:55 | <davean> | shapr: you've seen my test coverage :-p |
| 2021-06-13 20:03:58 | <shapr> | maerwald: I'm driving to see my family this weekend, emergency things that have to be done |
| 2021-06-13 20:04:10 | <davean> | shapr: I tend to give up when I start finding bugs in the linux kernel via my unit tests |
| 2021-06-13 20:04:15 | <shapr> | cdsmith showed me hpc yesterday, somehow I've never seen it before! |
| 2021-06-13 20:04:28 | <shapr> | I'd like to see hpc coverage for all the libraries, in reverse dependcy order. |
| 2021-06-13 20:04:30 | <davean> | shapr: wait, really? No you have |
| 2021-06-13 20:04:40 | <davean> | shapr: because you've seen my coverage |
| 2021-06-13 20:04:51 | <shapr> | davean: might have been years ago? |
| 2021-06-13 20:04:55 | × | juhp quits (~juhp@128.106.188.66) (Ping timeout: 245 seconds) |
| 2021-06-13 20:04:56 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 2021-06-13 20:04:58 | <davean> | Sure, it was in like 2018 |
| 2021-06-13 20:05:09 | <shapr> | I must have forgotten |
| 2021-06-13 20:05:40 | <davean> | I've done coverage with you though when we paired |
| 2021-06-13 20:05:48 | shapr | shrugs |
| 2021-06-13 20:06:09 | <davean> | shapr: cabal wants hpc to be something it isn't :( |
| 2021-06-13 20:06:19 | <davean> | That entire tree is such a mess |
| 2021-06-13 20:06:32 | <shapr> | I think it'd be nice to have a tests hackathon |
| 2021-06-13 20:07:01 | <davean> | shapr: I know I specificly went over how I did the tests in 'miss' with you BTW |
| 2021-06-13 20:07:21 | <davean> | getting a fast test suite with high coverage |
| 2021-06-13 20:07:25 | <davean> | I remember that specificly |
| 2021-06-13 20:07:36 | → | juhp joins (~juhp@128.106.188.66) |
| 2021-06-13 20:07:40 | <davean> | talking about testing methedologies in Haskell |
| 2021-06-13 20:07:55 | <davean> | shapr: you know theres laziness testing libraries, right? |
| 2021-06-13 20:08:16 | × | raehik1 quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds) |
| 2021-06-13 20:08:25 | <shapr> | davean: I think I've heard of such |
| 2021-06-13 20:08:28 | <davean> | actually, maerwald and dminuoso - if you do work with people who don't understand the details, have you tried specifying and using inspection testing? |
| 2021-06-13 20:09:08 | × | hemlock quits (~hemlock@2600:8804:4c0a:3200:91a4:77db:aed9:3c83) (Ping timeout: 252 seconds) |
| 2021-06-13 20:10:26 | → | hemlock joins (~hemlock@2600:8804:4c0a:3200:91a4:77db:aed9:3c83) |
| 2021-06-13 20:10:50 | <maerwald> | I've not used hpc that extensively |
| 2021-06-13 20:11:44 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 2021-06-13 20:13:01 | <maerwald> | my real world problem are IO probles (e.g. in ghcup... some file operation blowing up on windows 7, bc some registry key is not set) |
| 2021-06-13 20:13:04 | × | wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2021-06-13 20:13:11 | <davean> | maerwald: its not very loved. |
| 2021-06-13 20:13:17 | <davean> | maerwald: well, thats what hpc is good for though |
| 2021-06-13 20:13:33 | <maerwald> | given that you HAVE a windows 7 machine :p |
| 2021-06-13 20:13:37 | <davean> | maerwald: I think you may not have read closely enough? hpc is coverage, it tells you what code is used. inspection testing is entirely seperate |
| 2021-06-13 20:13:47 | <davean> | maerwald: I mean thats what CI is for? |
| 2021-06-13 20:14:02 | <davean> | maerwald: but thats actually not the problem |
| 2021-06-13 20:14:07 | <maerwald> | davean: yeah, except half of our runners are broken due to docker right now |
| 2021-06-13 20:14:10 | <davean> | not having a W7 machine is what hpc helps with |
| 2021-06-13 20:14:13 | <maerwald> | but I'm going offtrack |
| 2021-06-13 20:14:19 | <davean> | it shows you *haven't checked that code path on any machine* |
| 2021-06-13 20:14:38 | <maerwald> | davean: I'm not sure that would catch it... bc I do run that codepath on Windows 10 |
| 2021-06-13 20:14:42 | <maerwald> | it just behaves different there |
| 2021-06-13 20:14:56 | <davean> | maerwald: you sure? you sure there isn't a branch not taken on W10? |
| 2021-06-13 20:15:30 | <maerwald> | in MY code all paths are taken |
| 2021-06-13 20:15:35 | <maerwald> | dependencies, ffi etc, I dunno |
| 2021-06-13 20:15:47 | <davean> | Yah well how far you push coverage down is a thing |
| 2021-06-13 20:16:01 | <maerwald> | So what I'm more interested in is testing behavior |
| 2021-06-13 20:16:03 | <davean> | I've been pushing coverage into the kernel for some of my more important projects, but thats hard with Haskell |
| 2021-06-13 20:16:10 | → | dunkeln joins (~dunkeln@94.129.65.28) |
| 2021-06-13 20:16:23 | <davean> | If I ever figure out a useful setup for that, I should write it up ... |
| 2021-06-13 20:16:26 | <davean> | everything I've got is shit |
| 2021-06-13 20:16:28 | <maerwald> | when half your code is about IO and file operations, behavior matters more than anything else |
| 2021-06-13 20:16:33 | × | alex3 quits (~alex3@BSN-77-82-41.static.siol.net) (Ping timeout: 272 seconds) |
| 2021-06-13 20:16:37 | → | ajarmst joins (~user@S01066032b134d205.ed.shawcable.net) |
| 2021-06-13 20:16:56 | → | thelounge92 joins (~thelounge@cpe-23-240-28-18.socal.res.rr.com) |
| 2021-06-13 20:17:20 | → | alex3 joins (~alex3@BSN-77-82-41.static.siol.net) |
| 2021-06-13 20:17:31 | <maerwald> | I thought about using freer or whatnot to define all these operations in a DSL, which may give me more flexibility... but this might just be "cool", but not help in any way |
| 2021-06-13 20:17:56 | → | kayprish joins (~kayprish@cable-188-2-229-172.dynamic.sbb.rs) |
| 2021-06-13 20:18:05 | <maerwald> | however, you could write interpreters, that simulate e.g. windows 7 |
| 2021-06-13 20:18:06 | <davean> | I've used that (with free, not freer) to get cleaner code and faster testing before |
| 2021-06-13 20:18:22 | <maerwald> | like simulate file locking, right? |
| 2021-06-13 20:18:25 | <maerwald> | that would be cool |
| 2021-06-13 20:18:29 | × | reumeth quits (~reumeth@user/reumeth) (Remote host closed the connection) |
| 2021-06-13 20:18:34 | <davean> | I actually worked on a FS crash simulator |
| 2021-06-13 20:18:40 | <davean> | Need to restart that project |
| 2021-06-13 20:18:53 | → | reumeth joins (~reumeth@user/reumeth) |
| 2021-06-13 20:18:57 | <davean> | but it cuts off at the FS access level, and produces all legal FS behaviors as a tree |
| 2021-06-13 20:18:58 | <maerwald> | linux vs windows is a HUGE difference... mainly due to file locking |
| 2021-06-13 20:19:09 | <davean> | File locking was a reason for it |
| 2021-06-13 20:19:17 | <davean> | git is ... hard to get right with respect to locks |
| 2021-06-13 20:19:37 | <davean> | the design is highly inconsistent |
| 2021-06-13 20:19:50 | <davean> | maerwald: why would you choose freer? |
| 2021-06-13 20:19:54 | <maerwald> | like... self-updating an exe on linux: just remove it... on windows: 1. uh, try file rename, 2. but oh wait... needs to be atomic... so 3. are we on the same device and 4. make sure it really is atomic |
| 2021-06-13 20:20:11 | <maerwald> | davean: becase `eff` isn't ready yet |
| 2021-06-13 20:20:18 | <maerwald> | not sure it ever will |
| 2021-06-13 20:20:31 | <davean> | You're happy with the freer design though? |
| 2021-06-13 20:21:06 | <davean> | I'm much more comfortable with the 'free' approach |
| 2021-06-13 20:21:49 | → | benin0366 joins (~benin@183.82.205.8) |
| 2021-06-13 20:21:50 | <maerwald> | I dunno... I also looked at polysemy and it wasn't that bad either. But from what I understand they're all slow and may even be unsound |
| 2021-06-13 20:22:03 | <davean> | Right, this is why I lean to 'free' over any of them |
| 2021-06-13 20:22:15 | × | benin036 quits (~benin@183.82.205.8) (Ping timeout: 272 seconds) |
| 2021-06-13 20:22:16 | benin0366 | is now known as benin036 |
| 2021-06-13 20:22:26 | <davean> | so I'm curious what your selection approach was |
| 2021-06-13 20:22:36 | <maerwald> | "ergonomics", less technical |
| 2021-06-13 20:22:52 | <davean> | Hum, the technicalities were critical to me, interesting |
| 2021-06-13 20:22:53 | <maerwald> | my code is IO-bound |
| 2021-06-13 20:23:04 | <davean> | Its nto about performance |
All times are in UTC.