Skip to content

Artificial Intelligence, Data Analytics and Cyber Security - Laws and Practice · Computer Hardware and Software

Application Software and Programming Languages Explained

Updated 11 October 2026 · Fact-checked

Application software helps users do a specific task, such as accounting, word processing or browsing. Programming languages are used to write software and run from low level (machine, assembly) to high level. Open source software gives access to source code; proprietary software restricts it. In exams, define, classify, give examples, then compare.

Understand Application Software and Programming Languages

Application software is a program built for an end user to do a task. Examples are Tally for accounting, MS Word for documents, a web browser, and a banking app. It runs on top of system software such as the operating system, which manages the hardware.

Application software can be grouped in a few ways. General-purpose (packaged) software serves many users with common needs, such as spreadsheets and word processors. Customised (bespoke) software is built for one organisation, such as an in-house compliance tracker. Utility software maintains the computer, such as antivirus and backup tools, and is sometimes placed under system software. Other common types are database software, presentation software, web applications, and enterprise software such as ERP.

A programming language is the set of rules used to write instructions for a computer. Low-level languages are close to hardware. Machine language is binary (0s and 1s) and is the only language the processor runs directly. Assembly language uses short mnemonics such as ADD and needs an assembler to convert it to machine code. High-level languages use English-like statements and are portable across machines. They need a compiler or interpreter. Examples are C, Java and Python.

Languages are commonly described in generations. First generation (1GL) is machine language. Second (2GL) is assembly. Third (3GL) is procedural high-level languages such as C, COBOL and Java. Fourth (4GL) is non-procedural, task-oriented languages such as SQL and report generators. Fifth (5GL) is used in AI work and constraint solving, such as Prolog. Textbooks differ slightly on examples, so learn the pattern and not just the names.

Software is also classified by licence. Open source software makes its source code available to use, study, modify and share under a licence. Proprietary software keeps its source code closed, and the owner controls use, copying and modification through a licence. Open source does not always mean free of cost, and free of cost does not always mean open source. Always state that a licence, not a purchase, governs use of software.

Key rules to remember

Application vs system software
Application software = serves the user's task; System software = runs and manages the hardware
Use this one-line contrast to open any answer on types of software.
Language levels
Machine (1GL) → Assembly (2GL) → High-level procedural (3GL) → Non-procedural/4GL → 5GL
Each generation moves further from hardware and closer to human language.
Translators
Assembler: assembly → machine code; Compiler: whole high-level program → machine code; Interpreter: executes line by line
Match the translator to the language type.
Open source vs proprietary
Open source = source code available under licence; Proprietary = source code closed, owner-controlled licence
Compare on source code, cost, modification, support, and security visibility.
Common licence types
Proprietary/commercial, freeware, shareware, open source (e.g. GPL, MIT, Apache), SaaS subscription
Say which rights the user gets: use, copy, modify, redistribute.

How to solve Application Software and Programming Languages questions

Use this method for any question on application software, open source versus proprietary software, or programming languages.

  1. 1Read the command word: define, classify, distinguish, explain, or advise.
  2. 2Define the key term in one sentence in your own words.
  3. 3Classify it. For application software use general-purpose, customised, utility and so on. For languages use the generation or level.
  4. 4Give one Indian or familiar example for each class, such as Tally, SQL or Python.
  5. 5For a distinction question, compare on four to six points such as source code, cost, modification, support and risk.
  6. 6For a case question, apply the point to the facts, for example which licence suits the company, and give a conclusion.
  7. 7Close with a one-line takeaway or a compliance point, such as checking licence terms before deployment.

Quickest way: Define, classify, example, contrast

When to use it: Use when time is short, especially for 5 to 6 mark questions.

  1. Write a one-line definition.
  2. List the classes in bullets, each with one example.
  3. If asked to compare, draw two columns in text form using points with the same headings.
  4. End with one practical line, such as licence compliance or security risk.

