5 ms·
One aspect I don't see mentioned very often is that the FP model of computation is completely different from the model of the underlying hardware, which makes i
by bobcostas55 5y ago
One aspect I don't see mentioned very often is that the FP model of computation is completely different from the model of the underlying hardware, which makes it very difficult to reason about things (and often involves putting blind hope in the compiler).
- jhgb 5y ago> is completely different from the model of the underlying hardware That's kind of the point of programming languages, otherwise you'd be writing 100% assembly.
- bobcostas55 5y agoI don't really agree, the point is to provide high-level abstractions that hide a bunch of complexity. But even in a high-level non-functional language, there's not a lot of friction in terms of the model of the language vs the hardware. An array of ints in java is basically 1:1 to the underlying continuous, mutable block of memory.
- jhgb 5y ago> the point is to provide high-level abstractions that hide a bunch of complexity And these abstractions are not hiding the model of the machine? For example the machine has a small set of fixed-size registers, but your language probably has an unlimited amount of arbitrarily sized, lexically-scoped local variables.