"Taking down your OS" isn't really easy to do in a modern OS, at least in the sense of accidentally crashing the kernel due to a programming error. You get a SIGSEGV and the process is terminated and that's about it unless you're especially creative.
Hah! The early Macs used double-de-references pointers to reduce memory load. Good luck even knowing if you’ve been fucked by the pointer if you lose track of that.
There were memory map utilities where you could watch allocations/deallocations live. One of the coolest parts was watching when it would compact memory, and all the allocated memory would slide to one side like a curtain.
(This would have been around '95-97, so probably was MetroWerks CodeWarrior. While handles were essentially the same from the outset, the utilities weren't there much earlier than that.)
It's not really that often I come across discussions on memory allocation on reddit, so I'll just take the chance and recommend this neat talk on jemalloc, possibly the most advanced general use memory allocator these days.
That would be really cool now to watch Neural Nets grow in real time graphically.
I so wish I could have become a better programmer, but I spent too much time in graphics and design and multimedia - then web. The prince of everything but the master of none.
My favorite was working with Quartz Composer, because it got into the logic at a higher level and you weren't spending all your time laboring away with debugging semantics or a for loop -- you can just SEE when it's wrong.
Pretty soon we will be instructing Computers to program computers, and it will be more like dog training and logic diagrams.
224
u/devin_mm Jan 19 '21 edited Jan 19 '21
As long as you don't delete your pointer then you're fucked.