New xSharpees.. or is X#phobes
Posted: Sun May 12, 2019 10:26 am
Phil
I do not disagree with any of the points you make. But none of that, to my mind, conflicts with the basic statement “the way programs work (on a digital platform)” does not change. It does not change whether the platform is pc, tablet, or whatever. They are all digital platforms which our programs control. And, yes we need to take different approaches to how we develop and effect that control (our programs).
(Just in case you’re wondering OK so what? I’ll get to it, so hang on)
The fact is that the electronic operation underlying it all (including shuttling backwards and forwards to the cloud) must and does obey the basic natural laws of physics that we see in the real world. These laws determine and limit what we, ourselves can do, and in particular how quickly we can do things.
Time is the essential factor to get to grips with. Digital electronics, can these days operate at phenomenal speed. Far, far greater than the speed at which we ourselves can do things – timespans measured in nano-seconds. But even this speed is slow when compared to the speed of light.
I have explained some of this in greater detail in the referenced post.
The point here is that VO before it and now the way managed code is implemented allows us to conceptually forget all about memory management. Indeed, forget all about timing constraints – none of these take effect until our programs actually run. Understanding becomes easier
.
So where is this pointing as far as program development in a .NET based language is concerned?
To my mind it points to greater emphasis being placed on optimal use of the language syntax as it develops. By so doing, more and more coding constructs will be able to be translated to the IL Assembler directly by the language compiler, meaning that errors can be detected at compile time rather that jumping out as exceptions when the code is run.
I hope this makes some sense.
Terry
I do not disagree with any of the points you make. But none of that, to my mind, conflicts with the basic statement “the way programs work (on a digital platform)” does not change. It does not change whether the platform is pc, tablet, or whatever. They are all digital platforms which our programs control. And, yes we need to take different approaches to how we develop and effect that control (our programs).
(Just in case you’re wondering OK so what? I’ll get to it, so hang on)
The fact is that the electronic operation underlying it all (including shuttling backwards and forwards to the cloud) must and does obey the basic natural laws of physics that we see in the real world. These laws determine and limit what we, ourselves can do, and in particular how quickly we can do things.
Time is the essential factor to get to grips with. Digital electronics, can these days operate at phenomenal speed. Far, far greater than the speed at which we ourselves can do things – timespans measured in nano-seconds. But even this speed is slow when compared to the speed of light.
I have explained some of this in greater detail in the referenced post.
The point here is that VO before it and now the way managed code is implemented allows us to conceptually forget all about memory management. Indeed, forget all about timing constraints – none of these take effect until our programs actually run. Understanding becomes easier
.
So where is this pointing as far as program development in a .NET based language is concerned?
To my mind it points to greater emphasis being placed on optimal use of the language syntax as it develops. By so doing, more and more coding constructs will be able to be translated to the IL Assembler directly by the language compiler, meaning that errors can be detected at compile time rather that jumping out as exceptions when the code is run.
I hope this makes some sense.
Terry