proc main()
{
    var a;

    a = new Array(2,3,4);
    "typeof(a) = ", ?? a, "; shape(a) = ", a.shape(), '\n';
    a = new PackInt(2,3,4);
    "typeof(a) = ", ?? a, "; shape(a) = ", a.shape(), '\n';
    a = new String(10);
    "typeof(a) = ", ?? a, "; shape(a) = ", a.shape(), '\n';
    a = new WideString(10);
    "typeof(a) = ", ?? a, "; shape(a) = ", a.shape(), '\n';
    a = new PackChar(2, 3, 4);
    "typeof(a) = ", ?? a, "; shape(a) = ", a.shape(), '\n';
    a = new PackWideChar(2, 3, 4);
    "typeof(a) = ", ?? a, "; shape(a) = ", a.shape(), '\n';
    a = new Dict(10);
    "typeof(a) = ", ?? a, "; sizeof(a) = ", a.sizeof(), '\n';
}