Арифметика комплексного числа в Tcl?

Существует ли эквивалент команды expr, которая работает для комплексных чисел (представляемых списками из двух удвоений)?

Эта библиотека предоставляет функции для комплексной арифметики чисел и this кажется полезной утилитой для определения требуемой функции cexpr, но она не работает.

например. он не корректно обрабатывает скобки.

ParseExpressions::ParseExpr { (1) + ((2) + (3)) } { }

возвращает

+ [+ 1 ((2)] (3))

пока он должен вернуться

+ [+ 1 2] 3

Также ParseExpressionions:: ParseExpr {{1 2} + {3 4}} {}

возвращает

+ 1 2 3 4

пока он должен вернуться

+ {1 2} {3 4}

Итак, в основном я прошу прочную версию этой утилиты.

Ответ 1

Почему бы вам не попробовать: http://wiki.tcl.tk/11415 или что-то вроде этого: http://wiki.tcl.tk/13885

Я надеюсь, что эти простые в использовании альтернативы для указанной утилиты.

Ответ 2

Вы можете использовать библиотеку C, если вы связываете ее с FFIDL.