I had to think about it, but are you saying all the stars are animated to rotate, but the amount they move between frames is too small for you to see unless it's in your fovea?
They're just so small that you only see shapeless blur outside your fovea. If you applied an artificial blur filter to the whole screen, you'd also not see any movement anymore because all high-resolution detail is removed. A 3x3 box blur will erase differences between
There is also the idea that innovation is hard in established organisations. William Langewiesche's book "fly by wire" highlights some of the improvements that Boeing no dought knew about, but hadn't got round to. They were busy playing catch-up.
Of course real scientists don't publish. Okay I'm trolling but I know that the science published by Google et al has been thoroughly screened for commercial advantage before we see it. Try doing a litt search on hypersonics and you can see where the Russians _stop_ publishing.
What is interesting to me is the blank spaces for various naming systems. Ornithologist's view (Ridgway) versus Japanese traditional. Reminds me of the discussion of the blue/green distinction by Kay etc al.
The paper "C is not a low level language as we are not programming a PDP11" (something like that anyway) made a good point that C is only fast on a multi core machine because c fans work hard at keeping the laurel. What does a low level language look like when you have 8 cores? Conversely what would a high level language look like for (low level) verilog and FPGAs?
The referred paper C isn't a low level language - your computer isn't a fast PDP11[1] was not really addressing multicore parallelism. It was discussing instruction-level parallelism, which is done within an execution thread and is achieved by speculative and out-of-order execution of instructions that do not have sequential dependency on previous instructions.
The article does go into cache coherency which is very much intertwined with multicore parallellism:
> The cache coherency protocol is one of the hardest parts of a modern CPU to make both fast and correct. Most of the complexity involved comes from supporting a language in which data is expected to be both shared and mutable as a matter of course.
I feel like we live in a world where everyone works very hard to pretend that C is our best low-level language, when in reality an APL-like purely functional array language would be a better candidate.
Fair enough, though I still think even there the headspace of the author was more in line with proving single-threaded C virtual machine model does not map to how CPU actually behaves, not that a natively parallel language would be best suited to model a contemporary multicore or data parallel processor.
There will also be the visionfive 2 lite in (hopefully) a moment for more risc-v capabilities. I am excited about it. Haven't looked too much into it, but what I've heard is that the visionfive 2 is not too bad. Lacks a few drivers or performance in them. Will see. I am also curious how easy it can be used for some OS dev.
And if someone wants to get fancy and do some HW-SW-Codesign with risc-v and FPGAs, then there is the PolarFireSoC.
A lot cheaper than AMD/Xilinx products and okay-ish to use. Their dev enviroment feels kinda outdated, but at least it's snappy. Also the documentation feels kinda sparse, but most stuff is documented __somewhere__ - you just gotta find it.
The Microchip "Icicle" came out in late 2020 with the largest FPGA in the range, made using pre-production chips. It was several years more before you could buy the chips themselves. Digikey says it's no longer manufactured and they're just running down stocks.
The BeagleV "Fire" is much cheaper ($150) and uses one of the smallest FPGA parts in the range.
GOWIN also has RISC-V FPGA SoCs (Arora V GW5AST series)
I've started learning Go as my next language. I really like it. I'm a JS dev by trade that knows Python and I've done some hobby work in C/C++. Go just really seems like a perfect middle ground--garbage collected, but static types; easy to read, performant, none of the Java inheritance and verbosity headaches. It took adjustment but i like assigning functions to structs and working with pointers.
And frankly having been working exclusively with reactive frameworks the last 3 years, this looks pretty exciting to me.
I have some low-level systems dev friends that have complaints about Go but they don't resonate with me. Coming from higher level languages, it's been fun. So like we're both missing something, but if you're like me, it's nothing worth worrying about. Single static binaries basically win me over on their own lol.
reply