Whole-known-network
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@film_girl" class="u-url mention">@<span>film_girl</span></a></span> @alexhcranz Thanks for the tip!</p>
<p>Via <span class="h-card" translate="no"><a href="https://threads.net/@alexhcranz/" class="u-url mention">@<span>alexhcranz</span></a></span> @cranz.bsky.social I’m trying out OpenVibe which is a combo cross-poster (a la Croissant) but also a centralized timeline (a la Tapestry) but a slightly different approach than either app. iOS and Android. I’m a fan so far. <a href="https://openvibe.social" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">openvibe.social</span><span class="invisible"></span></a></p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@film_girl" class="u-url mention">@<span>film_girl</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.social/@openvibe" class="u-url mention">@<span>openvibe</span></a></span> maybe they should just rename it to Adium 😜</p>
<p>Trying this out now! Love this idea!<br />From: <span class="h-card" translate="no"><a href="https://mastodon.social/@openvibe" class="u-url mention">@<span>openvibe</span></a></span> <br /><a href="https://mastodon.social/@openvibe/113403233930516186" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">mastodon.social/@openvibe/1134</span><span class="invisible">03233930516186</span></a></p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention">@<span>whitequark</span></a></span> That’s what makes it strange to process. Also, will we ever know if he was an outlier?</p>
<p><span class="h-card" translate="no"><a href="https://mastodon.social/@whitequark" class="u-url mention">@<span>whitequark</span></a></span> He's lucky he hadn't had LASIK eye correction surgery. Read a police report of a poor guy's eye popping open from deceleration in a collision.</p>
@cfbolz@mastodon.social @jandem@mastodon.social @mgaudet@discuss.systems @shriramk@mastodon.social @shu@mstdn.social I wonder, too, if it was also the weird mismatch of having an interpreter, originally written by people thinking in terms of method calls and stack frames; vs. a tracing JIT that ignored function-call boundaries but cared a lot about loop headers and happening to cross the path of another trace.
This is one of the things that makes the idea so delightful on day 1. I wonder how the team felt about it on day 721.
<p>as far as im concerned really theres only two types of desktop apps: xterm, or firefox. your task is to work out which one of the two your idea fits into</p>
@mgaudet@discuss.systems @cfbolz@mastodon.social @jandem@mastodon.social @shriramk@mastodon.social @shu@mstdn.social
Another theme was rigidity.
The big wager in a tracing JIT for a dynamic language is that the code is secretly typed, and thus running the code suffices to type the program. For JS, a wild language, with subclassing, duck typing, undefined and null, and exuberant practitioners, this was a bad bet. Our tracing JIT was too rigid. It could not back off and compile less aggressively when its assumptions were wrong.
The nature of tracing is that the user's code goes fast when you have correctly guessed the types of *everything* the trace touches. Lots of high-stakes bets.
Say a script had a function argument that might be a function, an array, an object, or a string (which was absurdly common in JS library design, at least then). The JIT would do several traces, one for each type. If there were multiple arguments/variables/fields like that, this would explode combinatorially. We would then give up and stop tracing that code. We never tried to mark variables/instructions as having lots of observed type variation and then have the tracing JIT emit runtime PICs when touching those values. I always wondered why we didn't do this. I'm sure wiser people than me thought of it. Perhaps even this would have taken too long to stabilize; you have to watch the user fall off too many performance cliffs first.