Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→
Page 1 .. 648 649 650 651 652 653 654 655 656 657 658 .. 18012
1,801,189 events total
2021-06-25 14:29:04 <raehik> I feel like you get most of the compiler errors in Haskell by... compiling
2021-06-25 14:29:17 <merijn> @quote cmccann stream.of
2021-06-25 14:29:17 <lambdabot> cmccann says: you want a debugger? GHC has one. Except that stepping through lazy evaluation is like listening to a stream of consciousness narrative told by a 5-year-old with ADHD.
2021-06-25 14:29:18 <Gurkenglas> raehik, yeah but they're confusing for advanced libraries
2021-06-25 14:29:19 <raehik> I would love for more material on performance debugging however
2021-06-25 14:29:50 argento joins (~argent0@168-227-97-29.ptr.westnet.com.ar)
2021-06-25 14:30:01 <merijn> Gurkenglas: There is a debugger in ghci, but in practice it's often faster to narrow down problems with some printf debugging
2021-06-25 14:30:11 <Gurkenglas> merijn, that is sorta weird though, isn't it? Shouldn't there be a way to get useful debugging?
2021-06-25 14:30:32 <merijn> Gurkenglas: Well, I'm gonna need you to define "useful debugging" first :p
2021-06-25 14:30:59 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-25 14:31:28 <boxscape> raehik: there's this recent talk about memory usage analysis if you haven't seen it https://youtu.be/6Ljv5FHGXDM
2021-06-25 14:31:40 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
2021-06-25 14:31:48 <boxscape> well, I say talk, it's more of a workshop
2021-06-25 14:31:50 <Gurkenglas> Imagine having an unevaluated expression that might be evaluated in many different orders, some of them equivalent; and then the debugger chooses an order equivalent to the default one that optimizes for usefulness to the debugger's user.
2021-06-25 14:32:12 <merijn> raehik: Have you heard of our lord and saviour Speedscope?
2021-06-25 14:32:56 warnz joins (~warnz@2600:1700:77c0:5610:350e:4738:7a75:35e)
2021-06-25 14:33:10 <Gurkenglas> If there's a .hs with a do block, ten lines long, then I would like to have a tool that highlights the "current line" and lets you step over and into, etc.
2021-06-25 14:33:15 <raehik> merijn: I haven't! what is it?
2021-06-25 14:33:35 × ralu quits (~ralu@static.211.245.203.116.clients.your-server.de) (Quit: The Lounge - https://thelounge.chat)
2021-06-25 14:33:45 <merijn> raehik: Browser based, zoomable flamegraph visualiser: https://www.speedscope.app/
2021-06-25 14:34:07 <merijn> raehik: https://mpickering.github.io/posts/2019-11-07-hs-speedscope.html
2021-06-25 14:34:26 <raehik> Oh wow, I can convert .perfs into something to use in a GUI visualizer
2021-06-25 14:34:27 jolly joins (~jolly@208.180.97.158)
2021-06-25 14:34:38 <merijn> raehik: Still some room for improvement when it comes to tracking time spent in foreign calls, etc.
2021-06-25 14:34:43 ralu joins (~ralu@static.211.245.203.116.clients.your-server.de)
2021-06-25 14:34:43 <merijn> raehik: But it's quite nice!
2021-06-25 14:35:14 <merijn> raehik: mpickering's hs-speedscope can convert eventlogs to a format it supports
2021-06-25 14:35:17 <raehik> that is fantastic actually, the .perf format confused me before
2021-06-25 14:35:22 <Gurkenglas> If the do block's monad is [], it might jump back and forth between the lines as the calculation of the list backtracks through it, or it might rearrange the evaluation history to show you the entire branching tree of nondeterminism one do block line at a time
2021-06-25 14:35:50 <merijn> Gurkenglas: You do see how your current specification might be...challenging to implement? ;)
2021-06-25 14:36:35 <Gurkenglas> Well, does there exist a library for manipulating sets of evaluation orders?
2021-06-25 14:36:56 <merijn> Pretty confident there isn't >.>
2021-06-25 14:37:23 × warnz quits (~warnz@2600:1700:77c0:5610:350e:4738:7a75:35e) (Ping timeout: 250 seconds)
2021-06-25 14:37:26 <Gurkenglas> hence my sense that we're doing something wrong
2021-06-25 14:37:46 <merijn> Gurkenglas: Like, what you just described is several phds worth of research to even figure out :)
2021-06-25 14:38:06 × kayprish quits (~kayprish@46.240.143.86) (Remote host closed the connection)
2021-06-25 14:38:54 × involans quits (~alex@cpc92718-cmbg20-2-0-cust157.5-4.cable.virginm.net) (Ping timeout: 268 seconds)
2021-06-25 14:40:13 <Gurkenglas> Low-hanging fruit: Is there a tool that annontates a .hs AST with the values produced at every node in a test run?
2021-06-25 14:42:13 maerwald joins (~maerwald@mail.hasufell.de)
2021-06-25 14:43:09 mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-25 14:44:43 <Gurkenglas> aka, every function invocation is decorated with "if this function is ever applied to enough arguments that a Show instance is produced, decorate this invocation's sourceloc with that Show output"
2021-06-25 14:46:03 <Gurkenglas> and then you mouseover a function invocation in your .hs and get a tooltip listing those show outputs
2021-06-25 14:47:03 <geekosaur> if I were to write one for some reason I'd probably start from ghc-vis. but tying that back to an AST might be tricky
2021-06-25 14:48:05 <Gurkenglas> We have a library that provides Prism' String AST, right?
2021-06-25 14:50:30 warnz joins (~warnz@2600:1700:77c0:5610:350e:4738:7a75:35e)
2021-06-25 14:52:25 winircuser-318 joins (~winircuse@170.250.221.149)
2021-06-25 14:54:43 × warnz quits (~warnz@2600:1700:77c0:5610:350e:4738:7a75:35e) (Ping timeout: 250 seconds)
2021-06-25 14:54:55 × v01d4lph4 quits (~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
2021-06-25 14:55:00 × alex3 quits (~alex3@bsn-77-82-41.static.siol.net) (Ping timeout: 252 seconds)
2021-06-25 14:55:48 alex3 joins (~alex3@BSN-77-82-41.static.siol.net)
2021-06-25 14:56:33 dhil joins (~dhil@195.213.192.47)
2021-06-25 14:56:59 × Axman6 quits (~Axman6@user/axman6) (Remote host closed the connection)
2021-06-25 14:57:19 jakalx joins (~jakalx@base.jakalx.net)
2021-06-25 14:57:23 Axman6 joins (~Axman6@user/axman6)
2021-06-25 14:59:53 × nschoe quits (~quassel@2a01:e0a:8e:a190:20c6:146b:d647:f6d9) (Ping timeout: 244 seconds)
2021-06-25 15:00:34 × jespada quits (~jespada@90.254.247.46) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-25 15:02:21 jespada joins (~jespada@90.254.247.46)
2021-06-25 15:07:19 mnrmnaugh is now known as thunderfish
2021-06-25 15:07:22 zmt00 joins (~zmt00@user/zmt00)
2021-06-25 15:08:12 ephemient joins (uid407513@id-407513.tooting.irccloud.com)
2021-06-25 15:08:41 Gurkenglas_ joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
2021-06-25 15:08:55 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Read error: Connection reset by peer)
2021-06-25 15:08:55 × Gurkenglas_ quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Read error: Connection reset by peer)
2021-06-25 15:09:40 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection)
2021-06-25 15:11:05 warnz joins (~warnz@2600:1700:77c0:5610:350e:4738:7a75:35e)
2021-06-25 15:16:01 <juri_> hmm. is anyone else here using the slist library?
2021-06-25 15:16:03 × Reyu[M] quits (~reyureyuz@matrix.reyuzenfold.com) (Remote host closed the connection)
2021-06-25 15:16:44 Reyu[M] joins (~reyureyuz@matrix.reyuzenfold.com)
2021-06-25 15:17:09 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2021-06-25 15:17:58 derelict joins (~derelict@user/derelict)
2021-06-25 15:18:20 shapr joins (~user@2601:7c0:8180:89d0:903c:7e54:945b:c68c)
2021-06-25 15:18:24 Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
2021-06-25 15:18:25 × wei2912 quits (~wei2912@112.199.250.21) (Quit: Lost terminal)
2021-06-25 15:19:53 <qrpnxz> no, but interesting
2021-06-25 15:21:47 TranquilEcho joins (~grom@user/tranquilecho)
2021-06-25 15:22:30 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Read error: Connection reset by peer)
2021-06-25 15:23:25 × chele quits (~chele@user/chele) (Remote host closed the connection)
2021-06-25 15:24:02 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 258 seconds)
2021-06-25 15:24:15 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
2021-06-25 15:26:13 GIANTWORLDKEEPR_ joins (~pjetcetal@2.95.227.207)
2021-06-25 15:26:13 × GIANTWORLDKEEPR_ quits (~pjetcetal@2.95.227.207) (Client Quit)
2021-06-25 15:26:31 betelgeuse joins (~john2gb@94-225-47-8.access.telenet.be)
2021-06-25 15:27:22 <Axman6> vector's stream fusion does a similar thing, aiming to allocate vectors of the correct size when they need to become manifest arrays
2021-06-25 15:27:26 <merijn> hmm, anyone know if I can interpolate imports in Dhall?
2021-06-25 15:27:55 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c4e3:f231:bc2a:37da)
2021-06-25 15:29:16 × betelgeuse quits (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-06-25 15:30:07 acidjnk joins (~acidjnk@p200300d0c72b9545f908228849627247.dip0.t-ipconnect.de)
2021-06-25 15:30:16 Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
2021-06-25 15:30:49 betelgeuse joins (~john2gb@94-225-47-8.access.telenet.be)
2021-06-25 15:31:32 jakalx joins (~jakalx@base.jakalx.net)
2021-06-25 15:33:36 × betelgeuse quits (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-06-25 15:34:52 × MoC quits (~moc@user/moc) (Quit: Konversation terminated!)
2021-06-25 15:35:10 betelgeuse joins (~john2gb@94-225-47-8.access.telenet.be)
2021-06-25 15:36:22 nschoe joins (~quassel@2a01:e0a:8e:a190:681:f80c:a16c:65d7)
2021-06-25 15:37:43 × chisui quits (~chisui@200116b8668160004d7885d559e3acba.dip.versatel-1u1.de) (Ping timeout: 246 seconds)
2021-06-25 15:38:06 × betelgeuse quits (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-06-25 15:39:41 betelgeuse joins (~john2gb@94-225-47-8.access.telenet.be)
2021-06-25 15:41:18 × yoctocell quits (~user@h87-96-130-155.cust.a3fiber.se) (Remote host closed the connection)
2021-06-25 15:42:23 × betelgeuse quits (~john2gb@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-06-25 15:43:57 betelgeuse joins (~john2gb@94-225-47-8.access.telenet.be)

All times are in UTC.