1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
ElenaW [278]
3 years ago
9

How each programming language differs in terms of constructs, techniques, use and requirements?

Computers and Technology
1 answer:
Anuta_ua [19.1K]3 years ago
6 0

Programming languages are (designed to be) easily used by machines, but not people.

Natural languages (like English) are easily used by humans, but not machines.

Programming languages are unambiguous, while natural languages are often multiply ambiguous and require interpretation in context to be fully understood (also why it’s so hard to get machines to understand them). Natural languages are also creative and allow poetry, metaphor and other interpretations. Programming does allow some variation in style, but the meaning is not flexible.

Lojban (Wikipedia) is an artificial language designed to try to bridge the gap between these two types of languages. It is specifically unambiguous yet something that a human can pronounce and even speak meaningfully. It can be considered a somewhat successful experiment yet limited in functionality in some ways in both domains (and not a real substitute for a normal programming language, but perhaps useful as an interface).

Natural languages consist of sentences, usually declarative sentences expressing information in a sequence. Programming languages typically are not declarative but procedural, giving instructions to the machine to do something (like commands in natural languages). Rarely, programming languages are declarative, such as Prolog, where statements are given to the computer, then the evaluation consists of finding possible solutions that match those statements (generate a list of words based on possible combinations of letters as defined just by letter-combining rules, for example).

The vocabulary of natural languages is filled with conceptual terms. The vocabulary of programming languages is generally only ‘grammatical’/functional ‘words’ like basic comments, plus various custom-named things like variables and functions. There are no words like you’d look up in a dictionary to express something like ‘love’ or ‘happy’ or ‘sing’.

The grammatical structures vary in more ways than are easy to list here. But some of the most obvious factors are that words don’t have separable parts in programming languages (like English cat-s to form a plural) [=no morphology], and that via brackets, line breaks or other markers, embedding tends to be overtly and clearly marked on both sides for the parser in programming languages, whereas spoken languages usually only have one word (like “that”) linking embedded sentences, and sometimes no word at all. This is another reason that parsing human languages is so hard on a computer.

You could also look at Hockett’s design features and see which apply to programming languages: What is the difference between human and animal language?

In a very general sense, programming languages aren’t used for bidirectional communication and may not properly be considered “languages” in the same sense as natural languages. Just looking at Hockett’s features, they’re completely distinct in being written only, do not involve interchangeability between the speaker and hearer, do not have ‘duality of patterning’ meaning multiple layers of structure as sounds vs. phrases (phonology vs. syntax), and are not transmitted culturally (well, maybe). It’s just very hard to even try to make the comparison.

Most fundamentally, it is worth asking if programming languages even have meaning, or if they are just instructions. This is similar to the Chinese room thought experiment— given a book of instructions for how to translate Chinese, but without actually understanding it, would a human (or computer) with that book be considered to “know” Chinese? Probably not. A computer doesn’t “know” anything, it just does what the instructions tell it to. Therefore, programming languages have no semantics/meaning. They just are instructions, which translate into electronic signals, nothing more.

You might be interested in
What is the most used piece of technology in education?
Anna11 [10]
I would say a computer, in this time and age everyone uses laptops, computers, chrome books for education
4 0
3 years ago
Using data from a tal distribution database, define a view named toplevelcust. it consists of the number, name, address, balance
valentina_108 [34]
A) CREATE TABLE toplevelcust (number INTEGER PRIMARY KEY, <span> name TEXT, address TEXT, balance DOUBLE, credit DOUBLE</span>);

b) select number, name, credit - balance from toplevelcust

c) This I cannot answer
7 0
4 years ago
Read 2 more answers
Helps locate Web pages
mario62 [17]
What do you need help with here?
3 0
4 years ago
A student sits down at a computer and presses the power button. the computer does not turn on. what is a logical explanation as
ASHA 777 [7]
Since the computer is not working, it is best for the student to test methods that will ensure that there may be complications as to why it is not turning on and why it still off. The most basic step in determining the reason is whether the computer's plug is plugged in the outlet and the student should ensure whether it is plug or unplug.
4 0
3 years ago
If the pc­doctor software is installed on a computer's hard drive, what two different ways can the program be started?
xeze [42]
<span> The PC-doctor software is system information tool used to diagnose and  test the computer and determine its configuration.</span>
If the PC-­doctor software is installed on a computer's hard drive, you should start the program in two different ways:<span>
1. Press function key during startup sequence
2. Start menu shortcut</span>


8 0
4 years ago
Other questions:
  • Find Multiplication of Binary Numbers: 1100112 x 10012
    9·1 answer
  • A company wishes to move all of its services and applications to a cloud provider but wants to maintain full control of the depl
    7·1 answer
  • Mobile devices need to work within limited screen space .
    11·1 answer
  • Which network component allows computers to communicate on a network without being connected directly to each other?
    9·1 answer
  • With what information should you provide your support technician if you encounter an error message? the error text and code the
    13·2 answers
  • Bushman and bonacci (2004) found that prejudiced participants were ____ likely to return a lost e-mail that had been addressed t
    5·1 answer
  • In this lab, you will build a system for package delivery services that provides different shipping options with specific price.
    6·1 answer
  • an early type of GUI is created, which includes windows, pop-ups, icons, and menus. What year did this happen? Please help!!! qu
    12·1 answer
  • Write a statement that takes a variable named file_object that contains a file object and reads its contents into a Python list
    7·1 answer
  • What is an Array? 20 POINTS!!!
    15·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!