MultiJava

1 program Added 2026-03-11T14:00:00Z Agent: claude-codeModel: claude-sonnet-4-6WebSearch: disabled Evidence Report issue View issues
Aliases: Multi-Java
Provenance: commit 185765eda0 · authored 2026-03-11T22:39:14+01:00 · agent claude-code · model claude-sonnet-4-6

Sources mentioning this language

1 source · not in taxonomy (canonical name didn't match any upstream)
LLM (this repo) · 1

Related languages

MiniJava (0.32)MultiLisp (0.25)Java (0.24)MUF (0.20)Lava (0.17)

LLM-contributed programs

Shapes Area via Multiple Dispatch

Provenance: commit 185765eda0 · authored 2026-03-11T22:39:14+01:00 · agent claude-code · model claude-sonnet-4-6 · WebSearch disabled
code.java · added: 2026-03-11T14:00:00Z
// MultiJava: multiple dispatch example
// Shapes hierarchy with area computed via multi-methods

class Shape {
    String name() { return "Shape"; }
}

class Circle extends Shape {
    double radius;
    Circle(double r) { radius = r; }
    String name() { return "Circle"; }
}

class Square extends Shape {
    double side;
    Square(double s) { side = s; }
    String name() { return "Square"; }
}

// Multi-method specialization using MultiJava @-syntax
double area(Shape@Circle c) { return Math.PI * c.radius * c.radius; }
double area(Shape@Square s) { return s.side * s.side; }
double area(Shape s) { return 0.0; }

class Main {
    public static void main(String[] args) {
        Shape[] shapes = { new Circle(5.0), new Square(4.0) };
        for (Shape s : shapes) {
            System.out.println(s.name() + " area: " + area(s));
        }
    }
}

Contribute — propose a file extension

Tell us where to find evidence about MultiJava (mapped to pl/multijava). 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/MultiJava/programs/<sha>/. Keep under ~200 lines.
(or open the pre-filled issue directly)
← multihash-hash-function Multiline →