Week 4Second Term

Types of Programming Languages (Weeks 7-8)

Print lesson pack
On this page9 sections
  1. 01Lesson objectives
  2. 02Key vocabulary
  3. 03Common misconceptions
  4. 04Teacher activities
  5. 05Student activities
  6. 06Practical / learning evidence
  7. 07Resources and preparation
  8. 08Assessment for learning
  9. 09Inclusion and homework

Lesson objectives

By the end of the week, learners should be able to:

  1. Define high-level and low-level languages.
  2. Name at least four languages grouped by level.
  3. Explain why high-level languages are preferred in schools.
  4. Compare assembly and machine code on closeness to hardware.
  5. State one advantage and one disadvantage of each language type.

Key vocabulary

  • High-level language: closer to human speech than machine code.
  • Low-level language: very close to hardware instructions.
  • Assembly: a low-level language mapping closely to machine code.
  • Machine code: binary instructions executed directly by hardware.
  • Prefer: choose a tool because of specific advantages.
  • Advantage: a benefit offered by a particular approach.
  • Disadvantage: a drawback of a particular approach.
  • Closeness to hardware: how little abstraction separates the language from the processor.

Common misconceptions

  • "All programming languages are equally suitable." High-level languages suit school work better than assembly.
  • "Machine code is dead technology." Machine code still runs modern processors directly.
  • "High-level always beats low-level everywhere." Low-level languages offer fine performance control that high-level cannot match.

Teacher activities

  1. Starter: hold up a printed assembly listing and a high-level program and ask which students find easier to read.
  2. Define high-level versus low-level languages and compare them.
  3. Name four or more language families and give one example each.
  4. Explain why high-level languages suit school teaching.
  5. Give learners a high-level versus assembly comparison prompt.
  6. Close with the exit question about when low-level programming is justified.

Student activities

  1. Pick the easier-to-read language from the starter and explain the reason.
  2. Define high-level and low-level languages in their own words.
  3. Name four or more languages and give one example each.
  4. Explain why high-level languages suit school teaching in one paragraph.
  5. Compare assembly and machine code on closeness to hardware.
  6. State one advantage and one disadvantage of each language type.

Practical / learning evidence

A high-level versus low-level comparison table with advantages and disadvantages for each, plus a one-paragraph justification statement. Hand in both for marking.

Resources and preparation

Printed comparison templates, blank tables and sample languages. Offline route: paper tables, no device needed. Display language families clearly and do not recommend commercial software without context.

Assessment for learning

Inspect the comparison table for at least two advantages and two disadvantages per type. Mark the justification for a sensible reason tied to school teaching. Flag any learner who claims all languages are equally useful.

Inclusion and homework

Provide the table prefilled with advantage labels and allow oral completion of disadvantages. Extend confident learners with five language families. Homework: name one real application written in assembly and one in a high-level language.