2024/05/21

Newest at the top

2024-05-21 19:17:10 +0200 <EvanR> too real
2024-05-21 19:15:32 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-05-21 19:12:55 +0200euleritian(~euleritia@dynamic-176-006-196-082.176.6.pool.telefonica.de)
2024-05-21 19:12:53 +0200dtman34(~dtman34@c-75-72-163-222.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2024-05-21 19:12:20 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2024-05-21 19:12:15 +0200 <Rembane> Proof by flex!
2024-05-21 19:11:37 +0200chele(~chele@user/chele) (Remote host closed the connection)
2024-05-21 19:11:29 +0200 <systemfault> I bench press more so I'm right?
2024-05-21 19:10:09 +0200 <ncf> proof by intimidation
2024-05-21 19:09:39 +0200 <mauke> I use an old technique called "proof by assertion"
2024-05-21 19:09:25 +0200 <EvanR> argument of correctness, ethos pathos logos
2024-05-21 19:08:01 +0200 <ncf> that's the statement not the proof
2024-05-21 19:07:04 +0200 <EvanR> classically valid
2024-05-21 19:06:42 +0200mei(~mei@user/mei)
2024-05-21 19:05:31 +0200 <mauke> 'willHalt x' will never return True for any action x that doesn't halt
2024-05-21 19:05:21 +0200 <mauke> proof of correctness: 'willHalt x' will return True for all actions x that halt
2024-05-21 19:05:06 +0200y04nn(~username@2a03:1b20:8:f011::e10d) (Ping timeout: 255 seconds)
2024-05-21 19:04:16 +0200mei(~mei@user/mei) (Remote host closed the connection)
2024-05-21 19:04:01 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-05-21 19:02:04 +0200 <lambdabot> IO Bool
2024-05-21 19:02:02 +0200 <EvanR> :t fix willHalt
2024-05-21 19:01:57 +0200danse-nr3(~danse-nr3@151.43.113.96) (Ping timeout: 255 seconds)
2024-05-21 19:00:23 +0200 <c_wraith> now.. willHaltUnsafely a = True <$ unsafeInterleaveIO a
2024-05-21 18:59:37 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-05-21 18:58:30 +0200 <lambdabot> <IO Bool>
2024-05-21 18:58:29 +0200 <mauke> > willHalt (pure ())
2024-05-21 18:58:18 +0200 <lambdabot> Defined.
2024-05-21 18:58:17 +0200 <mauke> @let willHalt :: IO a -> IO Bool; willHalt = (True <$)
2024-05-21 18:56:07 +0200lxsameer(~lxsameer@Serene/lxsameer) (Quit: WeeChat 4.2.1)
2024-05-21 18:54:45 +0200 <lxsameer> thank you
2024-05-21 18:54:34 +0200yin(~yin@user/zero) (Quit: Lost terminal)
2024-05-21 18:54:11 +0200ubert(~Thunderbi@2a02:8109:ab8a:5a00:8905:bde4:99bc:a84f) (Remote host closed the connection)
2024-05-21 18:52:59 +0200Guest62(~Guest54@1.240.117.251)
2024-05-21 18:49:32 +0200 <kuribas> d34df00d: https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/compiler/generated-code
2024-05-21 18:49:07 +0200 <lxsameer> mauke: cheers
2024-05-21 18:48:26 +0200 <mauke> not sure how helpful/workable that would be
2024-05-21 18:48:18 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-05-21 18:48:18 +0200 <mauke> you could try writing code that passes unboxed values around explicitly
2024-05-21 18:47:33 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-05-21 18:46:56 +0200 <kuribas> For example, all functions are called using continuation passing style.
2024-05-21 18:46:52 +0200 <mauke> https://www.stephendiehl.com/posts/ghc_01.html ?
2024-05-21 18:46:03 +0200 <kuribas> d34df00d: haskell assembly doesn't look like imperative assembly
2024-05-21 18:44:38 +0200 <lxsameer> hey folks, I'm looking for some reading material on how the haskell compiler is designed and its internal architecture. Any suggestion?
2024-05-21 18:44:02 +0200manwithluck(manwithluc@gateway/vpn/protonvpn/manwithluck)
2024-05-21 18:43:51 +0200 <d34df00d> Is there any decent way to get rid of that boilerplate (or at least clearly separate it out)?
2024-05-21 18:43:31 +0200 <EvanR> matrices have a positive negative or zero determinant
2024-05-21 18:43:26 +0200 <d34df00d> Got a fairly ill-posed question here, but anyway. I'm looking at the disassembly of ghc to see how certain constructs get optimized, and there's a lot of boilerplate apparently related to laziness even if I do -XStrict (which makes sense, since the arguments aren't necessarily strict at the invocation site).
2024-05-21 18:40:16 +0200noctux(~noctux@user/noctux)
2024-05-21 18:39:38 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-05-21 18:39:19 +0200euleritian(~euleritia@dynamic-176-006-196-082.176.6.pool.telefonica.de) (Read error: Connection reset by peer)