3 ms·
How so?
by hayley-patton 4y ago
How so?
- cratermoon 4y agoI would have thought it would be intuitively obvious to the most casual observer, but for the sake of those not burdened with the realization that "full stack" really encompasses everything from the quantum behavior of charged particles in a electric field to the world and the people around the software: binary logic gates are a very low-level hardware devices implemented in MOSFETs. They are the tiny building blocks of computational power. To reify these physical devices as abstractions at the level of a language designed to abstract concepts such as the y combinator of lambda calculus, seeing binary logic gates is clearly a leak from lower levels.
- hayley-patton 4y agoPerhaps so, and I've cracked a similar joke (where's the hardware and compiler writers?) but no one brought up a "full stack", so it wasn't obvious what the leaky abstraction was.
- tsimionescu 4y agoCommon Lisp isn't strictly a high-level language, it has always been meant as a practical, multi-paradigm language. After all `car' and `cdr' are the names of two registers of a particular LISP machine. Also, bitwise operations are not exclusively an implementation detail - they may well be the point of your computation (as in many programs written to control devices in an embedded system). Not to mention, the Y combinator is itself a low-level detail of how certain high-level functions (recursive functions) can be expressed in the formalism of the lambda calculus.
- lispm 4y agoGiven that on a Lisp Machine (or in a Lisp OS like Mezzano https://github.com/froggey/Mezzano https://github.com/froggey/Mezzano ), the language talks natively to low-level devices (Graphics, SCSI, Bus, Ethernet, ... and other peripherals), it is expected that it has to deal with bits, too.