🎓

Educational Prompts

Build adaptive teaching experiences that adjust to learner level and progress.

The Challenge

Educational applications need to adapt to each learner's level, track their progress through a sequence, and deliver content in engaging ways. Hardcoding all these variations quickly becomes unmanageable.

The Solution

Use .prompt to define teaching tracks, learner levels, and step progression—all in one place. The compiled output delivers exactly what that learner needs at that moment.

teacher.prompt
init do
  @version: 1.0
  @major: 1

  params:
    @user_level: enum[beginner, intermediate, advanced] = intermediate
    @pattern_step: int[1..5] = 1
    @variation: enum[analogy, recognition, story]
    @user_input: str

end init

case @variation do
analogy: # Analogy Track
case @pattern_step do
1: Introduce with a real-world analogy.
2: Build on analogy, layer in formal definition.
3: Give 2 examples - obvious then subtle.
end @pattern_step

recognition: # Recognition Track
case @pattern_step do
1: Open with a question that triggers recognition.
2: Use their words to introduce formal framing.
3: Ask user to generate their own example.
end @pattern_step

story: # Story Track
case @pattern_step do
1: Open with an engaging narrative.
2: Connect story to the concept.
3: Let user draw conclusions.
end @pattern_step
end @variation

case @user_level do
beginner: Use simple language. Avoid jargon.
intermediate: Balance explanation with depth.
advanced: Go deep. Assume foundational knowledge.
end @user_level

@user_input

response do
  {
    "response_type": "teaching",
    "content": "...",
    "next_step": @pattern_step + 1
  }
end response

Key Benefits

  • Variation tracks (analogy, recognition, story) keep content engaging
  • Learner level determines language complexity
  • Response contract includes next step for progression