Whole-known-network
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention">@<span>whitequark</span></a></span> <span class="h-card" translate="no"><a href="https://pony.social/@thephd" class="u-url mention">@<span>thephd</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@mcc" class="u-url mention">@<span>mcc</span></a></span> The crunching you just heard is the phrase 'autoconf [...] look[s] like a dream in comparison' and it caused me to clench teeth so hard they're all gone now</p>
<p><span class="h-card" translate="no"><a href="https://hachyderm.io/@natik" class="u-url mention">@<span>natik</span></a></span> yeah. I mean, I can handle disagreement, and I can work towards things I wouldn't personally choose, but if at some point I realize the choices being made are not going, in the long run, to benefit *anybody* involved, I don't have a lot of faith in the ability of leaders to... lead</p>
<p><span class="h-card" translate="no"><a href="https://hachyderm.io/@natik" class="u-url mention">@<span>natik</span></a></span> well, yeah. what you need to have instead of promises is actual power. I quit over the leadership doing something I disagreed with, because the opportunity of using my labor is power: it's difficult to find someone like me once over. but really that's not enough because it sucks when your only real option is the nuclear one</p><p>this is why I only plan to work for myself or for a cooperative, at least so long as I aim to give a shit about what I do</p>
<p><span class="h-card" translate="no"><a href="https://infosec.exchange/@0xabad1dea" class="u-url mention">@<span>0xabad1dea</span></a></span> this is one way to see it!</p><p>the way i see it is that forgiving is something i do for myself, whenever i get tired of carrying the weight of having been hurt</p><p>the other party's desires do not really come into it very much</p>
<p><span class="h-card" translate="no"><a href="https://pony.social/@thephd" class="u-url mention">@<span>thephd</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@mcc" class="u-url mention">@<span>mcc</span></a></span> oh it's 100% fucked in ways considerably worse than most of what we have in software</p><p>you're right in that code reuse is fairly limited, but that's not a good thing! it's a consequence of the tooling being so astonishingly painful to use that autoconf and pkg-config look like a dream in comparison</p><p>if you write Amaranth code you reuse code by sharing a completely normal Python package. this is considered revolutionary</p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>whitequark</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@mcc" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>mcc</span></a></span> Well it's unfortunate to hear shit is fucked down over there too; I was mostly imagining code wasn't shared as much over there and that things were more device-specific so it mattered less.</p>
<p><span class="h-card" translate="no"><a href="https://pony.social/@thephd" class="u-url mention">@<span>thephd</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@mcc" class="u-url mention">@<span>mcc</span></a></span> Amaranth is a better language than Verilog because it is a _lower_ level language, without various kinds of poorly defined "inference" that in practice require the use of a "linter" to be sure of any semantics at all</p><p>it stays close to the netlist, while SystemVerilog doesn't even bother to define what the synthesizable (i.e. translatable to hardware) subset even _is_, every vendor decides on their own!!</p>
<p><span class="h-card" translate="no"><a href="https://pony.social/@thephd" class="u-url mention">@<span>thephd</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@mcc" class="u-url mention">@<span>mcc</span></a></span> as a hardware designer and HDL designer, programming languages that *are* "VHDL or some shit" should absolutely be about communciating semantics with well-defined boundaries and predictable outcomes, *even more so than software languages*</p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@mcc" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>mcc</span></a></span> In general, though: you're 1000% correct. Compilers and programming languages that aren't VHDL or some shit should be about communicating semantics, with well-defined boundaries and predictable outcomes. That makes it easy to optimize for, which is something Rust does really well in ways C and C++ and Zig and Odin and etc. completely flub the ball on.</p><p>There's some other factors too but that's the core of it.</p>