Re:The Boundary Between Hardware And Software
by theaeolist on Tuesday March 10, 2015 @01:42PM
(#9179220)
Why 'strict'?
[ Parent
| on HN ]
Re:The Boundary Between Hardware And Software
by rthomas6 on Tuesday March 10, 2015 @02:01PM
(#9179379)
My thinking was that completely immutable functions map better to hardware that can't change its own design, but maybe it would be better to allow state sometimes. The problem with state is that it implies sequentialism.
Registers, signals, etc. can change values, but you can't change what they do or how they're used. So you can't really have anything like self-modifying code. But I guess allowing state would make sense sometimes as long as you are mindful of what the state is dependent upon. Making lots of independent little state machines would map well to hardware I think.
Re:The Boundary Between Hardware And Software
by theaeolist on Tuesday March 10, 2015 @02:06PM
(#9179428)
"Strict" and "immutable" are rather different things. Which one did you mean? None of them really are related to self-modifying code though.
Re:The Boundary Between Hardware And Software
by rthomas6 on Tuesday March 10, 2015 @02:15PM
(#9179485)
Oh, I meant immutable. Thanks for pointing that out!
Re:The Boundary Between Hardware And Software
by Guvante on Tuesday March 10, 2015 @02:01PM
(#9179377)
Because hardware is fundamentally strict, when you read a value you read it.
Re:The Boundary Between Hardware And Software
by theaeolist on Tuesday March 10, 2015 @02:09PM
(#9179443)
This is not what 'strict' really means. 'Strictness' means that a function must evaluate its argument. In terms of h/w this would mean (I guess) that a 'strict' circuit must read its inputs, which is not usually required.