Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 938113
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T21:35:20+00:00 2026-05-15T21:35:20+00:00

Look, for example at AppleScript (and there are plenty of others, some admittedly quite

  • 0

Look, for example at AppleScript (and there are plenty of others, some admittedly quite good) which advertise their use of the natural language metaphor. Code is apparently more readable because it can be/is intended to be constructed in English-like sentences, says they. I’m sure there are people who would like nothing better than to program using only English sentences. However, I have doubts about the viability of a language that takes that paradigm too far (excepting niche cases).

So, after a certain reasonable point, is natural-languaginess a benefit or a misfeature? What if the concept is carried to an extreme — will code necessarily be more readable? Or might it be unnecessarily long, difficult to work with, and just as capable of producing hilarity on the scale of obfuscated Perl, obfuscated C, and eye-twisting Bash script logorrhea?

I am aware of some specialty cases like “Inform” that are almost pure English, but these have a niche that they’re not likely to venture out from. I hear and read about how great it would be for code to read more like English sentences, but are there discussions of the possible disadvantages? If everyday language is so clear, simple, clean, lovely, concise, understandable, why did we invent mathematical notation in the first place?

Is it really easier to describe complex instructions accurately and precisely to a machine in natural language, or isn’t something closer to mathematical markup a much better choice? Where should that line be drawn? And finally, are you attracted to languages that are touted as resembling English sentences? Should this whole question have just been a one liner:

naturalLanguage > computerishLanguage ? booAndHiss : cheerLoudly;
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T21:35:21+00:00Added an answer on May 15, 2026 at 9:35 pm

    My answer to this would be that the ideal programming language lies somewhere between a natural language and a very formal language.

    On the one extreme, there’s the formal, minimal, mathematical languages. Take for example Brainfuck:

    ,>++++++[<-------->-],[<+>-]<.    // according to Wikipedia, this means addition 
    

    Or, what’s somewhat preferable to the above mess, any type of lambda calculus.

    λfxy.x
    λfxy.y
    

    This is one possible way of expressing the Boolean truth values in lambda calculus. Doesn’t look very neat, especially when you build logical operators (such as AND being e.g. λpq.pqp) around them.

    I claim that most people could not write production code in such a minimalistic, hard-to-grasp language.


    The problem on the other end of the spectrum, namely natural languages as they are spoken by humans, is that languages with too much complexity and flexibility allows the programmer to express vague and indefinite things that can mean nothing to today’s computers. Let’s take this sample program:

    MAYBE IT WILL RAIN CATS AND DOGS LATER ON. WOULD YOU LIKE THIS, DEAR COMPUTER?
    IF SO, PRINT "HELLO" ON THE SCREEN.
    IF YOU HATE RAIN MORE THAN GEORGE DOES, PRINT SOME VAGUE GARBAGE INSTEAD.
    (IN THE LATTER CASE, IT IS UP TO YOU WHERE YOU OUTPUT THAT GARBAGE.)
    

    Now this is an obvious case of vagueness. But sometimes you would get things wrong with more reasonable natural language programs, such as:

    READ AN INTEGER NUMBER FROM THE TERMINAL.
    READ ANOTHER INTEGER NUMBER FROM THE TERMINAL.
    IF IT IS LARGER THAN ZERO, PRINT AN ERROR.
    

    Which number is IT referring to? And what kind of error should be printed (you forgot to specify it.) — You would have to be really careful to be extremely explicit about what you mean.

    It’s already too easy to mis-understand other humans. How do you expect a computer to do better?

    Thus, a computer language’s syntax and grammar has to be strict enough so that it doesn’t allow ambiguity. A statement must evaluate in a deterministic way. (There are maybe corner cases; I’m talking about the general case here.)


    I personally prefer languages with a very limited set of keywords. You can quickly learn such a language, and you don’t have to choose between 10,000 ways of achieving one goal simply because there’s 10,000 keywords for doing the same thing (as in: GO/WALK/RUN/TROD/SLEEPWALK/etc. TO THE FRIDGE AND GET ME A BEER!). It means if you need to think about 10,000 different ways of doing something, it won’t be due to the language, but due to the fact that there are 9,999 stupid ways to do it, and 1 elegant solution that just shines more than all the others.

    Note that I wrote all natural language examples in upper-case. That’s because I sort of had good old GW-BASIC and COBOL in mind while I wrote this. There’ve been some examples of programming languages that lean on natural language, and I think history has shown that they are, in general, somewhat less widespread than e.g. terse C-style languages.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Take a look at this example: http://www.extjs.com/deploy/dev/examples/multiselect/multiselect-demo.html On it, there are components rendered against
I have some difficulties with understanding BindingSource's behaviour. Let's look at following example: Creating
What would the following example look like re-written to use Ninject? Specifically how would
I look at example of dropdown menu here . Here is simplified jsfiddle example.
I have a problem with internet explorer 6 and 7, please look this example
please look at this example of drop down checkbox list im working on.. http://jsfiddle.net/Yojik/VJHVK/143/
Take a look at this example here: http://denise.brixwork.com/showlisting/1/8297-Valley-Drive-Alpine-Meadows-Whistler-denise-brown-real-estate And the red tables under Specifications
Take a look at the example code... NodeList folderNodes = document.getElementsByTagName(Folder); DocumentFragment node =
Please take a look at this example: #include <iostream> #include <vector> #include <string> using
I want to have my site urls look like http://example.com/place/info?var=info&morevars=ifneeded Place and info are

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.