I and other research teams have been developing well-defined languages for software engineering documentation. My own notation is experimental. Syntax and Grammar Software engineers are used to having the syntax of source code checked by a program. Most word processing systems provide tools that look for common errors and ambiguities. There is no reason why all documents should not have their grammar checked as well.
Mathematical formulae can have there syntax checked.
The formal validity of an argument can be tested by algorithms described in texts on formal logic. It may even be possible to develop combined syntax and grammar checkers that scan documents written in a mixture of formal and natural languages. Perhaps checking the grammar of documents in a software project could help the developers do a better job by ensuring that the documents are more readable and less ambiguous. This short note has no space to discuss the pros and cons of using graphics and tables in computer documentation. I believe that we can and should develop documents that have parts that can be viewed in many different ways.