Джулия безошибочна в метапрограммировании

#julia

Вопрос:

Я пытаюсь решить уравнения. Когда я запускаю код X , переменная кажется неопределенной, но она выводится идеально. Чего мне не хватает? Я должен дать программе несколько чисел, чем операции в виде макросов, и она должна создать внешнюю матрицу продуктов применяемых операций.

 function msu()
    print("Insert how many values: ")
    quantity = parse(Int64, readline())
    values = []
    for i in 1:quantity
        println("x$i")
        num1 = parse(Float64, readline())
        push!(values, num1)
    end

    println(values)

    print("How many operations? ")
    quantity = parse(Int64, readline())
    ops = []
    for i in 1:quantity
        push!(ops, Meta.parse(readline()))
    end

    mat = zeros((quantity, quantity))

    for i in 1:length(mat)
        sum = 0
        for j in 1:length(values)
            # here begins problems, the following prints are for debugging purpose
            print(length(values))
            func = Meta.parse("$(ops[convert(Int64, ceil(j / quantity))]) * $(ops[convert(Int64, j % quantity)])")
            print(func)
            x = values[j]
            println(x)
            sum  = eval(func)
        end

        mat[i] = sum
    end

    println(mat)
end

msu()
 

Исходный код был на испанском, если вы обнаружите какую-либо опечатку, это, вероятно, потому, что я пропустил перевод.

Комментарии:

1. Уточняющий вопрос: что заставляет вас говорить, что x это не определено?