Logs: liberachat/#haskell
| 2021-07-23 13:36:54 | → | curiousgay joins (~curiousga@77-120-186-48.kha.volia.net) |
| 2021-07-23 13:41:23 | × | curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Remote host closed the connection) |
| 2021-07-23 13:41:45 | → | curiousgay joins (~curiousga@77-120-186-48.kha.volia.net) |
| 2021-07-23 13:44:05 | → | sqrt2 joins (~ben@tunnel330957-pt.tunnel.tserv6.fra1.ipv6.he.net) |
| 2021-07-23 13:44:30 | × | Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 265 seconds) |
| 2021-07-23 13:44:44 | × | berberman quits (~berberman@user/berberman) (Ping timeout: 255 seconds) |
| 2021-07-23 13:44:54 | → | berberman_ joins (~berberman@user/berberman) |
| 2021-07-23 13:48:41 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds) |
| 2021-07-23 13:49:23 | × | vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.0.1) |
| 2021-07-23 13:49:58 | → | vysn joins (~vysn@user/vysn) |
| 2021-07-23 13:52:00 | × | vysn quits (~vysn@user/vysn) (Client Quit) |
| 2021-07-23 13:52:40 | → | vysn joins (~vysn@user/vysn) |
| 2021-07-23 13:54:16 | × | yoneda quits (~mike@193.206.102.122) (Quit: leaving) |
| 2021-07-23 13:55:12 | → | fluffyballoon12 joins (~fluffybal@2620:72:0:6480::81d) |
| 2021-07-23 13:55:36 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:4c3:7ef8:c703:fb12) (Ping timeout: 268 seconds) |
| 2021-07-23 13:57:34 | → | agua joins (~agua@2804:18:44:46ad:1:0:480e:2382) |
| 2021-07-23 13:58:19 | × | fluffyballoon quits (~fluffybal@131.93.208.196) (Ping timeout: 246 seconds) |
| 2021-07-23 13:58:43 | fluffyballoon12 | is now known as fluffyballoon |
| 2021-07-23 13:59:35 | × | pesada quits (~agua@2804:14c:8793:8e2f:6091:e445:c3bf:d39e) (Ping timeout: 255 seconds) |
| 2021-07-23 14:03:45 | → | pesada joins (~agua@2804:14c:8793:8e2f:6091:e445:c3bf:d39e) |
| 2021-07-23 14:06:11 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 2021-07-23 14:06:17 | × | agua quits (~agua@2804:18:44:46ad:1:0:480e:2382) (Ping timeout: 252 seconds) |
| 2021-07-23 14:06:56 | → | zebrag joins (~chris@user/zebrag) |
| 2021-07-23 14:08:58 | × | jippiedoe quits (~david@2a02-a448-48bd-1-417a-77a1-fc46-a8dc.fixed6.kpn.net) (Ping timeout: 240 seconds) |
| 2021-07-23 14:11:21 | × | mikoto-chan quits (~mikoto-ch@ip-193-121-10-50.dsl.scarlet.be) (Ping timeout: 258 seconds) |
| 2021-07-23 14:12:06 | → | jippiedoe joins (~david@2a02-a448-48bd-1-5039-ff83-4f57-27cd.fixed6.kpn.net) |
| 2021-07-23 14:17:35 | × | curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 255 seconds) |
| 2021-07-23 14:18:50 | × | MidAutumnMoon90 quits (~MidAutumn@user/midautumnmoon) (Quit: Ping timeout (120 seconds)) |
| 2021-07-23 14:19:13 | → | MidAutumnMoon90 joins (~MidAutumn@user/midautumnmoon) |
| 2021-07-23 14:19:47 | → | shriekingnoise joins (~shrieking@186.137.144.80) |
| 2021-07-23 14:22:00 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 2021-07-23 14:23:57 | → | gzj joins (~GZJ0X@199.193.127.138.16clouds.com) |
| 2021-07-23 14:26:33 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 2021-07-23 14:28:27 | × | acidjnk_new quits (~acidjnk@p200300d0c72b95789cf50085fa6ab0cf.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 2021-07-23 14:32:07 | × | lbseale quits (~lbseale@user/ep1ctetus) (Quit: Leaving) |
| 2021-07-23 14:32:37 | × | jippiedoe quits (~david@2a02-a448-48bd-1-5039-ff83-4f57-27cd.fixed6.kpn.net) (Ping timeout: 245 seconds) |
| 2021-07-23 14:37:21 | → | lavaman joins (~lavaman@98.38.249.169) |
| 2021-07-23 14:40:58 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 2021-07-23 14:41:48 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
| 2021-07-23 14:41:53 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 255 seconds) |
| 2021-07-23 14:44:50 | → | sedeki joins (~textual@user/sedeki) |
| 2021-07-23 14:44:58 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 2021-07-23 14:46:56 | → | acidjnk_new joins (~acidjnk@p200300d0c72b95789cf50085fa6ab0cf.dip0.t-ipconnect.de) |
| 2021-07-23 14:49:06 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 240 seconds) |
| 2021-07-23 14:49:42 | × | jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
| 2021-07-23 14:51:54 | → | Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) |
| 2021-07-23 14:55:14 | → | hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com) |
| 2021-07-23 14:56:32 | <maerwald> | do notation is proof that even in functional languages, we think imperatively :p |
| 2021-07-23 14:56:58 | × | hendursa1 quits (~weechat@user/hendursaga) (Remote host closed the connection) |
| 2021-07-23 14:57:24 | → | hendursa1 joins (~weechat@user/hendursaga) |
| 2021-07-23 14:57:38 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-07-23 14:57:45 | → | euandreh joins (~euandreh@2804:14c:33:9fe5:90c5:c42d:2338:33d7) |
| 2021-07-23 14:58:10 | <DigitalKiwi> | haskell is the best imperative language ;p |
| 2021-07-23 15:00:33 | <c_wraith> | I don't really think of do-notation as more imperative than (>>=), but that's just because I've internalized the desugaring |
| 2021-07-23 15:00:44 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 2021-07-23 15:00:48 | × | drd quits (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Quit: ZNC 1.8.2 - https://znc.in) |
| 2021-07-23 15:02:06 | → | drd joins (~drd@93-39-151-19.ip76.fastwebnet.it) |
| 2021-07-23 15:02:40 | → | ahri joins (~ahri@185.108.168.17.default.telcom.network) |
| 2021-07-23 15:02:52 | <ahri> | I have a Haskell webserver and something is going horribly wrong - it clearly has a massive memory leak and ends up being killed by the OS. I've recompiled via "stack build --profile" and I tried some RTS config (via the env var) - these do produce .hp files, and I have converted them to pretty graphs via hp2ps and hp2pretty. All good except that |
| 2021-07-23 15:02:53 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 2021-07-23 15:02:53 | <ahri> | they only capture the first 10-15 seconds of the run |
| 2021-07-23 15:02:58 | → | peterhil joins (~peterhil@mobile-access-b04801-219.dhcp.inet.fi) |
| 2021-07-23 15:03:04 | <ahri> | unfortunately my massive memory leak is happening later than that (it depends on some interaction from me). what's going on and how can I capture the data I need? is it because it's a multi-threaded server? or because the OS is killing it? |
| 2021-07-23 15:03:45 | <c_wraith> | I've definitely had .hp files contain data from much more time than that, so it's not some sort of internal limit. |
| 2021-07-23 15:03:58 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
| 2021-07-23 15:04:24 | <c_wraith> | it's probably due to IO buffering |
| 2021-07-23 15:04:46 | × | sedeki quits (~textual@user/sedeki) (Quit: Textual IRC Client: www.textualapp.com) |
| 2021-07-23 15:05:14 | <maerwald> | ahri: StrictData |
| 2021-07-23 15:05:19 | <maerwald> | thank me later |
| 2021-07-23 15:05:29 | <ahri> | I'm not familiar with profiling in GHC, is it possible to force a flush on a regular basis? |
| 2021-07-23 15:06:05 | <ahri> | maerwald: yeah, I suspect that'll fix it, but I was trying to use this as an opportunity to learn about profiling too :) |
| 2021-07-23 15:06:07 | <c_wraith> | ugh, StrictData is a band-aid that rarely fixes actual problems but does create a bunch of new ones |
| 2021-07-23 15:06:11 | × | gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Ping timeout: 255 seconds) |
| 2021-07-23 15:06:14 | <c_wraith> | why do people like it? |
| 2021-07-23 15:06:30 | <maerwald> | huh? |
| 2021-07-23 15:06:41 | <maerwald> | it fixes a lot of problem in production *all the time* |
| 2021-07-23 15:06:52 | <maerwald> | to the point that many projects enable it unconditinally |
| 2021-07-23 15:06:58 | <maerwald> | including network packages |
| 2021-07-23 15:07:00 | <c_wraith> | I've never had it do anything except create problems |
| 2021-07-23 15:07:25 | <maerwald> | even Snoyman agrees on it |
| 2021-07-23 15:07:37 | <maerwald> | it is the better default |
| 2021-07-23 15:07:37 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 2021-07-23 15:07:41 | <c_wraith> | that's a weird use of "even" |
| 2021-07-23 15:07:51 | <maerwald> | if you need laziness in your data, you can still annotate it |
| 2021-07-23 15:08:00 | <c_wraith> | That's the problem |
| 2021-07-23 15:08:17 | <c_wraith> | What if you don't know your users need laziness? |
| 2021-07-23 15:08:19 | → | delYsid joins (~user@84-115-55-45.cable.dynamic.surfer.at) |
| 2021-07-23 15:08:27 | <c_wraith> | They can't fix your mistake |
| 2021-07-23 15:08:50 | <maerwald> | provide two APIs? |
| 2021-07-23 15:08:52 | <maerwald> | easy |
| 2021-07-23 15:08:57 | <maerwald> | see bytestring etc :) |
| 2021-07-23 15:09:00 | <c_wraith> | or provide one correct API |
| 2021-07-23 15:09:11 | <maerwald> | this isn't about correctness |
| 2021-07-23 15:09:30 | <DigitalKiwi> | clearly not if snoyman agrees on it |
| 2021-07-23 15:09:49 | <c_wraith> | almost every function has one correct laziness |
| 2021-07-23 15:10:05 | <Clint> | how do you annotate for laziness? |
| 2021-07-23 15:10:13 | <c_wraith> | throw a ~ on the field |
| 2021-07-23 15:10:31 | <Clint> | ah |
| 2021-07-23 15:11:46 | → | lavaman joins (~lavaman@98.38.249.169) |
| 2021-07-23 15:11:49 | <c_wraith> | and yeah... Ever since bytestring added unnecessary strictness and broke one of my programs, I've been rather against making things strict just in case. |
All times are in UTC.