class foo {
    operator [=] () {
        "[=]: ", oadl::argvec(), '\n';
    }
}

proc main()
{
    var a = [5,5].iterate();
    a.`[=]([1:3], [1:3], 100);
    "", a, '\n';

    var bar = new foo();
    bar[2] = 3;
}