Я знаю, что все 3 связаны друг с другом, и я видел немало ответов на проблемы в Project Euler, написанные на J, и несколько написанных K. Что мне интересно, что бы вы предложили и где бы вы посоветовали собирать материалы, чтобы узнать это?Изучение J/K/APL
ответ
Учитывая естество отдельных языков, а также наличие материала, я собираюсь пойти с J.
текущим интерпретатором J не является открытым исходным кодом, но язык спецификация. Поэтому, если официальный переводчик J больше не будет бесплатным, проект с открытым исходным кодом может его реализовать.
K, похоже, мертв и заменен на Q. Все лицензии на него, как представляется, являются собственностью, и интерпретатор оказывается сложнее найти (поскольку они пытаются продать kdb, а не Q).
Я не могу найти версию APL для использования.
Для APL: попробуйте NARS2000 –
Я нахожу, что J - самая полезная вещь в настоящее время. Я тоже жалуюсь на отсутствие современное решение с открытым исходным кодом, тем более, что J Software не заинтересована в поддержке одной из моих платформ, но похоже, что ситуация может измениться, поскольку, похоже, возрождение интереса к этим языкам. –
Посмотрите на APL faq по разделу: Где я могу найти APL для машины X?
Там же вики, что есть информация по http://aplwiki.com/Frontpage
Вы всегда можете попробовать +. Свободный от http://www.aplusdev.org/
Этот язык APL превратилась в J и Q
APL
Создано Кеннета Айверсон как оригинальный язык программирования массива. Использует набор символов, отличных от ASCII, поскольку зарезервированных слов нет. В British APL Association хранится обновленный список переводчиков (как бесплатных, так и коммерческих), а также информация о языках, поддерживаемых APL, которые описаны ниже.
A +
Создано Артур Уитни в качестве последующей деятельности в связи с APL. Исходный код доступен под лицензией GPL, а также включенное расширение XEmacs. Загрузите с website.
J
создал Кеннет Айверсон и Роджер Hui, это требует только ASCII символы. Источник использовал деньги, хотя недавно был выпущен под GPL. Загрузите с website.
K
Другой Артур Whitney язык, это также использует ASCII символы. Компания, стоящая за ней, с тех пор вышла из эксплуатации на языке, но есть открытый источник Kona.
Q
Построенный на вершине K включать SQL-подобный запрос/объединить возможности (таблицы встроенный контейнер), этот язык построен на обработку больших объемов данных. Некоммерческую лицензионную версию можно загрузить с website.
Что касается того, что активно используется, Q является довольно популярным в области финансов, в то время как J имеет некоторую поддержку со стороны научного сообщества и любителей. Эти два являются лучшим выбором для программирования массивов в наши дни.
J теперь с открытым исходным кодом: http://www.jsoftware.com/source.htm
Существует бесплатный переводчик APL называется NAS2000, но я считаю, что это полезно только для доказательства концепции. Иногда я получаю неправильные результаты (я запрограммировал в APL несколько лет назад на все: от 8K IBM 1130 до ПК/XT, и иногда я думаю, что результаты ошибочны), а в других случаях они просто ужасно медленны. Лучший случай в J работает так же быстро, как и все. Я никогда не использовал K, я попытался сделать около 100 проблем Эйлера в J, и я только начинаю понимать ранг. (Около 10 из них, я сделал в D, один в Lisp с поддержкой вычислений в J и один в целочисленном линейном программном пакете, который я тогда оставил для D, когда обнаружил, что он не даст мне правильный ответ, несмотря на то, что я которые, как полагают, являются закодированными ограничениями.
J - это, по сути, математический язык, и он хорошо подходит для большинства проблем Эйлера, так что он просто ухаживает и делает их, просматривая сайт jsoftware.com, когда вы Нужно, это самое лучшее, что вы можете сделать.
@Mark: Скомпилированный C, просмотренный в шестнадцатеричном просмотре, тоже не имеет особого смысла, но логика для этого беспорядка одинакова. – MPelletier