How is Synthesis a natural language?

Welcome. Thank you for the opportunity to clarify a few things:

  • Discoverability is totally irrelevant to the language.
    • It is rather an aid provided by the environment.
      • Synthesis lab already has its own set of such aids and many more can and will be developed.
  • Synthesis:
    • is not trying to be English
      • No matter that it sometimes looks like English.
        • and could be made to look much more like it
        • This particular similarity is indeed superficial.
          • But makes it familiar to read.
        • The deep similarity is in being natural.
          • That makes it familiar to think in it.
      • The above article doesn’t even mention English.
      • Compared to English, Synthesis is on purpose:
        • much simpler
          • not made to write Shakespeare
            • Let this to LLMs, which are good with fiction.
        • much easier
          • not requiring to write like Shakespeare
            • Let this to LLMs, which can easily make salads.
        • much lighter
          • not requiring a local archive of every English text corpus
            • Let this to LLMs, which are quantity-first par excellence.
    • can use the vocabulary of any language
      • and of multiple languages at the same time
        • without mixing the contexts
      • though cannot use their grammar
    • rarely complains about anything (despite some exceptions)
      • That is because it has limited expectations.
        • Not only less than other programming languages, but also less than humans.
          • Human languages are very forgiving, but humans are not.
            • If you try to give complicated instructions to humans, their complaints compete those of computers.
            • Detailed tutorials exist to clarify what the languages could not.
          • I receive more complaints from humans than from Synthesis.
            • Of course some humans are bigger complainers than others.
          • Worse than complaining is misunderstanding.
            • The convenience of guessing cannot outweigh the problems from guessing wrongly.
            • Human languages are disqualified, because their ambiguity costs lives.
              • e.g. the order given to the “light brigade”
  • What you wrote applies to French more than to Synthesis.
    • For historical reasons, English and French:
      • share much vocabulary
      • use very different grammars
    • It is easier from English to move to Synthesis than to move to French.
      • Not to mention other human languages, which are more alien to English than Synthesis is.
    • All these languages are both:
      • different
        • There is no easy way to interchange them.
      • natural
        • Humans can think directly in them.
  • Visual programming:
    • is not about tools that somehow write code for you
      • They may as well write in Synthesis.
      • Therefore, I’m not going to touch this category.
    • is about programming in a visual way
      • like the mentioned Scratch
    • shares the characteristics of domain-specific languages:
      • Can be dreamlike in narrow applications.
      • The dream breaks on first deviation.
    • on the positive side, it is:
      • easy to learn
        • Because we are visual learners.
      • easy to write
        • Because we don’t have to type.
          • Though typing can be faster.
      • great for teaching
        • Because it is like a game.
    • on the negative side, it:
      • is not easy to read
        • You need to translate the whole program into your own language.
          • Unless you are the person who put the shapes together.
            • i.e. already done the inverse translation
      • doesn’t scale at all
        • By now experience has shown that visual programming is impractical for anything beyond playing.
        • The same attributes make visual programming of:
          • smaller programs easy
            • particularly fun to debug
          • bigger programs a nightmare
            • especially hard to reason about
        • Fitting preshaped pieces is nice, but:
          • is dead-on-arrival (read the Long answer in Redundancy in Synthesis)
          • although it prevents many errors, it doesn’t prevent the most painful ones
            • Effective prevention should involve the mind more than the hands.
              • People are notorious for getting frustrated with limitations and wanting to break stuff.
                • Learning through mistakes works better.
          • it turns programming into a puzzle
            • initially a fun challenge
            • later a boring unproductive activity
            • can bound creativity within its creator’s frameset
              • The freedom of thinking out-of-the-box begins from the language we think in.
          • it is an inferior approach: In Synthesis, almost everything fits.
            • It won’t always produce the expected result, but it will run and show us what it did and why.
              • We learn more from this than from safety barriers.
            • This is a design decision (thus a trade-off) with important productivity gains.
          • the shapes are arbitrary, they don’t correspond to anything in reality
            • Being visual doesn’t automatically make something intuitive.
      • doesn’t generally fit in human mind and intuition
        • Although humans can and do think in visual ways, as much as in natural language.
          • Yet no visual tool to my knowledge approximates visual thinking.
            • We still have to think in pseudocode, then translate to the visual tool.
      • doesn’t fit well in other environments
        • Synthesis lab takes advantage of Logseq’s outliner, which already adds a visual element.
          • Synthesis’ code blends with normal text (e.g. notes) like no other approach.
  • Much of the rest of your post is:
    • wishful thinking
      • May or may not be possible in the future.
      • Synthesis is an implemented reality today (though partially).
    • borderline off-topic
      • Granted that you warned about it, but you could keep it a little more focused.
      • This topic is about natural languages.
        • You could argue that either:
          • Synthesis is not as natural as the article claims
            • You haven’t addressed the points made by the article.
          • a natural language is not the most intuitive approach
            • You haven’t shown how visual programming is more intuitive.
        • Expressing your argument in a visual way could give your ideas some weight.
  • Thank you in advance for not using LLMs to write your posts.