Анонс расширения VecTcl

На конференции EuroTcl 2014 широкой публике было представлено расширение VecTcl, добавляющее в стандартный Tcl новый тип данных — числовые массивы и включающее в себя средства для эффективной работы с ними.

Это расширение предназначается для выполнения инженерных вычислений и является аналогом NumPy+SciPy в Python, PDL в Perl (напомню, что в Perl6 подобные массивы поддерживаются на уровне языка), языков APL, J, K, R.

Синтаксис для описания массивов представляет собой стандартный синтаксис для создания списков в Tcl. Для работы с массивами предназначена специальная команда vexpr, компилирующая переданный ей блок кода в код на обычном Tcl и исполняющая его. Также расширение вводит в язык комплексные числа.

Пример кода:

set x { 1 2 3 } set A {{1.0 2.0 3.0} {4.0 5.0 6.0} {7.0 8.0 9.0}} vexpr { A*x } # 14.0 32.0 50.0 Здесь необходимо отметить, что имена переменных в теле vexpr не имеют сигила $.

Расширение пока что имеет версию 0.1.7alpha и распространяется в виде исходных кодов, бинарных архивов и старкита/старпака.

Здесь можно почитать презентацию с EuroTcl.

 tcl, математика

©  Linux.org.ru