Home freenode/#haskell: Logs Calendar

Logs: freenode/#haskell

←Prev  Next→ 502,152 events total
2021-05-19 14:57:50 <timCF> That's why I started looking into ghc-source-gen. It's prety much ok, and works file. Except now I need to Lift everything manually to code AST
2021-05-19 14:58:09 × star_cloud quits (~star_clou@ec2-52-11-151-184.us-west-2.compute.amazonaws.com) (Excess Flood)
2021-05-19 14:58:53 <kritzefitz> merijn, do you see a realistic way how TH could be implemented to work with values from the target? To me it seems like you are stuck with values from the build machine or you have to emulate the architecture of the target machine, at which point I wouldn't even call it cross-compiling anymore.
2021-05-19 14:59:42 <timCF> It would be very handy to have translator from TH AST to ghc-source-gen AST. Then you can have the best from both worlds - Lift and QQ from TH, and full control on source code and cross-compilation on ghc-source-gen
2021-05-19 14:59:52 star_cloud joins (~star_clou@ec2-52-11-151-184.us-west-2.compute.amazonaws.com)
2021-05-19 15:00:00 <davean> kritzefitz: well, we already do it by running it on the target, and whats the difference between optimization and emulation?
2021-05-19 15:00:05 <davean> both deal with the semantics of the target
2021-05-19 15:00:06 × Unode quits (~Unode@unaffiliated/unode) (Quit: Off it goes)
2021-05-19 15:00:21 mouseghost is now known as desperek
2021-05-19 15:00:49 Jerub parts (~sthorne@37.17.237.231) ()
2021-05-19 15:00:54 desperek is now known as mouseghost
2021-05-19 15:01:08 <madnight> Will #haskell leave freenode and move to irc.libera.chat?
2021-05-19 15:01:31 <Taneb> madnight: remains to be seen
2021-05-19 15:02:19 <davean> people vote with their feet, but people are voting.
2021-05-19 15:02:40 <Taneb> (I'm in both and intend to be in both for a while)
2021-05-19 15:02:50 <geekosaur> I think it'll take time, especially with >1000 people
2021-05-19 15:03:08 <timCF> what's a point?
2021-05-19 15:03:26 <timCF> I mean what's wrong with freenode?
2021-05-19 15:03:27 Unode joins (~Unode@unaffiliated/unode)
2021-05-19 15:03:43 <kritzefitz> davean, I'm not sure I understand what you mean. Isn't the point that TH is run during compilation on the build machine, where you possibly don't have the means to execute code the same way it would execute on the target machine?
2021-05-19 15:03:57 × Unode quits (~Unode@unaffiliated/unode) (Client Quit)
2021-05-19 15:04:29 hiroaki joins (~hiroaki@2a02:8108:8c40:2bb8:bd2:c65:4ec0:2a3c)
2021-05-19 15:04:37 <Taneb> timCF: staff have resigned en masse. New administration is untrustworthy and of unproven competence.
2021-05-19 15:04:44 Unode joins (~Unode@unaffiliated/unode)
2021-05-19 15:04:56 <davean> kritzefitz: why do you think its run on the build machine? But my point was actually that optimization is, in a sense, a running of the code.
2021-05-19 15:05:28 <davean> kritzefitz: still, https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/compiler/external-interpreter
2021-05-19 15:05:48 berberman_ joins (~berberman@unaffiliated/berberman)
2021-05-19 15:05:49 × berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 245 seconds)
2021-05-19 15:05:59 todda7 joins (~torstein@2a02:587:3729:5274:b6df:d74:d185:4e87)
2021-05-19 15:07:35 <edwardk> timcf: frankly, a lot of why #haskell has run as well as it has is that we have had a couple of the server ircops sitting in the channel watching our backs. i'm not so bullish on the state of a future where that isn't the case because they all resigned en masse and left for libera.chat
2021-05-19 15:07:55 Qwerky joins (~qwerky@178.197.228.14)
2021-05-19 15:08:24 × parabolize quits (~paraboliz@98.43.173.221) (Quit: Changing server)
2021-05-19 15:08:24 <edwardk> issues that used to take a few seconds for someone like glguy or mniip to solve will now require someone to get the attention of a server op with whom we will now no longer have any existing relationship with, and then get them to deal with the botspam or whatever we're facing
2021-05-19 15:08:38 <davean> kritzefitz: if you don't understand how optimization is running the code under a semantic, I cite supercompilation.
2021-05-19 15:08:44 <kritzefitz> davean, I didn't know about the external-interpreter. That's why I assumed, that the TH code would run in the same GHC process and thus on the build machine.
2021-05-19 15:08:52 <orion> Does *someone* within the community control #haskell on libera chat?
2021-05-19 15:09:02 <edwardk> orion: yes
2021-05-19 15:09:02 <merijn> orion: I think so?
2021-05-19 15:09:10 <orion> Okay, very good.
2021-05-19 15:09:21 <edwardk> its glguy who started the channel there and i'm claiming control of the #haskell namespace as we speak
2021-05-19 15:09:22 <davean> kritzefitz: What about TH that looked at header files for syscall numbers?
2021-05-19 15:09:32 <merijn> orion: At least one of the resigning freenode operators was an active member here :)
2021-05-19 15:09:37 <gonz_> Even if they didn't the official rules state that an organization has control over their associated channels, also prefixed channels.
2021-05-19 15:09:39 <mniip> two
2021-05-19 15:09:43 × star_cloud quits (~star_clou@ec2-52-11-151-184.us-west-2.compute.amazonaws.com) (Excess Flood)
2021-05-19 15:09:48 <davean> kritzefitz: what about header files that tested library options for which was best on the target?
2021-05-19 15:09:51 <davean> all things you can do in TH
2021-05-19 15:10:05 <gonz_> So the Haskell foundation could step in and take over #haskell regardless of whoever had taken it.
2021-05-19 15:10:06 <merijn> kritzefitz: I don't think its a problem, tbh
2021-05-19 15:10:07 <edwardk> correction: i just did so
2021-05-19 15:10:33 <merijn> kritzefitz: A cross-compiling GHC from x64 to arm32, for example necessarily has to know about details of the target *anyway*
2021-05-19 15:10:57 <siraben> who is the owner of #haskell on libera?
2021-05-19 15:10:59 <merijn> gonz_: Haskell Foundation is not some universal organisation in control of Haskell
2021-05-19 15:10:59 <edwardk> if someone within the haskell foundation other than me wants to step into this mess i'm happy to hand over control. i just claimed it based on existing precedent and practice
2021-05-19 15:11:03 <edwardk> siraben: me now
2021-05-19 15:11:05 <davean> merijn: I mean that was my point about optimization - a compiler inhernently needs to understand its target.
2021-05-19 15:11:09 <arahael> edwardk: i think i have the ##haskell there as well but happy for the #haskell to take it, i have gone to bed though.
2021-05-19 15:11:20 <merijn> davean: I was distracted, so I missed your comments :)
2021-05-19 15:11:53 <davean> merijn: understandable, its a busy IRC channel I didn't mean to complain you didn't but agree!
2021-05-19 15:11:59 <edwardk> arahael: sure. just forward it to #haskell when you get a chance
2021-05-19 15:12:13 <srid> btw, here's the Matrix space: https://matrix.to/#/#haskell-space:matrix.org
2021-05-19 15:12:30 jakalx parts (~jakalx@base.jakalx.net) ("Error from remote client")
2021-05-19 15:12:31 <arahael> edwardk: sure thing, laters though!
2021-05-19 15:12:32 <merijn> Annoyingly I will need to figure out how to make irssi connect to both and manage that >.>
2021-05-19 15:12:43 <edwardk> arahael: np
2021-05-19 15:12:54 <kritzefitz> merijn, yes, but you don't only have to know what the specifics of that of the target architecture are, you also have to be able to execute code in a way that respects those specifics. e.g. if you're building on a 32bit machine for a 64bit target, you have to emulate 64 bit integers, or else code that assumes that integers have 64 bits, just because `finiteBitsSize` says so, will break.
2021-05-19 15:13:20 sagax joins (~sagax_nb@213.138.71.146)
2021-05-19 15:13:30 <merijn> kritzefitz: Right, you need to be able to designate a host/target context
2021-05-19 15:13:36 <merijn> Which is lacking now
2021-05-19 15:13:37 <davean> kritzefitz: my point was an optimizer needs to do that *also*
2021-05-19 15:14:00 <davean> This is not the sort of understanding a compiler can avoid really.
2021-05-19 15:14:03 <davean> Though TH is a mess
2021-05-19 15:14:13 <davean> It doesn't get to avoid it, it just gets to fail at it.
2021-05-19 15:14:19 ystael joins (~ystael@242.sub-174-242-76.myvzw.com)
2021-05-19 15:14:20 <merijn> TH is "Worse is Better" ;)
2021-05-19 15:14:34 <maerwald> merijn: I hope so (wrt your HF comment)
2021-05-19 15:14:42 <kritzefitz> davean, yes, but optimizers often don't need to deal with every possible case. Some cases can be left unoptimized (or at least not further optimized). With TH you would have to promise to be able to “optimize” every possible Haskell expression to its final result.
2021-05-19 15:14:56 × machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 265 seconds)
2021-05-19 15:15:01 <maerwald> remains to be seen how it operates long-term
2021-05-19 15:15:23 <kritzefitz> merijn, what do you mean by host/target context?
2021-05-19 15:15:48 <merijn> maerwald: HF has significant overlap with important community members, so their opinion carries some weight, but I dislike the tendency people of acting like everyone/thing should defer to HF...
2021-05-19 15:15:51 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-05-19 15:16:07 <davean> I mean haskell.org is really more the community asset manager anyway
2021-05-19 15:16:19 × jb55 quits (~jb55@gateway/tor-sasl/jb55) (Quit: jb55)
2021-05-19 15:16:21 <davean> HF exists to push thinggs forward
2021-05-19 15:16:28 jakalx joins (~jakalx@base.jakalx.net)
2021-05-19 15:16:29 <maerwald> There's a danger of adopting a top-down approach to get "things done"
2021-05-19 15:16:31 <merijn> kritzefitz: as in, for cross-compiling TH to ever make sense you need a way to define whether some TH is intended to be seen as "on the target arch" or "on the host arch" when compiling
2021-05-19 15:16:32 plutoniix joins (~q@node-ujl.pool-125-24.dynamic.totinternet.net)
2021-05-19 15:16:42 <merijn> davean: Agreed
2021-05-19 15:16:45 <davean> maerwald: Which is a nice reason to have seperation between h.o and HF!
2021-05-19 15:17:46 star_cloud joins (~star_clou@ec2-52-11-151-184.us-west-2.compute.amazonaws.com)
2021-05-19 15:17:48 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-05-19 15:18:10 <maerwald> I primarily see HF as a place where the right people are being connected. I know some members see it the same way
2021-05-19 15:18:18 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
2021-05-19 15:18:41 <davean> I mean thats a lot of the how
2021-05-19 15:19:02 × kapil_ quits (~kapil@2a01:4f9:c010:c9c3::1) (Quit: ZNC 1.7.5+deb4 - https://znc.in)
2021-05-19 15:20:10 <maerwald> The question is what happens if the board would make a decision that doesn't reflect the community opinion (if that's even possible to figure out)
2021-05-19 15:20:35 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.1)
2021-05-19 15:20:57 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)

All times are in UTC.