3 ms·
Sometimes true (e.g. the PDP-11 instruction set did influence C), but software can also influence hardware. Many early computers had very rudimentary subroutin
by DonaldFisk 9y ago
Sometimes true (e.g. the PDP-11 instruction set did influence C), but software can also influence hardware.
Many early computers had very rudimentary subroutine call mechanisms (e.g. the B-line of the Elliott 803), but this didn't prevent programmers from using functions which returned values, sometimes recursively.
Burroughs mainframes were designed to run Algol 60 (with a few additional instructions for use by COBOL programs), and Lisp Machines were designed to run Lisp. In these cases, the influence of the languages extended to the entire instruction set. This is a better approach, as it's easier to experiment with language design than it is with hardware design.
- vitus 9y ago> software can also influence hardware This happens more often than you'd think. Intel (and later, AMD) added AES primitives to their instruction set to speed up encryption. VT-x (and the AMD equivalent) were both designed to improve the performance of virtualization. Outside of the realm of CPUs, the use of FPGAs -> ASICs for accelerating bitcoin hashing certainly wouldn't have existed if not for the software. Hardware support for CUDA / OpenCL accelerated existing parallel workloads. > This is a better approach, as it's easier to experiment with language design than it is with hardware design. FPGAs certainly lower the barrier to experimenting with hardware design, although yes, it's probably still higher than language modifications.