🇺🇦 Ingvar Stepanyan
banner
rreverser.com
🇺🇦 Ingvar Stepanyan
@rreverser.com
2.8K followers 880 following 3K posts
Sr. Principal Engineer at Cloudflare by day, WebAssembly consultant by night. You might also know me from my work on OSS tools and libraries (JS / Wasm / Rust) or Wasm DevRel at Google Chrome 📝 https://rreverser.com/ 📷 https://instagram.com/rreverser
Posts Media Videos Starter Packs
Pinned
> walking through marrakech at night
> some guy comes up and asks if I want hash
> I ask if it's a cryptographic hash
> he doesn't understand
> I show him the NIST definition
> he laughs and says "it's a good hash"
[...]
> it's not a cryptographic hash
Does it run on AWS Graviton?
Ohh how much does that add on cost per month?
That's a forest at this point.
I'm thinking of it similarly to Wasm imports where only stuff that you expose to the executor is stuff it can use to interact with the outer world. Which is what the linked proposal does as well, just with a bit more boilerplate maybe?
Like imagine I give it `{ availableAPIs: [React, Intl, myCustomLib] }` and, based on available info in the model + method names in the libs, it guesses which methods to call when you ask it to do something.
Hmm. Could be neat if it was possible to just give it an arbitrary JS object (like those coming from library import) and let it traverse the method names. Not quite a proper description, but could make the integration with wider JS ecosystem a breeze.
Security specialists don't want you to know this one weird trick.
Adapted for modern times.

(you wouldn't believe how many tweaks it took me to convince LLM to just add two numbers and return the result)
YT music only does that without the subscription though, with premium you can disable videos once and forget about them. Have been using it as a basic music player for years now and quite happy.
So glad Google is prioritising images above the fold. So useful.
Dammit I wasn't supposed to get nerd-sniped.
Forgot to attach benchmark result.
Something that does work a bit faster is something like this - 35% improvement on a chain of 100 std::iter::once elements, but of course, unlike stdlib, this won't handle double-ended iteration.
Reposted by 🇺🇦 Ingvar Stepanyan
answer: it's rust! by a lot. on my machine, haskell took ~8.8μs, ocaml took ~10μs and rust needed a whole *108μs*.

the interesting question is *why* rust is so slow though and it has a really nice, simple answer: with rust's iterators, this code is quadratic.
pop quiz: you are consing 1000 elements to an iterator. which language's iterator implementation is the *SLOWEST*?

1️⃣ <a href="https://poll.blue/p/HGXg5v/1" class="hover:underline text-blue-600 dark:text-sky-400 no-card-link" target="_blank" rel="noopener" data-link="bsky">Rust (with Iterator::chain)
2️⃣ <a href="https://poll.blue/p/HGXg5v/2" class="hover:underline text-blue-600 dark:text-sky-400 no-card-link" target="_blank" rel="noopener" data-link="bsky">Haskell (lists)
3️⃣ <a href="https://poll.blue/p/HGXg5v/3" class="hover:underline text-blue-600 dark:text-sky-400 no-card-link" target="_blank" rel="noopener" data-link="bsky">OCaml (Seq.t)

📊 Show results
Reposted by 🇺🇦 Ingvar Stepanyan
so is America going back to the monarchy because we are predominantly English-speaking
🥴🤡Trump envoy Witkoff pressed the Ukrainian delegation on handing over Donetsk region to Russia during a meeting on Friday, - WP.

He used the Kremlin's key argument that the region is predominantly Russian-speaking.
Sometimes "referenced by" section of a foundational paper is pure gold.

Tomato quality assessment, star maps, battery defects, ... - you'd think all of these topics can't possibly have anything in common, and yet.
No, only doing astrophotography as a hobby.
Impostor syndrome really be like: "hey, don't you feel bad that some of this professional astronomer's *raw* images look better than the ones you've spent hours postprocessing?"

Why, yes, now I do.