Yes, you can get very close to that API with this extension + existing Vulkan extensions. The main difference is that you still kind of need opaque buffer and texture objects instead of raw pointers, but you can get GPU pointers for them and still work with those. In theory I think you could do the malloc API design there but it's fairly unintuitive in Vulkan and you'd still need VkBuffers internally even if you didn't expose them in a wrapper layer.
I've got a (not yet ready for public) wrapper on Vulkan that mostly matches this blog post, and so far it's been a really lovely way to do graphics programming.
The main thing that's not possible at all on top of Vulkan is his signals API, which I would enjoy seeing - it could be done if timeline semaphores could be waited on/signalled inside a command buffer, rather than just on submission boundaries. Not sure how feasible that is with existing hardware though.
It's a baby-step in this direction, e.g. from Seb's article:
> Vulkan’s VK_EXT_descriptor_buffer (https://www.khronos.org/blog/vk-ext-descriptor-buffer) extension (2022) is similar to my proposal, allowing direct CPU and GPU write. It is supported by most vendors, but unfortunately is not part of the Vulkan 1.4 core spec.
The new `VK_EXT_descriptor_heap` extension described in the Khronos post is a replacement for `VK_EXT_descriptor_buffer` which fixes some problems but otherwise is the same basic idea (e.g. "descriptors are just memory").
Rayleigh scattering is elastic (only the direction changes), whereas Raman scattering is inelastic (energy, that is color changes in addition to direction) scattering.
If you want to make an argument for something else being the representations of boolean variables than 0 for false and 1 for true, one could make the case for true being all bits set.
That would make it slightly easier to do things like memset()'ing a vector of boolean, or a struct containing a boolean like in this case. Backwards compatibility with pre-_Bool boolean expressions in C99 probably made that a non starter in any case.
A 1-bit integer can be interpreted as either a signed integer or as an unsigned integer, exactly like an integer number of any other size.
Converting a 1-bit integer to a byte-sized or word-sized integer, by using the same extension rules as for any other size (i.e. by using either sign extension or zero extension), yields as the converted value for "true" either "1" for the unsigned integer interpretation or the value with all ones (i.e. "-1") for the signed integer interpretation.
So you could have "unsigned bool" and "signed bool", exactly like you have "unsigned char" and "signed char", to choose between the 2 possible representations.
The (minor, but still) optimization that is enabled by assuming _Bool can contain only 1 or 0 is that negating a boolean value can be with x^1, without requiring a conditional.
That being said, for just testing the value, using the zero/nonzero test that every (?) cpu has is enough; I'm not sure what is achieved here with this more complex test.
In the sense of a farmer being more likely to have access to a local supply of firewood, and that tractors are probably more used for longer stretches at a time than running down to the grocery store, sure.
Historically, they weren't that common, as large-scale use of wood gas was mostly a thing in Europe during WWII, and during that period continental European agriculture was still mostly horse-driven. After WWII when agricultural mechanization really picked up, fuel was again available so there was no big motivation to put up with the disadvantages of wood gasifiers.
If I had to make I guess, I'd go with the dogs recognizing the smell. Dogs apparently don't have terribly good vision, but as I'm sure we all know, a very good sense of smell.
dogs, the smart ones, have fantastic memories, a perfect sense of direction, and a basic faith in thereown abilities.
that feral dogs, though must be very social with humans, have learned the subway is out on the edge, it's not that far, my moms airidales would go walkabout, shoulder to shoulder, and just sit outside doors they wanted to go through, places they had zero
business to be, and be let in, and later out again, got used to bieng driven home by various volenteers and the police, never taken to the pound.
taught two dogs to hitch hike, by raising a paw, people would stop, let me in as an afterthought......in the back, dog up front.
I recall there's one factory on the planet still producing TEL, so once they decide it's no longer profitable it's over.
Aviation gasoline is probably the one market that still keeps it afloat, when/if piston aviation switches over the remaining market is small and insignificant.
reply