bohdant писал(а):
Может будет интересно: в Активном Обероне на уровне языка есть поддержка работы с матрицами:
Спасибо, надо будет посмотреть, как оно работает.
Info21 писал(а):
И вот в ней во всей всего-то нашлось где-то три места (ну, может, четыре), где какие-то циклы свернулись с помощью этих средст, причем без существенного эффекта для понимабельности -- они и так были вполне прозрачные. Помню, Феликс разочарован был.
У меня другой опыт: удавалось свернуть очень многое, как правило, без серьёзного ущерба понятности. Но, правда, моя задача изначально связана с массивами точек - (гипер)поверхностями термодинамических потенциалов. Удавалось свернуть довольно "навороченные" формулы вроде уравнений NRTL и UNIQUAC (там есть вложенные суммы). Из алгоритмов сделал без единого цикла даже поиск "соседей" треугольника на триангуляции.
Info21 писал(а):
Вы хоть представляете себе, чем у меня голова и без того забита, чтобы еще какой-то совершенно избыточной векторизацией озабачиваться?
Думаю, что она не избыточна в ряде случаев. Просто сначала этот приём программирования сильно непривычен. А вообще для интерпретируемого языка это в высшей степени правильный способ снизить потери на интерпретацию. Если освоиться, то векторизация почти столь же понятна, как и традиционные способы программирования.
Info21 писал(а):
Студент ощутил удобство, когда научился выводить нужный именно ему управляющий интерфейс в маленький наружный модуль.
В MATLAB есть средства инкапсуляции в виде объектно-ориентированного программирования и пространств имён. Да и синтаксис там уже несколько лет назад стал посимпатичнее.