| With regards to the "diff" which I forgot to address earlier. The changeset still has a textual representation. So the diff could be like a webpage that is showing: On 5 June 2017 John Smith authored the following changeset: - Added new function that calculates sum of given numbers (click to view) - Removed function called "old calculate sum" The program is not the syntax the syntax is just a representation of it. So if I have added a new function we can both look at the diff. We will both see that I have added a function. We could both choose to view the body of the function in the same syntax, or you could configure your editor to show it in a different way. In the same way that you could configure the font size or the colour scheme. The point is to reduce the importance of things that are not inherently part of the domain and give that importance to the problem/domain itself. So you could view a "number node" like "5,000,000" and I could view it like "5_000_000". I could view a function definition like "declare function named blah" you could view it as "def fun blah". Because we are still looking at the exact same thing it makes no difference in the result of the program. |