Same with truffle mayo or truffle-based products. [1]
People who grew up on the artificial flavor prefer it over the real one. I have quite a few in my circle of friends.
You go to an Italian restaurant and you get plain pasta, panned in butter or olive oil and then someone comes with a real truffle and grates it in front you of over your dish until you tell them to stop. You pay for that amount.
Unless you go to a restaurant with a great reputation or some Michelin star venue, that is the only way to be sure you're eating real truffles. The dish has no truffle-aroma itself and the truffle is grated while you watch.
Assuming ofc (and probably true for most people): your palate is not well acquainted to the taste of the real thing enough to tell it apart from the many fakes/substitutes.
And both are wrong since the values would have to be in a linear color space for for the compositing math to make sense. But in some non-linear space to be useful when mapped to 0..255 (e.g non-linear sRGB).
Which happens right after the Porter-Duff Over operator above -- a smoking gun. Which one is it gonna be?
I.e. the display transform is omitted from this and the math involved with the latter makes your whole argument moot.
It can't be expressed well enough with bitshifts to keep your purported 10x speedup anyway (and which I strongly doubt btw).
And lastly: in a software renderer that stuff is usually <0.01% of the compute in the absolut worst case.
P.S.: I'm speaking from 30 years of experience with software rendering in the context of VFX.
From what I gather these are built-in types the compiler knows?
'i32', not 'I32' but 'List' not 'list'? In Rust the case is clear cut: built-ins that the compiler 'knows' are lowercase, types expressed in Rust itself are PascalCase.
Roto seems to mix this?
Reads like Rust but then "differs subtley" where it (seemingly?) does not matter at all.
What is the rationale? I'm not complaining, Roto looks great. I'm considering swapping my Koto integration in my project out for this. :)
I'm just genuinely curious. From the outside the above smell like "just because" decisions.
I would add that Rust also has naming guidelines and sticking to them removes or at least minimizes the occurrence of another common topic of discussions on PRs/reviews.
In the article, if you were to mention & follow them GetUser() in Go becomes user() in Rust[1], not get_user().
This matters a lot. And yeah, it seems this supports neither and it is unclear if operations happen in linear light at a bit depth of at more that 8bit/channel.
If they don't, most of them will produce subtly wrong results.
Two types of spaghetti (regular No. 5 and gluten-free) produced by the Barilla company (Italy) were purchased in a supermarket."
Are you kidding me? You did a study and tested /one/ kind of gluten-free pasta?
There are so many different kinds from different companies. One type from Barilla is nowhere near representative to draw a useful conclusion.
Especially as unlike many other gluten-free pasta products it lacks an important binding agent.[1]
As someone with a gluten-allergic partner I regularly make pancakes and bake bread with (Italian!) rice-based flour.
And they are difficult to distinguish from the flour based ones, in taste, texture, fluffiness and and structural integrity.
The secret to this is xantham gum. It acts as a binding agent in gluten-free baking, providing the elasticity and stickiness that gluten typically offers. It helps to hold ingredients together and improve the texture.
I learned this when eating excellent gluten-free pinza, in a small place in Catania, Sicily, whose owner has celiac disease.
Ah yes, as far as pasta goes there is also research about this ofc[2]
When I lived in Adelaide, Australia 2006 or 2007, flexible-neck LED lamps that you plugged into an USB port to have light on your keyboard (backlit keyboards were not the norm on laptops) were a novelty item.
People simply didn't /know/ about them/that they existed at all.
I went to a computer/electronics shop in town and asked for them.
The guy told me: "We don't stock them because people don't ask for them."
Like the author of the article, I write C/C++ since 30 years. Mostly close-to-the-metal code around computer graphics. Actually: wrote.
After switching to Rust five years ago I agree with all the Rust hipsters as far as disliking those languages go.
I just don't talk about it a lot. If every Rust person I know that was a C/C++ developer before was as outspoken about what they think of the latter, you'd see that these people are a majority.
We're just old hands who like to use stuff that works. And most of us don't get attached to code or languages.
It's also difficult to admint to yourself that you were never in command of a language as far as UB/other footguns go, as much as you thought. Or ever, for your enire career. For me that self-realization about C/C++ (enabled by Rust) was a turning point.
Lately you can read about the dichotomy re. AI use.
I.e. developers who define them themselves through what they build/ideas are embracing LLMs; for what they can do.
I.e.: I am what I build.
Whereas developers for whom software engineering is a craft that defines them hate them openly.
I.e.: I am how I build.
Now this seems to suggest to me that maybe Rust developers who openly hate C/C++ squarely belong to the latter group whereas the silent ones belong to the former. It's builders vs programmers. Just different world views.
Also you can not dislike something and still not speak about it. Because you decided to not care.
That is the most important feature this would make me use this over the good old wooden puppet, which is small (10cm). I.e. it travels with me with my drawing utensils.
I guess I am asking: what exactly is the value proposition?
Yes, just like early cars allowed mediocre horse riders to get from A to B with dignity.
Or like my Japanese rice cooker allows a person like me, utterly shitty at preparing this, to eat some rice that is cooked to perfection.
Etc.