7 ms·
I was thinking about the issue of nested code the other day -- isn't it (mostly) an editing environment problem? I mean, if my IDE can detect that a method is p
by rakpol 10y ago
I was thinking about the issue of nested code the other day -- isn't it (mostly) an editing environment problem? I mean, if my IDE can detect that a method is pure, couldn't it do a little magic (e.g. provide a different coloured background, some dotted boxes, etc.) and show me the inlined code right there? It doesn't seem wise to architect your codebase around the deficiencies in your tools, since one is (hopefully) going to long outlive the other.
Related:
[1]: https://dubroy.com/blog/method-length-are-short-methods-actually-worse/ https://dubroy.com/blog/method-length-are-short-methods-actu...
- tibbon 10y agoOh, i like this idea. Imagine your IDE just being able to substitute method calls that are just calling single line methods, for viewing only. Or even being able to refactor them in-line, but keep them in private methods?
- caf 10y agoParticularly if the editor can do things like constant folding and branch elimination based on constants that are being passed at that point.
- jakub_h 10y agoThat's just the editor doing the compiler's work at edit time, though. I know that Chuck Moore has always advocated extreme early binding, but that really is usually associated with Forth, not with mainstream languages.
- caf 10y agoI didn't mean that the editor would change what was presented to the compiler, just that it would simplify for the user when expanding the use of helper functions.
- slazaro 10y agoWith Visual Studio, you can visually inline the definition of a function below its call by selecting "Peek Definition", which is close to what you're saying. You can only do it one at a time, and it's for quick scanning of what the function does, though.
- perspectivep 10y agoVisual Studio has had that for awhile now. http://msdn.microsoft.com/en-us/library/dn160178.aspx http://msdn.microsoft.com/en-us/library/dn160178.aspx
- softawre 10y agoVSCode has this as well.
- taneq 10y ago> By making your methods shorter, you’re just trading one kind of complexity for another. Oh, I want to frame this and put it on the wall. I can't stand code where even the simplest thing is implemented as a giant tree of sub-5-line functions nested 15 deep (and probably, for bonus points, scattered across half a dozen files).