Book.od.ua Книги для вашего бизнеса



Одесская библиотека бизнес литературы
полезные книги для бизнеса

3.8. В городе новый шериф. Часть Восьмая.

Культ АПЛ

Все эти менее глобальные проблемы четко указывали: чтобы лучше понять суть трейдинговых рисков Morgan Stanley, нам первым делом надо стать, что называется, лучшими лавочниками. Необходимо научиться правильно устанавливать цену на то, что мы продавали, и не раздувать свои “товарные запасы”. Цель была предельно четкой, но оказалось, что достичь ее крайне трудно, прежде всего из-за технического недостатка информационно-технологической структуры. Дело было в том, что наши компьютерные аналитики основывались на языке программирования, который был плохо структурирован для исполнения циклов.

Подразделение информационных технологий Morgan Stanley еще раньше стало своего рода монастырем, неким пристанищем для тех, кто поклонялся культу загадочного, но элегантного языка программирования под названием АПЛ (A Programming Language — APL). Если бы АПЛ был религией, Morgan Stanley могла бы претендовать на кровное родство своего высшего “духовенства”, ведь сын создателя этого языка работал в нашем подразделении FIR. Эту систему условных математических обозначений изобрел гарвардский профессор Кеннет Айверсон, за что он был награжден премией Тьюринга. Его курс АПЛ, который он читал в Гарвардском университете, вполне можно назвать первыми компьютерными курсами. Айверсон очень высоко ценил сжатость и лаконичность. Созданный им язык возник как результат применения к условным математическим обозначениям совета, который он дал одному из своих коллег относительно того, как улучшить диссертацию: “Если это длинное предложение, превратите его в короткое. Если это короткое предложение, превратите его в прилагательное или наречие. А прилагательное или наречие вполне можно выкинуть. И применяйте этот способ рекурсивно”.

Язык программирования позволяет программисту одним нажатием клавиши со специальным символом выполнять такие операции, как инвертирование матрицы или суммирование рядов. Например, суммирование всех элементов вектора, которые больше 100, выражается так: +/x> 100. Или возьмем более сложную задачу, которую, кстати, однажды поставили перед Айверсоном: найти сумму элементов матрицы, равную сумме соответствующих столбцовых и строковых индексов. При использовании АПЛ эта задача выражается в девяти нажатиях на клавиши клавиатуры и нескольких парах круглых скобок. Данные команды могут применяться в отношении многомерных матриц с миллионами строк так же легко, как к одному простому ряду цифр.

Для людей с математическими способностями язык АПЛ чрезвычайно привлекателен. И если вы окажетесь в компании таких людей, то убедитесь, что особо ярые приверженцы и наиболее продвинутые пользователи могут благодаря ему практически бесконечно показывать настоящие математические фокусы. Конечно, все эти фокусы основывались на том, чтобы вычислить правильную последовательность команд, но это было частью забавы. Создавалось впечатление, что любая дискуссия, посвященная созданию новых моделей или функций ценообразования, сводилась к обсуждению программистами вопроса, кто из них может написать решение самым сжатым способом. Вожделенной целью для всех было решение “в одну строку”.

Это стремление выразить ситуацию в предельно сжатой форме было обусловлено конкретной причиной. АПЛ — это интерпретируемый язык. Таким образом, компьютер считывает коды и преобразует их в машинный язык во время исполнения программы. Эта интерпретация занимает определенное время, поэтому, чем меньше набор символов, используемых для исполнения команды, тем быстрее все происходит. По сути, рядом с каждым терминалом лежала затрепанная книга кодов, в которой были собраны однострочные решения практически всех мыслимых операций. Это был АПЛ-овский эквивалент справочника по интегралам. Но к тому времени, когда составляется эта вожделенная строка, код становится непроницаемым, т.е. недоступным для понимания сторонним лицом. Даже специалисту, чтобы понять происходящее, надо построить простой числовой пример и посмотреть, как он преобразуется в результате разных операций.

Фирма Morgan Stanley не только использовала АПЛ; она превратила большую часть подразделения FIR в нечто вроде надомного производства для создания новых и все более продвинутых версий этого языка. Джоел Каплан, который возглавил группу исследователей бумаг с фиксированной доходностью после ухода Плэтта, сочувствуя АПЛ, был, что называется “попутчиком”. Он однажды сказал: “Мое имя начинается на букву J, а фамилия на букву K. А за ними идет язык АПЛ. Так что мое место всем понятно”. (K и J — это языки программирования, производные от АПЛ.) Каплан рассматривал АПЛ как секретное оружие, благодаря которому мы сможем создать более мощные программы и сделаем это раньше, чем наши конкуренты.


Понравился материал? Поделитесь с друзьями!

<< Предыдущая статьяСледующая статья >>
3.7. В городе новый шериф. Часть Седьмая. 3.9. В городе новый шериф. Часть Девятая.





Убедительная просьба при использовании любых материалов Одесской электронной бизнес-библиотеки ставить активную ссылку на наш сайт. По всем вопросам касательно сайта пожалуйста пишите на почту
      Карта сайта