I wanted to address this comment from the other thread:
storing the same 4 KB program in Flash memory would require approximately 4 × 1024 × 4 ms = 16.4 s.
This is obviously false, since the "upload" process to an Arduino, even with sketches longer than 4k, is seldom as long as 16.4s...
The discrepancy is that flash is written in "pages", that are 128 bytes on an ATmega328p, so the actual time is more like `4 * 1024/128 * 4ms = 0.128s.
Since we seem to be having pointless arguments over terminology, we can claim that having to do that page buffering interferes with the desired "RAM Properties", and counter-argue that there has been and can be a lot of complexity in between an x86 CPU and the actual memory chips (caches, pagers, fast page mode, burst handling, Refresh, RAS/CASE multiplexing, bus width != read width, etc etc.)
The number of short abbreviations for different types of memory seems wildly insufficient to cover all the types of memory that now exist. In the Arduino world, if a board is specified to have a "certain amount of RAM", that means "volatile, byte addressable read/write memory that explicitly does not include Flash or EEPROM. (Whether or not you can run code from it.) The Microchip datasheets consistently refer to chips having "Flash, SRAM, and EEPROM" as distinct.
I guess we could take an idea from the memory protection people and refer to memory by it's access capabilities: RX for "Read/Execute" Flash and "RW" for "Read/Write Data-only" SRAM. Maybe add in a "V" for Volatile, and "P" for some sort of paging requirement. But it'd still be complicated (is M328 flash RX, or just X?)
And what do we think about the SPI RAM chips showing up on ESP and Pico boards (or the SPI Flash chips, for that matter.)
But even supposing that the m328 data memory can't hold executable machine instructions, does that make it unusable as a "computer"? Can't you just think of the main CPU as "microcode", with some other "instruction set" that can be stored in RAM (Forth? PCode? BASIC source code?) 2k of memory is pretty awful, but that's what you had an a Sinclair ZX80 or a Kim-1. Even less on some of the other early hobbyist "computers."
So yeah, I'm firmly in the "of course an Uno is a computer. Depending on what you want, it may be a pretty awful computer, but that's a different question!"
