Logs: liberachat/#haskell
| 2021-07-22 16:04:20 | → | ukari joins (~ukari@user/ukari) |
| 2021-07-22 16:05:08 | → | lavaman joins (~lavaman@98.38.249.169) |
| 2021-07-22 16:05:12 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 2021-07-22 16:05:44 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-07-22 16:06:03 | <dsal> | I just read that bug. That's really weird. |
| 2021-07-22 16:06:20 | → | lbseale joins (~lbseale@user/ep1ctetus) |
| 2021-07-22 16:08:45 | <EvanR> | yep... the operation is literally doing I/O so really needs IO xD |
| 2021-07-22 16:08:59 | <maerwald> | but it returns the same filepath IF there is no error |
| 2021-07-22 16:09:16 | → | ub joins (~Thunderbi@178.165.186.232.wireless.dyn.drei.com) |
| 2021-07-22 16:09:43 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection) |
| 2021-07-22 16:10:01 | <maerwald> | whether that filepath points to anything is another story |
| 2021-07-22 16:10:17 | <EvanR> | getting the filepath out can't be the main point here xD |
| 2021-07-22 16:10:28 | <maerwald> | lol |
| 2021-07-22 16:11:02 | <EvanR> | someone submit a pull request that updates the developer |
| 2021-07-22 16:11:30 | <maerwald> | why not have: svgAsPng :: SVG -> L.ByteString |
| 2021-07-22 16:11:31 | × | azeem quits (~azeem@176.201.2.247) (Read error: Connection reset by peer) |
| 2021-07-22 16:11:35 | <maerwald> | and then let the user deal with files |
| 2021-07-22 16:11:45 | → | azeem joins (~azeem@dynamic-adsl-84-220-213-65.clienti.tiscali.it) |
| 2021-07-22 16:12:17 | <maerwald> | clearly, I want to do my own file handling code in light of these revelations |
| 2021-07-22 16:14:11 | <maerwald> | this made me angry, I'll go for a walk, lol |
| 2021-07-22 16:14:27 | <Nuxular> | maerwald: Ha sorry about that |
| 2021-07-22 16:14:41 | <EvanR> | is the whole API like this or |
| 2021-07-22 16:14:50 | <Nuxular> | I found out about this package from a 3blue1brown video: https://youtu.be/ojjzXyQCzso?t=1157 |
| 2021-07-22 16:15:14 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 2021-07-22 16:15:18 | <maerwald> | I mean, the rest of the codebase doesn't look like it's written by a newbie, so that makes me double confused |
| 2021-07-22 16:15:39 | <Nuxular> | I'm thinking I might use diagrams instead for what I'm trying to do |
| 2021-07-22 16:15:51 | <maerwald> | and whether this is something I have to audit my libraries for |
| 2021-07-22 16:16:59 | <maerwald> | I'd go so far to say that may be a reason to flag a package on hackage for removal :p |
| 2021-07-22 16:19:12 | <EvanR> | hold on a sec while I set up a torches and pitchforks sales page |
| 2021-07-22 16:19:34 | <maerwald> | Nuxular: I spent the entire day working out file system operation issues on windows, carefully checking exception types, testing on different conditions, carefully handling corner cases etc etc. And now this. |
| 2021-07-22 16:19:45 | <maerwald> | :D |
| 2021-07-22 16:19:48 | <Nuxular> | :D |
| 2021-07-22 16:21:42 | × | xlei quits (znc@pool-68-129-84-118.nycmny.fios.verizon.net) (Excess Flood) |
| 2021-07-22 16:22:15 | <EvanR> | it does raise some philosophical issues, like, what are the semantics of IO. I find it odd we are dwelling on how likely it is it returns the same value for a given input |
| 2021-07-22 16:22:49 | <EvanR> | or, what's purity |
| 2021-07-22 16:23:06 | <glguy> | maerwald: putStrLn :: String -> () |
| 2021-07-22 16:23:15 | <glguy> | I mean, it always returns (), why bother with the IO? |
| 2021-07-22 16:24:37 | <dminuoso> | maerwald: Did you want to go out for a walk? |
| 2021-07-22 16:24:40 | <dminuoso> | :-) |
| 2021-07-22 16:25:24 | → | xlei joins (znc@pool-68-129-84-118.nycmny.fios.verizon.net) |
| 2021-07-22 16:27:38 | × | ub quits (~Thunderbi@178.165.186.232.wireless.dyn.drei.com) (Ping timeout: 252 seconds) |
| 2021-07-22 16:27:45 | → | juhp joins (~juhp@128.106.188.220) |
| 2021-07-22 16:34:36 | × | azeem quits (~azeem@dynamic-adsl-84-220-213-65.clienti.tiscali.it) (Ping timeout: 252 seconds) |
| 2021-07-22 16:35:13 | × | argento quits (~argent0@168-227-96-53.ptr.westnet.com.ar) (Ping timeout: 250 seconds) |
| 2021-07-22 16:35:54 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 276 seconds) |
| 2021-07-22 16:36:15 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 2021-07-22 16:39:40 | <Nuxular> | EvanR: I wasn't so concerned with philosophical implications as much as knowing what the compiler is going to decide to do if it thinks that value is pure. |
| 2021-07-22 16:39:47 | → | azeem joins (~azeem@176.201.2.247) |
| 2021-07-22 16:39:48 | × | chomwitt quits (~chomwitt@2a02:587:dc0e:ef00:12c3:7bff:fe6d:d374) (Ping timeout: 276 seconds) |
| 2021-07-22 16:40:34 | <Nuxular> | I'm not familiar with force and evaluate so I'll look into those thanks |
| 2021-07-22 16:40:46 | → | justsome1 joins (~justsomeg@user/justsomeguy) |
| 2021-07-22 16:41:09 | <Nuxular> | (though I still think I'm going to just use a different package) |
| 2021-07-22 16:41:35 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 255 seconds) |
| 2021-07-22 16:42:55 | koz- | is now known as koz |
| 2021-07-22 16:43:07 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 2021-07-22 16:44:25 | <EvanR> | that's a shame this package seems cool |
| 2021-07-22 16:45:08 | <nshepperd> | this presents an obvious performance optimisation: just return the file path without doing all that expensive I/O. the denotational semantics are the same but now it's way faster |
| 2021-07-22 16:46:42 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds) |
| 2021-07-22 16:47:01 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2021-07-22 16:47:24 | → | chris_ joins (~chris@81.96.113.213) |
| 2021-07-22 16:49:16 | → | favonia joins (~favonia@user/favonia) |
| 2021-07-22 16:50:06 | <c_wraith> | Also, the assertion is false |
| 2021-07-22 16:50:17 | <c_wraith> | That function depends on the current directory |
| 2021-07-22 16:50:23 | <c_wraith> | you can change that at runtmie |
| 2021-07-22 16:50:31 | <c_wraith> | or runtime, if you like spelling accurately |
| 2021-07-22 16:51:07 | <c_wraith> | Oh, I guess it's less clear than that |
| 2021-07-22 16:52:24 | <c_wraith> | Ok, it depends on the XDG environment variables. those aren't likely to change at run time, but can change between runs of the program |
| 2021-07-22 16:52:25 | <shapr> | run TMI, the new post mortem group? |
| 2021-07-22 16:54:31 | yo_ | is now known as yo |
| 2021-07-22 16:55:02 | <c_wraith> | can you alter the current process's environment variables at runtime? |
| 2021-07-22 16:56:13 | × | azeem quits (~azeem@176.201.2.247) (Read error: Connection reset by peer) |
| 2021-07-22 16:56:41 | <yo> | Hi guys, I'm new to Haskell, I tried writing recursive nth Fibonacci number function, but it seems to run too slow, even slower than slowest languages out there. |
| 2021-07-22 16:56:53 | <davean> | maerwald: That is the most egregious issue I've ever seen in Haskell |
| 2021-07-22 16:56:55 | <c_wraith> | hey... https://hackage.haskell.org/package/base-4.15.0.0/docs/System-Environment.html#v:setEnv |
| 2021-07-22 16:57:08 | <c_wraith> | congratulations, the function doesn't even always return the same thing! |
| 2021-07-22 16:57:10 | → | azeem joins (~azeem@dynamic-adsl-84-220-213-65.clienti.tiscali.it) |
| 2021-07-22 16:57:33 | <c_wraith> | so the defense is just factually incorrect |
| 2021-07-22 16:58:01 | → | Achylles joins (~Achylles_@2804:431:d724:510f:d7b1:4ecb:6877:1a1a) |
| 2021-07-22 16:58:08 | × | mr-red quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Read error: Connection reset by peer) |
| 2021-07-22 16:58:16 | <yo> | https://pastebin.com/4FfCZTDA that's how I wrote it |
| 2021-07-22 16:58:18 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 240 seconds) |
| 2021-07-22 16:58:38 | <Nuxular> | EvanR: It seems cool to me too and I appreciate the effort they've put into creating it despite it's misguided notion of purity. |
| 2021-07-22 16:58:48 | → | drd joins (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) |
| 2021-07-22 16:58:57 | <Nuxular> | Nobody would bat an eyelid if it were written most other languages out there |
| 2021-07-22 16:59:17 | <c_wraith> | yo: well, it is an exponential-time algorithm. if you're running it in ghci... well, ghci isn't known for trying to be fast. |
| 2021-07-22 16:59:35 | <c_wraith> | yo: but even if you compiled it, it's *still* exponential time |
| 2021-07-22 16:59:39 | → | econo joins (uid147250@user/econo) |
| 2021-07-22 17:00:12 | <yo> | fib 41 is taking three seconds in Julia, and over 5 mins in ghci |
| 2021-07-22 17:00:25 | <yo> | maybe I should compile it and check |
| 2021-07-22 17:00:53 | → | mr-red joins (~drd@93-39-151-19.ip76.fastwebnet.it) |
| 2021-07-22 17:01:50 | <c_wraith> | I don't think any current hardware will run that algorithm in 3 seconds on 41 as the input. |
| 2021-07-22 17:02:14 | <c_wraith> | hmm. Maybe that's right on the edge of possible |
| 2021-07-22 17:03:52 | × | drd quits (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Ping timeout: 272 seconds) |
| 2021-07-22 17:05:11 | <davean> | ooh thats a very lazy definition |
| 2021-07-22 17:05:57 | <davean> | Yah, you either want to be more eager, or optimize that |
| 2021-07-22 17:06:09 | <davean> | I'm a little shocked that didn't blow out stack |
| 2021-07-22 17:06:38 | × | jneira_ quits (~jneira_@28.red-80-28-169.staticip.rima-tde.net) (Quit: Ping timeout (120 seconds)) |
| 2021-07-22 17:07:21 | → | drd joins (~drd@93-39-151-19.ip76.fastwebnet.it) |
| 2021-07-22 17:08:02 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 2021-07-22 17:08:38 | <davean> | yo: That definition can't possibly run in a sane time on any computer currently existing. |
All times are in UTC.