4 ms·
Isn't that rant a bit over the top just for a large source file? If the source file size matters you're really not using your editor right. With a modern edito
by nn3 6y ago
Isn't that rant a bit over the top just for a large source file?
If the source file size matters you're really not using your editor right. With a modern editor it shouldn't really matter where something is, you'll always just directly jump to the symbols.
And that github source view isn't really that great anyways.
For any serious reading better clone it. Apparently the billions of VC capital weren't able to buy a proper source code xref setup where you can actually jump to symbols directly, which is like the most important feature for any code review.
I guess the maintainer was just not very interested in trivial submissions. Yes splitting up source files is trivial.
- flocial 6y agoAlso, considering the source's long history it would be a huge break for stylistic reasons.
- foepys 6y ago> Yes splitting up source files is trivial. It's not trivial. Have you ever had to maintain a project across multiple versions? .NET is even crazier, it supports multiple versions across multiple projects with a lot of shared code that lives in different repositories. If you split the file you cannot apply patches to older versions or different projects anymore. Merging will be a nightmare and the change history will, while not technically lost, be very hard to follow. Try it for yourself. Make a git repository, a large file, two or three LTS version branches, and then split the file up. Now try to apply a patch you made in master to the LTS branches.
- ijustwannatosay 6y agoIMHO splitting to files is overrated anyway. "File" is such an abstract concept when the implementation can vary to the extent of anyones imagination. For humans, tooling is the king. If your IDE can open windows into different parts of a file, set bookmarks, has excellent navigation and so on, then why obsess about representation in the file system?
- danielbarla 6y agoThe most compelling argument I can give for splitting is that it introduces a very obvious hierarchical structuring. Our brains are much better at working with relatively small numbers of higher-level abstractions than they are at thousands of fine-grained ones. There is a balance of course, and over-splitting is a thing. But vehemently arguing that there is no inherent value is a bit of a stretch.
- kqr 6y agoOn the other hand, one of the main diseases I see in big code bases are overhierarchicalisations. Going back even to the first discoveries of software modularity (Parnas et al) there was never any talk about trees tall enough to reach the moon. It's always been about two or three layers in the normal case. Anything else and we get lost in the vertical direction instead. (Implicit: and the GC might already count as being in the bottom, third layer.)
- Shorel 6y agoI just copy-pasted it into SublimeText to take a peek at it, and it doesn't even register as particularly big, everything being instantaneous.