3 ms·
Interesting. My interpretation: when writing code for synchronous machines, you are immediately encouraged to construct things that have no notion of spatial l
by nicklaf 9y ago
Interesting.
My interpretation: when writing code for synchronous machines, you are immediately encouraged to construct things that have no notion of spatial locality. But what if programming tools encouraged being mindful of this? Very crudely, a programmer could simply look at a grid of FPGA components, so that program modules correspond to geographic regions on the grid. This is absurdly constricting, though-even electronics schematics jettison the idea of a 1-1 geographic mapping of notation to component.
Is there something in between, though? Something like Unix pipes or CSP, but presented in a geometric layout, that encourages programmers to structure their programs so that information propagates locally throughout, and therefore in principle maps well to asynchronous hardware.
Then there is the idea of referential transparency, which seems to trivialize parallel synthesis, but seems to have nothing to do with spatial locality.