Post Ad5JY0PciDCECVTo0m by halva@wetdry.world
 (DIR) More posts by halva@wetdry.world
 (DIR) Post #Ad5DU6AYlZ85AlBgqe by lispi314@udongein.xyz
       2023-12-22T23:37:44.285955Z
       
       0 likes, 0 repeats
       
       @chjara A lot of Object-Oriented Operating Systems (including but not limited to Lisp Machines) had very sensible build systems (with optional compilation in many cases).
       
 (DIR) Post #Ad5DU75zK34C2s3YMS by hayley@social.applied-langua.ge
       2023-12-22T23:39:20.410461Z
       
       0 likes, 0 repeats
       
       @lispi314 @chjara https://gbracha.blogspot.com/2020/01/the-build-is-always-broken.html
       
 (DIR) Post #Ad5EfMwSqWE2KcX56W by lispi314@udongein.xyz
       2023-12-22T23:49:50.398104Z
       
       1 likes, 0 repeats
       
       @hayley @chjara Being able to run everything from source transparently also helps to address the trust factor in program distribution, but eliding obscured components entirely."Reproducible builds" carry the implicit assumption a build is necessary in the first place.
       
 (DIR) Post #Ad5JY0PciDCECVTo0m by halva@wetdry.world
       2023-12-22T23:37:53Z
       
       1 likes, 0 repeats
       
       @chjara what, do you not like C "torment nexus begins with a CI pipeline" Make?
       
 (DIR) Post #Ad5JceDAgKMOnHrvaS by newt@stereophonic.space
       2023-12-23T00:47:47.703752Z
       
       0 likes, 0 repeats
       
       @chjara @SuperDicq I actually know a bunch. They all are on my kill list.
       
 (DIR) Post #Ad5qFMwK1piR3NUlxQ by wizzwizz4@fosstodon.org
       2023-12-22T23:28:56Z
       
       1 likes, 0 repeats
       
       @chjara Just get the computer (job title) to do it. Smh.
       
 (DIR) Post #Ad65viLELWvqu9nOwC by dr2chase@ohai.social
       2023-12-23T02:18:26Z
       
       0 likes, 0 repeats
       
       @niconiconi @chjara @lispi314 Y'all trust dynamic compilation?  Speaking as someone who has worked on both, why would you?
       
 (DIR) Post #Ad65vj4xbVVnBzBvDU by lispi314@udongein.xyz
       2023-12-23T02:24:40.608975Z
       
       0 likes, 0 repeats
       
       @dr2chase @chjara @niconiconi If it's broken, it'll become obvious very quickly.And if the source of truth is always assumed to be considered the source, disabling the compilation optimization (it is nothing but an optimization to compile), fixing the source for the compiler and then re-enabling the feature would also enable recovery of functionality.Most modern systems do not support doing that. Lisp Machines did. You could even run your drivers fully interpreted, at a significant performance tradeoff.Why would you trust a system that traps you in a largely unfixable static world you cannot fix from itself nor practically introspect (binary analysis & reverse-engineering isn't practical, it's just possible when lacking better alternatives) if something goes wrong?
       
 (DIR) Post #Ad65vk8BgzggSHi0sy by dr2chase@ohai.social
       2023-12-23T02:41:23Z
       
       0 likes, 0 repeats
       
       @lispi314 @chjara @niconiconi I am speaking purely for myself and my experience, but I have debugged both kinds of system, and in dynamic systems the bugs are not necessarily obvious quickly, and not necessarily repeatable, because they depend on where the profile falls.  The last Hotspot bugs I worked on, I knew the theoretical cause of both bugs (bad type merge for arrays of interface; bad overlap of lock optimizations) yet could not find them in the compiler (and I left to work on Go). /
       
 (DIR) Post #Ad65vl8vvhsVat47ge by dr2chase@ohai.social
       2023-12-23T02:43:25Z
       
       0 likes, 0 repeats
       
       @lispi314 @chjara @niconiconi static code at least sits still, and you can run it and rerun it and binary search it.  The Go compiler in particular has delightfully reproducible output, and we've developed tools that use binary search where we can rely on nothing gratuitously changing while we flip bug triggers on and off.
       
 (DIR) Post #Ad65vm2wZSgIObGqzQ by hayley@social.applied-langua.ge
       2023-12-23T09:49:23.206796Z
       
       0 likes, 0 repeats
       
       @dr2chase @lispi314 @chjara @niconiconi dump a broken profile and investigate that? Jikes has a pseudo-adaptive mode which AIUI does similar, though I've only seen it for making benchmarks more stable.
       
 (DIR) Post #Ad65vqtCZ6rLPpke00 by dr2chase@ohai.social
       2023-12-23T02:48:46Z
       
       0 likes, 0 repeats
       
       @lispi314 @chjara @niconiconi best dynamic compilation bug I know of is when Hotspot would swap in the Intel x87 instruction for sin to replace Math.sin, and depending on when (much sooner on a multiprocessor) your sin(K*PI) results would go (very) bad.  "I (multiprocessor me) see this, do (uniprocessor colleague) see this?"  "No, works fine for me...."