Массивы

Добавьте поддержку массивов в Egg. Для этого добавьте три функции в основную область видимости: array(...) для создания массива, содержащего значения аргументов, length(array) для возврата длины массива и element(array, n) для возврата n-ного элемента.

// Добавьте кода

topEnv["array"] = "...";

topEnv["length"] = "...";

topEnv["element"] = "...";

run("do(define(sum, fun(array,",

    "     do(define(i, 0),",

    "        define(sum, 0),",

    "        while(<(i, length(array)),",

    "          do(define(sum, +(sum, element(array, i))),",

    "             define(i, +(i, 1)))),",

    "        sum))),",

    "   print(sum(array(1, 2, 3))))");

// ? 6