Hello! On Saturday 21 March 2009 17:58:07 Тихон Тарнавский wrote: > > > Вообще-то, можно одной строкой: > > > (apply #'map 'list matrix), > > > где matrix - список списков > > > > О! Верх изящества. Вспоминается пример, как дядечка в середине 70-х > > разбирал несколько ЧАСОВ(!) 4(!!!) строки на языке APL. > > 35 лет прошло, и никто ничему так и не научился :-/ > > Это неудачная шутка?.. Какая связь между 4 строками, которые пришлось > разбирать несколько часов, и вызовом трёх функций, понятным с первого > взгляда?
Абсолютно непонятно. Вероятно, вы делаете какие-то неявные преобразования типов, что есть явная императивщина. Математик не будет записывать интеграл/дифференциал и другие операции кучей символов хотя бы потому, что прочитать будет невозможно. Это только кодеры способны написать нечто, что сами через месяц не прочитают. Формулы это очень компактный способ записи, а не набо закорючек, как вам кажется. Попробуйте написать какое-нибудь тензорное преобразование (к примеру, из Ландау-Лифшица) и сами поймете. На тикле я бы написал так set matrix2 [T matrix] и это будет понятно любому, кто знаком с матричной алгеброй. А функцию T я определю в библиотеке подпрограмм. Best regards.

