LINUX.ORG.RU

GNU APL 1.6

 ,


1

3

Вышла новая версия языка APL от GNU — 1.6.

Из нового:

  • Новый API ввода-вывода ⎕FIO, который можно использовать вместо встроенных функций FILE I>O. Он предоставляет набор функций как в языке C и позволяет заменить числовые дескрипторы легко запоминаемыми именами.
  • В лямбда-выражениях теперь возможно использование локальных переменных.

>>> Список изменений на официальном сайте

anonymous

Проверено: Shaman007 ()

Вопрос специалистам по практическому применению APL, который известен своими ёмкими и выразительными конструкциями для обработки матриц.

Есть BMP (а лучше сжатый TIFF или PNG) с фотографией дифракционной картины. Как его загрузить для обработки? Каждый дифракционный пик представляет собой кольцо с неравномерным потемнением. Как найти радиус самой тёмной части кольца? Как найти «массу» кольца (требуется к интенсивности каждой точки применить какую-то функцию, типа экспоненты и просуммировать)?

Существует ли простой способ записать эти операции на APL вместо муторного разворачивания в 1-мерные массивы и обработки каждой точки?

anonymous ()
Ответ на: комментарий от FilosofeM

Бывает, что старое и не нужно закапывать, а новое никак не откопают, да можно и не откапывать

anonymous ()
Ответ на: комментарий от anonymous

Лучше взять Dyalog APL. «Среда» разработки на порядок навороченнее и сам интерпретатор шлифуется годами лучшими умами мира. Он сейчас бесплатен для некоммерческого применения. Загрузка bmp - можно посмотреть здесь - http://help.dyalog.com/12.0/index.html?page=html/bitmap object.htm

Как найти радиус самой тёмной части кольца? Как найти «массу» кольца (требуется к интенсивности каждой точки применить какую-то функцию, типа экспоненты и просуммировать)?

См. ниже. Обучение APL'ю на Лоре - это похоже на шутку.

Существует ли простой способ записать эти операции на APL вместо муторного разворачивания в 1-мерные массивы и обработки каждой точки?

Разворачивать или неразворачивать - это дело такое. N-мерные массивы - это хлеб с маслом APL'я.

Если есть реальные задачи и бюджет, то можно по-общаться более предметно.

anonymous ()
Ответ на: комментарий от anonymous

Кстати есть ещё язык J, и у него основная реализация свободна. Это современный наследник APL, использующий только ASCII

Xenius ★★★★★ ()

Аж целый язык придумали неосиляторы for.

AVL2 ★★★★★ ()
Ответ на: комментарий от r3lgar

Может это просто народ ничем серьезным уже как 40 лет не занимается?

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

anonymous ()
Ответ на: комментарий от anonymous

Может это просто народ ничем серьезным уже как 40 лет не занимается?

Да по сути так и есть, с небольшими оговорками. Наука уже давно держится на энтузиазме.

Язык отличный

На ISO-клавиатуре на нём кодить не очень-то приятно, но это уже не проблема языка.

r3lgar ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.