Ideally, you work out the requirements. Then you formulate those requirements in code, via the static type system and/or automated unit+integration tests. And then you implement your code to match those requirements (compiler stops complaining and tests are green).
Ideally, you don’t have to actually run the whole application to feel confident enough about your changes, although obviously you would still do that eventually, for example before publishing a release.
I do this all the time when working with transformations (in personal projects). I know I need to take into account these 5 variables but I’m not sure exactly how they all fit together, and I really don’t want to get a pen and paper out, so I just shuffle things and their operators about until it works or I get bored and do something else.
How else would you write code? you write it, you run it, and do it again until it works.
Back in my ancient college days, compilers (C, FORTRAN) would take like 5 minutes or more, so it was really important to code carefully.
It’s rather about changing things randomly.
Ideally, you work out the requirements. Then you formulate those requirements in code, via the static type system and/or automated unit+integration tests. And then you implement your code to match those requirements (compiler stops complaining and tests are green).
Ideally, you don’t have to actually run the whole application to feel confident enough about your changes, although obviously you would still do that eventually, for example before publishing a release.
I do this all the time when working with transformations (in personal projects). I know I need to take into account these 5 variables but I’m not sure exactly how they all fit together, and I really don’t want to get a pen and paper out, so I just shuffle things and their operators about until it works or I get bored and do something else.