Hacker News new | ask | show | jobs
by otabdeveloper4 1964 days ago
No, software isn't models.

Software is text written in a mathematical language.

Doing a visual interpretation of math (or interpretative dance, or a song, etc) isn't going to end in anything useful.

2 comments

Software is currently described by written text that is transformed by other process (compilers/interpreters) to a different state and then executed. Often the execution does not work as expected due to undefined conditions or states within the "mathematical language", or misunderstanding of the scope or memory allocation or release, etc.

There certainly could and should be visual representations of state, memory utilization, registers, variable values and execution sequence based on the textual conditions described. Contrasts of expected execution vs actual.

Perhaps using GPT-3 that is taught each programming language and then a designer can specify the behavior and GPT-X* can build a solution that can be formally verified as provable. Then generate test cases and show the flow and proof of correct execution based on test conditions.

> Often the execution does not work as expected due to undefined conditions or states within the "mathematical language", or misunderstanding of the scope or memory allocation or release, etc.

nah, 90%+ of bugs are already present in the "paper" specification in my experience, without any programming language involved (and I'm mostly writing in C++ which is prone to the issues you mention).

Individual programs are text, but useful software systems are models.
Which means that software documentation should use spatial visualization tricks, not the coding process.

Which is what we kind of have now, except that really nobody wants to use software documentation.