Common mistakes in Application Software and Programming Languages

  • Saying open source software is always free of charge.

    Students mix up 'free' as in no price with access to source code.

    Fix: Say open source means source code is available under a licence. Vendors may still charge for support or services.

  • Treating assembly language as a high-level language.

    It uses mnemonics that look like words.

    Fix: Remember that assembly is low level and machine-specific, and needs an assembler.

  • Mixing up compiler and interpreter.

    Both translate high-level code, so students blur them.

    Fix: Compiler translates the whole program first. Interpreter runs it line by line.

  • Listing examples without classification.

    Students memorise names such as Tally and Excel but not categories.

    Fix: Always write the category first, then the example under it.

  • Confusing generations of languages with generations of computers.

    Both use 'first, second, third' numbering.

    Fix: Write 'language generation' explicitly and tie 1GL to machine and 2GL to assembly language.

  • Ignoring licence terms in case answers.

    Students focus on technical features only.

    Fix: Add the licence point: whether use, copying, modification and redistribution are permitted, and the risk of breach.

Worked examples

Example 1

Distinguish between open source software and proprietary software. (5 marks)

Show the solution
  1. Define each term: open source software makes its source code available under a licence that allows use, study, modification and sharing. Proprietary software keeps its source code closed and the owner controls use through a licence.
  2. Compare source code: open source is accessible; proprietary is hidden.
  3. Compare modification: open source users can modify within licence terms; proprietary users cannot.
  4. Compare cost and support: open source is often available without a licence fee, with community or paid support; proprietary usually needs a paid licence with vendor support.
  5. Compare risk: open source code can be reviewed publicly but needs in-house skill; proprietary relies on vendor updates and creates vendor dependence.
  6. Give examples: Linux and Python are open source; MS Windows and Tally are proprietary.

Answer: Open source software gives access to source code and rights to modify and share under its licence. Proprietary software keeps code closed and use is limited by the owner's licence. They differ on source code, modification, cost, support and risk.

Example 2

A listed company in Pune wants a custom compliance tracker and has to choose a programming language. Explain the generations of programming languages and advise which level suits it. (6 marks)

Show the solution
  1. State the generations: 1GL is machine language in binary; 2GL is assembly language using mnemonics; 3GL is procedural high-level languages such as C, COBOL and Java; 4GL is non-procedural, task-oriented languages such as SQL; 5GL is used for AI and constraint-based problem solving, such as Prolog.
  2. Classify levels: 1GL and 2GL are low level and close to hardware; 3GL to 5GL are high level.
  3. Apply to the facts: a compliance tracker is a business application, not hardware control.
  4. Choose: a high-level language such as Java or Python, with SQL for the database, because these are portable, faster to develop and easier to maintain.
  5. Note that low-level languages would be slow to build and hard to maintain for this purpose.
  6. Add a compliance point: check licence terms of any open source libraries used.

Answer: The company should use a high-level language (3GL), such as Java or Python, with a 4GL like SQL for data handling. Low-level languages suit hardware control, not business applications.

Exam tips

  • Expect distinction questions on open source versus proprietary software. Prepare at least five comparison points.
  • Memorise the generation sequence with one example each, and say whether it is low or high level.
  • In case questions, link the software type or licence to the company's need and give a clear recommendation.
  • Write examples in every classification answer, preferably Indian ones such as Tally.
  • Use short bullets so the examiner can find each point quickly.

Practice questions from Computer Hardware and Software

Application Software and Programming Languages: frequently asked questions

What are the main types of application software?

Common types are general-purpose or packaged software, customised software, utility software, database software, and enterprise software such as ERP. Give one example for each. Tally, MS Excel and web browsers are common examples.

What is the difference between open source and proprietary software?

Open source software makes its source code available under a licence that lets you study, modify and share it. Proprietary software keeps the code closed and the owner controls use. Compare them on source code, modification, cost, support and risk.

What are the generations of programming languages?

First generation is machine language and second is assembly language. Third is procedural high-level languages such as C and Java. Fourth is non-procedural languages such as SQL, and fifth is used in AI work. Examples can vary by textbook, so learn the pattern.

What is the difference between a compiler and an interpreter?

A compiler translates the whole high-level program into machine code before it runs. An interpreter translates and executes it line by line. An assembler is separate and converts assembly language to machine code.