Oberon-2

1 program Added 2025-10-22T15:35:03Z Model: anthropic/claude-4.5-sonnetTemp: 0.4 Evidence Report issue View issues
Aliases: Oberon2
Provenance: commit f89a0550ad · authored 2025-10-22T17:35:03+02:00 · model anthropic/claude-4.5-sonnet

Sources mentioning this language

5 sources · pl_id: pl/oberon-2
LLM (this repo) · 1PldbWikipediaRosettacodeWikidata · Q3251260

Wikipedia infobox

Pulled from the wikimedia/structured-wikipedia snapshot — see data/raw/wikipedia_pl_facts.*.jsonl and pl_fact.csv for the long-table provenance.

Paradigmsimperative · structured · modular · object-oriented
Typingstrong, hybrid (static and dynamic)
Designed byETH Zurich · Niklaus Wirth Hanspeter Mössenböck
First appeared1991
Influenced byOberon · Modula-2 · Object Oberon
Homepagehttp://www.ethoberon.ethz.ch

Related languages

Oberon (0.53)Oberon-0 (0.44)Oberon-1 (0.44)Oberon-A (0.44)Oberon-07 (0.33)

LLM-contributed programs

Binary Search Tree Implementation

Provenance: commit f89a0550ad · authored 2025-10-22T17:35:03+02:00 · model anthropic/claude-4.5-sonnet · Temp 0.4
code.ob2 · added: 2025-10-22T15:35:03Z
MODULE BinaryTree;
IMPORT Out;

TYPE
  Tree = POINTER TO Node;
  Node = RECORD
    data: INTEGER;
    left, right: Tree;
  END;

VAR
  root: Tree;

PROCEDURE NewNode(data: INTEGER): Tree;
VAR
  node: Tree;
BEGIN
  NEW(node);
  node.data := data;
  node.left := NIL;
  node.right := NIL;
  RETURN node;
END NewNode;

PROCEDURE Insert(VAR tree: Tree; data: INTEGER);
BEGIN
  IF tree = NIL THEN
    tree := NewNode(data);
  ELSIF data < tree.data THEN
    Insert(tree.left, data);
  ELSIF data > tree.data THEN
    Insert(tree.right, data);
  END;
END Insert;

PROCEDURE Search(tree: Tree; data: INTEGER): BOOLEAN;
BEGIN
  IF tree = NIL THEN
    RETURN FALSE;
  ELSIF data = tree.data THEN
    RETURN TRUE;
  ELSIF data < tree.data THEN
    RETURN Search(tree.left, data);
  ELSE
    RETURN Search(tree.right, data);
  END;
END Search;

PROCEDURE InOrder(tree: Tree);
BEGIN
  IF tree # NIL THEN
    InOrder(tree.left);
    Out.Int(tree.data, 4);
    InOrder(tree.right);
  END;
END InOrder;

BEGIN
  root := NIL;
  Insert(root, 5);
  Insert(root, 3);
  Insert(root, 7);
  Insert(root, 1);
  Insert(root, 4);
  Insert(root, 6);
  Insert(root, 9);
  
  Out.String("In-order traversal: ");
  InOrder(root);
  Out.Ln;
  
  IF Search(root, 4) THEN
    Out.String("Found 4");
  ELSE
    Out.String("Not found 4");
  END;
  Out.Ln;
  
  IF Search(root, 8) THEN
    Out.String("Found 8");
  ELSE
    Out.String("Not found 8");
  END;
  Out.Ln;
END BinaryTree.

Real programs from Software Heritage

No SWH evidence indexed yet for this language. (Either the SWH mining hasn't reached this language's extensions, or no matching files exist in the archive.)

Contribute — propose a file extension

Tell us where to find evidence about Oberon-2 (mapped to pl/oberon-2). A reference URL is required; at least one of extension or program code must be provided too. A maintainer reviews each submission via a draft PR before anything lands.
Optional: attach a program from that URL
If the reference URL points at a single source file you'd like to add as an example program, paste it below. The workflow will write it under languages/Oberon-2/programs/<sha>/. Keep under ~200 lines.
(or open the pre-filled issue directly)
← Oberon-1 Oberon-A →