2024/05/21

Newest at the top

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)
2024-05-21 18:39:17 +0200noctux(~noctux@user/noctux) (Ping timeout: 272 seconds)
2024-05-21 18:37:25 +0200 <dolio> Not sure about, like, matricies, though
2024-05-21 18:36:47 +0200 <dolio> Generalizing to magnitude and direction doesn't seem that weird.
2024-05-21 18:35:40 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 260 seconds)
2024-05-21 18:32:32 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2024-05-21 18:29:39 +0200 <c_wraith> Like, the meaning of signum is utterly baffling for non-scalar numbers. You can make sure (x == abs x * signum x) is true, but why you'd ever use expect signum to mean anything for a non-scalar is an interesting question
2024-05-21 18:29:02 +0200 <int-e> just use abs x | x == 0 = 0 | otherwise = 1; signum x = x
2024-05-21 18:27:32 +0200 <c_wraith> abs and signum are the weird ones...
2024-05-21 18:24:13 +0200euleritian(~euleritia@dynamic-176-006-196-082.176.6.pool.telefonica.de)
2024-05-21 18:23:59 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
2024-05-21 18:17:48 +0200danse-nr3(~danse-nr3@151.43.113.96)
2024-05-21 18:16:47 +0200danse-nr3(~danse-nr3@151.35.136.250) (Ping timeout: 264 seconds)
2024-05-21 18:11:17 +0200CiaoSen(~Jura@2a05:5800:2b2:8e00:e6b9:7aff:fe80:3d03) (Ping timeout: 240 seconds)
2024-05-21 18:08:10 +0200titibandit(~user@user/titibandit)
2024-05-21 18:08:08 +0200y04nn(~username@2a03:1b20:8:f011::e10d)
2024-05-21 18:05:23 +0200infinity0(~infinity0@pwned.gg)
2024-05-21 18:03:16 +0200infinity0(~infinity0@pwned.gg) (Remote host closed the connection)
2024-05-21 17:56:56 +0200machinedgod(~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 260 seconds)
2024-05-21 17:55:10 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-05-21 17:54:51 +0200euleritian(~euleritia@dynamic-176-006-196-082.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-05-21 17:52:36 +0200Midjak(~MarciZ@82.66.147.146)
2024-05-21 17:45:21 +0200sawilagar(~sawilagar@user/sawilagar) (Quit: Leaving)
2024-05-21 17:40:18 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-05-21 17:35:16 +0200ubert(~Thunderbi@2a02:8109:ab8a:5a00:8905:bde4:99bc:a84f)
2024-05-21 17:34:56 +0200ubert(~Thunderbi@2a02:8109:ab8a:5a00:f77c:428b:229c:4616) (Remote host closed the connection)
2024-05-21 17:34:24 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 256 seconds)
2024-05-21 17:33:36 +0200ocra8(ocra8@user/ocra8)
2024-05-21 17:15:35 +0200acidjnk_new(~acidjnk@p200300d6e714dc192d105e993ca958d7.dip0.t-ipconnect.de)
2024-05-21 17:15:09 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-05-21 17:11:44 +0200mei(~mei@user/mei)
2024-05-21 17:09:18 +0200mei(~mei@user/mei) (Remote host closed the connection)
2024-05-21 17:09:07 +0200d34df00d(~d34df00d@2600:1702:4f1b:7c10::43)
2024-05-21 16:58:47 +0200agent314(~quassel@162.219.176.19) (Ping timeout: 264 seconds)