Syntax is the last thing you should design
It is possible to completely avoid syntax, period, by putting boxes of various colors on a whiteboard and labeling or connecting them with pictographic symbols representing what you want to do.<p>As soon as you do so you will realize that all modern programming languages are as dumb as a sack of rocks, and the functionality you are coding is trivial.<p>You can then design the syntax, which is what separates your language from every other dumb as a sack of rocks language.<p>Quick, name a language where I can do something simple like mention &quot;Whenever this function is called, make sure there is enough free memory (at least ---- MB) before actually calling it; if there isn&#x27;t, first swap out any objects from memory to disk, starting with the ones that had been used the longest time ago, and after the function has finished running, swap those back into memory.&quot;<p>That&#x27;s pretty straight-forward and well-specified. Name a language I can do that in?<p>Or how about this: &quot;analzye this library and include a logically simplified version that only needs to address these cases:&quot; (a list of conditions.). What language will even try to simplify included source code?<p>Or take debugging. Name a language I can add this line to: &quot;if variables A and B ever both change as a result of the same function call, print the following debugging message:&quot; trivial.  Name a language that can do it.<p>Languages are dumb.  They do almost nothing.  I can&#x27;t <i>wait</i> for the future, it can&#x27;t get here fast enough.