Jump to content

Джон М. Скоулз

Джон Скоулз
Скоулз в 2011 году
Рожденный ( 1948-04-24 ) 24 апреля 1948 г.
Англия
Умер 18 февраля 2019 г. (18 февраля 2019 г.) (70 лет)
Образование бакалавр наук ; Манчестерский университет ; 1969 год
Известный АПЛ
Прямые функции
Награды Премия Айверсона [1]
Научная карьера
Поля Информатика
Учреждения ICL
WS Аткинс Лтд.
Европейское космическое агентство
ООО Диалог.
Веб-сайт dfns .диалог

Джон Морли Скоулз (1948–2019) — британский учёный-компьютерщик . Свою профессиональную карьеру он посвятил разработке языка программирования APL . Он был разработчиком и исполнителем прямых функций .

Персональный

[ редактировать ]

Джон Скоулз родился 24 апреля 1948 года в семье Джерри и Эми Скоулз. Он вырос в Лимингтон-Спа , Уорикшир, Англия, и посещал Лимингтонский колледж для мальчиков в период с 1960 по 1966 год. В период с 1966 по 1969 год он учился в Манчестерском университете и получил степень бакалавра (с отличием) по математике. [2]

Скоулз в своей жизни обладал поэтическими и романтическими качествами. Помимо APL, он также находил красоту в природе, опере, музыке Тома Уэйтса , литературе Джеймса Джойса , [3] поэзия У. Б. Йейтса . Он был членом общества Джойса в Дублине . В 2013 году он и его жена Флора Даулинг поехали в Слайго в Летнюю школу имени В.Б. Йейтса и познакомились с поэтом Симусом Хини летом перед смертью Хини. [2]

Сторона APL и романтическая сторона часто встречались: видео «Поиск в глубину» [4] ( ниже ) было записано на рассвете в день летнего солнцестояния 2014 года, с пением птиц в воздухе, когда он и его жена находились на 21-дневном ретрите по дзен во Франции под руководством Тич Нят Хана . Скоулз был доволен как техническим содержанием, так и условиями этой работы. [2]

Первой работой Скоулза была должность стажера-программиста в компании International Computers Limited (ICL) (1969–70), а затем он перешел в отдел исследования операций компании WS Atkins в Эпсоме , графство Суррей (1971–75), а затем в отдел поддержки продаж. Департамент в Уоррингтоне , Ланкашир (1976–77). С 1977 по 1978 год он работал в Европейском космическом агентстве в Мадриде, Испания, в качестве программиста проекта International Ultraviolet Explorer . Затем он вернулся в ICL Dataskil, работая над APL для операционной системы VME/B (1978–82). В 1982 году он начал проект Dyalog APL для Unix -машин. [5] [6] а в 1988 году стал партнером и директором компании «Диалог». В 2004 году Скоулз продал свои акции компании, но продолжил работу консультантом и, по его словам, продолжил свой страстный интерес к программированию APL на различные математические темы в целом и функциональное программирование и dfns в частности. Или « ботаник », как он это еще называл. [2]

Прямые функции (dfns)

[ редактировать ]

Кеннет Э. Айверсон , изобретатель APL, был недоволен способом определения пользовательских функций. В 1974 году он разработал «формальное определение функции» или «прямое определение» для использования в изложении. [7] Прямое определение состоит из двух или четырех частей, разделенных двоеточиями:

name : expression
name : expression0 : proposition : expression1

В прямом определении обозначает левый аргумент и правильный аргумент. В первом случае результат expression является результатом функции; во втором случае результатом функции является результат expression0 если proposition оценивается как 0 или expression1 если его значение равно 1. Присвоения внутри прямого определения являются динамически локальными . Примеры использования прямого определения можно найти в на премию Тьюринга 1979 года. лекции [8] и в книгах и прикладных документах. [9] [10] [11] [12] [13]

Прямое определение было слишком ограничено для использования в более крупных системах. Идеи были развиты несколькими авторами в многочисленных работах. [14] [15] [16] [17] [18] [19] [20] но результаты были громоздкими. Из них «альтернативное определение функции APL» Бунда в 1987 г. [19] наиболее близок к текущим возможностям, но имеет недостатки, связанные с конфликтами с существующими символами и обработкой ошибок, что могло бы вызвать практические трудности, и так и не был реализован. Основные выводы из различных предложений заключались в том, что (а) определяемая функция является анонимной , с последующим присвоением имени (если требуется) путем присвоения; (б) функция обозначается символом и тем самым обеспечивает анонимную рекурсию . [13]

В 1996 году Скоулз изобрел прямые функции или dfns (произносится как «ди-фанс»), что стало важным отличием APL начала 21 века по сравнению с предыдущими версиями. [21] [22] [23] [24] Dfns — это уникальная комбинация программирования массивов , функций высшего порядка и функционального программирования . Идея возникла в 1989 году, когда он прочитал специальный выпуск The Computer Journal, посвященный функциональному программированию. [25] Затем он приступил к изучению функционального программирования и почувствовал сильную мотивацию («больной желанием», как Йейтс) перенести эти идеи в APL. [23] [24] Первоначально он действовал скрытно, потому что опасался, что изменения могут быть сочтены слишком радикальными и ненужным усложнением языка; другие наблюдатели говорят, что он действовал скрытно, потому что коллеги «Диалога» не были в восторге и считали, что он зря тратит время и доставляет людям неприятности. Dfns были впервые представлены на форуме поставщиков Dyalog на конференции APL '96 и выпущены в Dyalog APL в начале 1997 года. [21] Принятие и признание пришли медленно. Еще в 2008 году в «Диалоге» в 25 лет [6] в публикации, посвящённой 25-летию компании Dyalog Ltd, dfns почти не упоминались (упоминались дважды как «динамические функции» и без подробностей). По состоянию на 2019 год dfns реализован в Dyalog APL, [26] НАРС2000, [27] и нгн/апл. [28] Они также играют ключевую роль в использовании вычислительных возможностей графического процессора (графического процессора). [29] [13]

Dfns проиллюстрирован здесь на примере. Гораздо более подробное объяснение и примеры можно найти в статье о прямых функциях и в ссылках. [22] [13] [30]

Быстрая сортировка массива работает путем случайного выбора «опорной точки» среди ее основных ячеек, а затем объединения отсортированных основных ячеек, которые строго предшествуют опорной точке, основных ячеек, равных опорной точке, и отсортированных основных ячеек, которые строго следуют за опорной точкой, как это определено путем сравнения функция ⍺⍺. Определяется как dop (прямой оператор ) Q:

   Q{1≥≢⍵:⍵  ( ⌿⍨0>s)(⌿⍨0=s) ⌿⍨0<s ⍺⍺ ?≢}

   ⍝ precedes            ⍝ follows            ⍝ equals
   2 (×-) 8              8 (×-) 2             8 (×-) 8
¯1                    1                    0

   x 2 19 3 8 3 6 9 4 19 7 0 10 15 14

   (×-) Q x
0 2 3 3 4 6 7 8 9 10 14 15 19 19

Q3 это вариант, который объединяет три части, заключенные в функцию вместо частей как таковых . Три части, генерируемые на каждом рекурсивном этапе, очевидны в структуре конечного результата. Применяя функцию, полученную из Q3 к одному и тому же аргументу несколько раз дает разные результаты, поскольку опорные точки выбираются случайным образом. по порядку Обход результатов дает тот же отсортированный массив.

   Q3{1≥≢⍵:⍵  ( ⌿⍨0>s)(⌿⍨0=s)⍪⊂ ⌿⍨0<s ⍺⍺ ?≢}

   (×-) Q3 x
┌────────────────────────────────────────────┬─────┬┐
│┌──────────────┬─┬─────────────────────────┐│19 19││
││┌──────┬───┬─┐│6│┌──────┬─┬──────────────┐││     ││
│││┌┬─┬─┐│3 34││ ││┌┬─┬─┐│9│┌┬──┬────────┐│││     ││
│││││02││    ││ ││││78││ │││10│┌──┬──┬┐││││     ││
│││└┴─┴─┘│    ││ ││└┴─┴─┘│ │││  ││1415││││││     ││
││└──────┴───┴─┘│ ││       │││  │└──┴──┴┘││││     ││
││               ││       │└┴──┴────────┘│││     ││
││               │└──────┴─┴──────────────┘││     ││
│└──────────────┴─┴─────────────────────────┘│     ││
└────────────────────────────────────────────┴─────┴┘
   (×-) Q3 x
┌───────────────────────────┬─┬─────────────────────────────┐
│┌┬─┬──────────────────────┐│7│┌────────────────────┬─────┬┐│
│││0│┌┬─┬─────────────────┐││ ││┌──────┬──┬────────┐│19 19│││
│││ │││2│┌────────────┬─┬┐│││ │││┌┬─┬─┐│10│┌──┬──┬┐││     │││
│││ │││ ││┌───────┬─┬┐│6│││││ │││││89││  ││1415││││     │││
│││ │││ │││┌┬───┬┐│4│││ │││││ │││└┴─┴─┘│  │└──┴──┴┘││     │││
│││ │││ │││││3 3│││ │││ │││││ ││└──────┴──┴────────┘│     │││
│││ │││ │││└┴───┴┘│ │││ │││││ │└────────────────────┴─────┴┘│
│││ │││ ││└───────┴─┴┘│ │││││                              
│││ │││ │└────────────┴─┴┘│││                              
│││ │└┴─┴─────────────────┘││                              
│└┴─┴──────────────────────┘│                              
└───────────────────────────┴─┴─────────────────────────────┘

Приведенная выше формулировка не нова; см., например, рисунок 3.7 классической книги «Проектирование и анализ компьютерных алгоритмов» . [31] Однако, в отличие от пиджин-программы АЛГОЛ, показанной на рис. 3.7, Q и Q3 являются исполняемыми, а частичный порядок, используемый при сортировке, является операндом, (×-) примеры выше. [13]

Статьи и презентации

[ редактировать ]
  • 1985. Операторы и вложенные массивы в Dyalog APL [32]
  • 1989 — SM: Полноэкранный менеджер для Dyalog APL [33]
  • Семинар 1990 г. по определенным операторам [34]
  • 1990 Новая среда разработки в Dyalog APL. [35]
  • Встреча 1994 г .: Пространства имен Dyalog APL [36]
  • 1996 Прямые функции в Dyalog APL [21]
  • Семинар APL98 1998 г. - Потоки в Dyalog APL [37]
  • 1998 Threads: Введение в многопоточность [38]
  • 2001 D: Функциональное подмножество Dyalog APL [39]
  • Письмо 2001 г .: Локализация эффектов системных функций в D [40]
  • 2003 г. [адрес электронной почты защищен] [41]
  • 2003 г. Распределение затрат по венгерскому методу [42]
  • 2004 Заметка о графиках [43]
  • 2005 Как писать компьютерные программы [44]
  • 2006 Языковые расширения [45]
  • 2006 Функции как результаты [46]
  • 2007 г. Улучшения производительности версии 11.1 [47]
  • 2007 Расследование в отношении операторов высшего уровня [48]
  • 2008 Выступление переводчика [49]
  • 2008 г. Журнальные файлы (видео) [50] (текст) [51]
  • 2008 Призыв к простоте (видео) [52]
  • 2009 Игра жизни Конвея в APL (видео) [53]
  • 2009 Введение в D-функции (видео 1, [54] 2 [55] )
  • 2009 года Сессионные сенсации [56]
  • 2009 Комплексные числа (видео) [57]
  • Семинар 2010 г. - Введение в D-функции (видео 1) [58] (видео 2) [59]
  • 2011 г. Семинар по изданию конференции [60]
  • 2011 г. Представляем конференц-издание Dyalog '11 [61]
  • 2011 APL# (видео) [62] (текст) [63]
  • 2011 Функциональные поезда для Dyalog APL [64]
  • 2011 Что такое функциональное программирование? (видео) [65]
  • 2011 г. Закрытие [66]
  • 2012 г. Потенциальные языковые возможности версии 14.0, (видео) [67] (текст) [68]
  • 2012 Программирование без состояний (видео) [69]
  • 2012 Вызов Алана Тьюринга (видео) [70]
  • 2012 Решатель судоку в APL (видео) [71]
  • 2013 Train Spotting в версии 14.0 (видео) [72] (текст) [73]
  • 2013 Социальные навыки для программистов (видео) [74]
  • 2014 Поиск в глубину в APL (видео) [4]
  • 2014 Отвлечения (видео) [75]
  • 2015 Dya(b)log (video) [76] (текст) [77]
  • Предложения будущих операторов на 2015 год : вырезать, уменьшить и объединить (видео) [78] (текст) [79]
  • 2016 Новые примитивные функции и операторы (видео) [80] (текст) [81] (сценарий) [82]
  • Внедрение Dyalog, 2016 : первые годы (видео) [83]
  • 2017 Практический пример: перекодирование от процедурного стиля к денотативному (видео) [84] (текст) [85]
  • 2018 Dfns — прошлое, настоящее и будущее (видео) [23] (текст) [24]

остроумие

[ редактировать ]

Скоулз был хорошо известен среди коллег своим остроумием, чувством юмора и чувством юмора. Его выступления «после ужина» на конференциях «Диалог» были долгожданными событиями. Некоторые из них из списка выше:

  • 2008 Призыв к простоте (видео) [52]
  • 2009 Комплексные числа (видео) [57]
  • 2011 Что такое функциональное программирование? (видео) [65]
  • 2012 Программирование без состояний (видео) [69]
  • 2012 Вызов Алана Тьюринга (отрывок из предыдущего материала, видео) [70]
  • 2013 Социальные навыки для программистов (видео) [74]
  • 2014 Отвлечения (видео) [75]

Другие примеры можно найти в Схолизмах . [86]

  1. ^ «Премия Кеннета Э. Айверсона» . Ассоциация вычислительной техники . Проверено 15 сентября 2019 г.
  2. ^ Jump up to: а б с д Служба в честь жизни Джона Морли Скоулза , 4 марта 2019 г.
  3. ^ Скоулз, Джон (3 февраля 2015 г.), Чтение из «Улисса» Джойса (аудио) , получено 24 сентября 2019 г.
  4. ^ Jump up to: а б Скоулз, Джон (21 июня 2014 г.). Поиск в глубину в APL (видео). Ютуб . Проверено 21 сентября 2019 г.
  5. ^ Поливка, Рэй (март 1998 г.). «Интервью с Питером Доннелли и Джоном Скоулзом». APL Котировка Quad . 28 (3): 7–12. дои : 10.1145/309730.309731 . S2CID   28437582 .
  6. ^ Jump up to: а б Диалог (сентябрь 2008 г.). «Диалог в 25» (PDF) . Вектор . Проверено 20 сентября 2019 г.
  7. ^ Айверсон, Кеннет Э. (1974), «Глава 10, Определение формальной функции» , Элементарные функции , IBM Corporation , получено 18 сентября 2019 г.
  8. ^ Айверсон, Кеннет Э. (август 1980 г.). «Нотация как инструмент мышления» . Коммуникации АКМ . 23 (8): 444–465. дои : 10.1145/358896.358899 . Проверено 8 апреля 2016 г.
  9. ^ Айверсон, Кеннет Э. (1976). Элементарный анализ . АПЛ Пресс.
  10. ^ Орт, Д.Л. (1976). Исчисление в новом ключе . АПЛ Пресс.
  11. ^ Хуэй, Роджер (май 1987 г.). «Некоторые варианты использования { и }» . Материалы конференции APL 87 . Проверено 15 апреля 2016 г.
  12. ^ Макдоннелл, Э.Э. (май 1987 г.), «Жизнь: отвратительная, жестокая и короткая» , Материалы конференции APL 87 , получено 6 октября 2019 г.
  13. ^ Jump up to: а б с д и Хуэй, Роджер ; Кромберг, Мортен (июнь 2020 г.). «АПЛ с 1978 года» . Труды ACM по языкам программирования . 4 (ХОПЛ): 1–108. дои : 10.1145/3386319 . S2CID   218517570 .
  14. ^ Айверсон, Кеннет Э. (26 апреля 1978 г.), «Операторы и функции, §8» , номер отчета об исследовании № RC7091 , IBM Corporation , получено 19 сентября 2019 г.
  15. ^ Айверсон, Кеннет Э .; Вустер, Питер (сентябрь 1981 г.). «Оператор определения функции». Материалы конференции APL81, APL Quote Quad . 12 (1).
  16. ^ Чейни, Карл М. (март 1981 г.), Справочное руководство по системе вложенных массивов APL * Plus, §4.17 (PDF) , STSC, Inc. , получено 18 сентября 2019 г.
  17. ^ Айверсон, Кеннет Э. (6 января 1983 г.), Rationalized APL , IP Sharp Associates , получено 19 сентября 2019 г.
  18. ^ Айверсон, Кеннет Э. (сентябрь 1987 г.). «Словарь АПЛ» . APL Котировка Quad . 18 (1): 5–40. дои : 10.1145/36983.36984 . S2CID   18301178 . Проверено 19 сентября 2019 г.
  19. ^ Jump up to: а б Бунда, Джон (май 1987 г.). «Обозначение определения функции APL». Материалы конференции APL87, APL Quote Quad . 17 (4).
  20. ^ Хуэй, Роджер ; и др. (июль 1990 г.). "АПЛ\?" . Материалы конференции APL 90: За будущее . Том. 20. стр. 192–200. дои : 10.1145/97808.97845 . ISBN  089791371X . S2CID   235453656 . Проверено 10 сентября 2019 г.
  21. ^ Jump up to: а б с Скоулз, Джон (октябрь 1996 г.). «Прямые функции в Dyalog APL» (PDF) . Вектор . 13 (2) . Проверено 16 сентября 2019 г.
  22. ^ Jump up to: а б Скоулз, Джон (1998–2019), Рабочая область прямых функций , получено 15 сентября 2019 г.
  23. ^ Jump up to: а б с Скоулз, Джон (31 октября 2018 г.). Дфнс: прошлое, настоящее и будущее (видео). Встреча пользователей Dialog '18 . Проверено 21 сентября 2019 г.
  24. ^ Jump up to: а б с Скоулз, Джон (31 октября 2018 г.), Dfns: Past, Present and Future (текст) (PDF) , Встреча пользователей Dyalog '18 , получено 21 сентября 2019 г.
  25. ^ Уодлер, Филип Л.; и др. (1 января 1989 г.). «Специальный выпуск по функциональному программированию». Компьютерный журнал . 32 (2).
  26. ^ Диалог (15 августа 2019 г.). Справочное руководство по программированию Dyalog, версия 17.1, Dfns & Dops, стр. 133–147 (PDF) . ООО "Диалог" . Проверено 30 сентября 2019 г.
  27. ^ Смит, Боб (2006–2019), NARS2000 , получено 18 сентября 2019 г.
  28. ^ Николов, Ник (сентябрь 2013 г.). «Компиляция APL в JavaScript» . Вектор . 26 (1) . Проверено 19 сентября 2019 г.
  29. ^ Сюй, Аарон (2019). Параллельный компилятор данных, размещенный на графическом процессоре (предварительный вариант) (кандидатская диссертация). Университет Индианы .
  30. ^ Хуэй, Роджер (26 ноября 2016 г.), История APL в 50 функциях , получено 21 сентября 2019 г.
  31. ^ Где, АВ ; Хопкрофт, JE ; Уллман, JD (1974), Разработка и анализ компьютерных алгоритмов , Аддисон-Уэсли
  32. ^ Скоулз, Джон (июль 1985 г.), «Операторы и вложенные массивы в Dyalog APL», Vector , 2 (1)
  33. ^ Куртин, AD; Скоулз, Дж. М. (август 1989 г.). «⎕sm: Полноэкранный менеджер для Dyalog APL». APL Котировка Quad . 19 (4): 107–112. дои : 10.1145/75145.75159 .
  34. ^ Скоулз, Джон (апрель 1990 г.), «Семинар по определенным операторам», Vector , 6 (4)
  35. ^ Скоулз, Джон (апрель 1990 г.), «Новая среда разработки в Dyalog APL», Vector , 6 (4)
  36. ^ Скоулз, Джон (июль 1994 г.), «Встреча: пространства имен Dyalog APL» , Vector , 11 (1) , получено 21 сентября 2019 г.
  37. ^ Скоулз, Джон (октябрь 1998 г.), «Семинар APL98 – Потоки в Dyalog APL», Vector , 15 (2)
  38. ^ Скоулз, Джон (октябрь 1998 г.), «Потоки: введение в многопоточность», Vector , 15 (2)
  39. ^ Скоулз, Джон (апрель 2001 г.), «D: Функциональное подмножество Dyalog APL» , Vector , 17 (4) , получено 21 сентября 2019 г.
  40. ^ Скоулз, Джон (июль 2001 г.), «Локализация эффектов системных функций в D», Vector , 18 (1)
  41. ^ Скоулз, Джон (июль 2003 г.), « [электронная почта защищена] », Vector , 20 (1)
  42. ^ Скоулз, Джон (июль 2003 г.), «Распределение затрат по венгерскому методу» , Vector , 20 (1) , получено 21 сентября 2019 г.
  43. ^ Скоулз, Джон (апрель 2004 г.), «Заметки о графиках», Vector , 20 (4)
  44. ^ Скоулз, Джон (май 2005 г.), «Как писать компьютерные программы» (PDF) , Vector , 21 (3) , получено 21 сентября 2019 г.
  45. ^ Скоулз, Джон (17 октября 2006 г.), Языковые расширения , Конференция пользователей Dyalog '06
  46. ^ Скоулз, Джон (17 октября 2006 г.), Функции как результаты (PDF) , Конференция пользователей Dyalog '06 , получено 21 сентября 2019 г.
  47. ^ Делькрос, Николас; Скоулз, Джон (1 октября 2007 г.), Улучшения производительности версии 11.1 , Конференция пользователей Dyalog '07
  48. ^ Скоулз, Джон (1 октября 2007 г.), Исследование операторов более высокого уровня , Конференция пользователей Dyalog '07
  49. ^ Делькрос, Николас; Скоулз, Джон (13 октября 2008 г.), Производительность переводчика , Конференция пользователей Dyalog '08
  50. ^ Скоулз, Джон; Смит, Ричард (13 октября 2008 г.). Журналируемые файлы (видео). Конференция пользователей Dialog '08 . Проверено 21 сентября 2019 г.
  51. ^ Скоулз, Джон; Смит, Ричард (13 октября 2008 г.), Журнальные файлы (текст) , Конференция пользователей Dyalog '08 , получено 21 сентября 2019 г.
  52. ^ Jump up to: а б Скоулз, Джон (13 октября 2008 г.). Призыв к простоте (видео). Конференция пользователей Dialog '08 . Проверено 21 сентября 2019 г.
  53. ^ Скоулз, Джон (26 января 2009 г.). Игра жизни Конвея в APL (видео). Ютуб . Проверено 21 сентября 2019 г.
  54. ^ Скоулз, Джон (13 сентября 2009 г.). Введение в D-функции (видео). Конференция пользователей Dialog '09 . Проверено 21 сентября 2019 г.
  55. ^ Скоулз, Джон (13 сентября 2009 г.). Введение в D-функции (видео). Конференция пользователей Dialog '09 . Проверено 21 сентября 2019 г.
  56. ^ Скоулз, Джон (13 сентября 2009 г.), Session Whizbangs , Конференция пользователей Dyalog '09
  57. ^ Jump up to: а б Скоулз, Джон (14 сентября 2009 г.). Комплексные числа (видео). Конференция пользователей Dialog '09 . Проверено 21 сентября 2019 г.
  58. ^ Скоулз, Джон (14 сентября 2010 г.). Практикум — Введение в D-функции (видео). Конференция пользователей Dialog '10 . Проверено 21 сентября 2019 г.
  59. ^ Скоулз, Джон (14 сентября 2010 г.). Практикум — Введение в D-функции (видео). Конференция пользователей Dialog '10 . Проверено 21 сентября 2019 г.
  60. ^ Фоад, Джей; Скоулз, Джон; Хуэй, Роджер (2 октября 2011 г.), Семинар Conference Edition , Конференция пользователей Dyalog '11
  61. ^ Скоулз, Джон; Хуэй, Роджер (3 октября 2011 г.), Представляем Dyalog '11 Conference Edition , Конференция пользователей Dyalog '11
  62. ^ Кромберг, Мортен; Скоулз, Джон; Манктелов, Джонатан (3 октября 2011 г.). APL# (видео). Конференция пользователей Диалог '11 . Проверено 21 сентября 2019 г.
  63. ^ Кромберг, Мортен; Скоулз, Джон; Манктелов, Джонатан (3 октября 2011 г.), APL# (текст) , Конференция пользователей Dyalog '11 , получено 21 сентября 2019 г.
  64. ^ Скоулз, Джон (3 октября 2011 г.), Функциональные поезда для Dyalog APL , Конференция пользователей Dyalog '11
  65. ^ Jump up to: а б Скоулз, Джон; Хуэй, Роджер (3 октября 2011 г.). Что такое функциональное программирование? (видео). Конференция пользователей Dialog '11 . Проверено 21 сентября 2019 г.
  66. ^ Скоулз, Джон (5 октября 2011 г.), Замыкания , Конференция пользователей Dyalog '11
  67. ^ Скоулз, Джон; Хуэй, Роджер (15 октября 2012 г.). Потенциальные возможности языка версии 14.0 (видео). Конференция пользователей Dialog '12 . Проверено 21 сентября 2019 г.
  68. ^ Скоулз, Джон; Хуэй, Роджер (15 октября 2012 г.), Потенциальные возможности языка версии 14.0 (текст) , Конференция пользователей Dyalog '12 , получено 21 сентября 2019 г.
  69. ^ Jump up to: а б Скоулз, Джон (15 октября 2012 г.). Программирование без состояний (видео). Конференция пользователей Dialog '12 . Проверено 21 сентября 2019 г.
  70. ^ Jump up to: а б Скоулз, Джон (15 октября 2012 г.). Звонок Алану Тьюрингу (видео). Конференция пользователей Dialog '12 . Проверено 22 сентября 2019 г.
  71. ^ Скоулз, Джон (27 октября 2012 г.). Решатель судоку в APL (видео). Ютуб . Проверено 21 сентября 2019 г.
  72. ^ Скоулз, Джон (22 октября 2013 г.). Споттинг поездов в версии 14.0 (видео). Конференция пользователей Dialog '13 . Проверено 21 сентября 2019 г.
  73. ^ Скоулз, Джон (22 октября 2013 г.), Train Spotting в версии 14.0 (текст) (PDF) , Конференция пользователей Dyalog '13 , получено 21 сентября 2019 г.
  74. ^ Jump up to: а б Скоулз, Джон (22 октября 2013 г.). Социальные навыки для программистов (видео). Конференция пользователей Dialog '13 . Проверено 21 сентября 2019 г.
  75. ^ Jump up to: а б Скоулз, Джон (22 сентября 2014 г.). Отвлекающие факторы (видео). Встреча пользователей Dialog '14 . Проверено 21 сентября 2019 г.
  76. ^ Смит, Фиона; Скоулз, Джон; Смит, Ричард; Хуэй, Роджер (7 сентября 2015 г.). Дья(б)лог (видео). Встреча пользователей Dialog '15 . Проверено 21 сентября 2019 г.
  77. ^ Смит, Фиона; Скоулз, Джон; Смит, Ричард; Хуэй, Роджер (7 сентября 2015 г.), Dya(b)log (текст) (PDF) , Встреча пользователей Dyalog '15 , получено 21 сентября 2019 г.
  78. ^ Скоулз, Джон; Хуэй, Роджер (10 сентября 2015 г.), Предложения будущих операторов: вырезать, уменьшить и объединить (видео) , Встреча пользователей Dyalog '15 , получено 21 сентября 2019 г. (текст)
  79. ^ Скоулз, Джон; Хуэй, Роджер (10 сентября 2015 г.), Предложения будущих операторов: вырезать, уменьшить и объединить (текст) , Встреча пользователей Dyalog '15 , получено 21 сентября 2019 г. (текст)
  80. ^ Скоулз, Джон; Хуэй, Роджер (10 октября 2016 г.). Новые примитивные функции и операторы (видео). Встреча пользователей Dialog '16 . Проверено 21 сентября 2019 г.
  81. ^ Скоулз, Джон; Хуэй, Роджер (10 октября 2016 г.), Новые примитивные функции и операторы (текст) , Встреча пользователей Dyalog '16 , получено 21 сентября 2019 г.
  82. ^ Скоулз, Джон; Хуэй, Роджер (10 октября 2016 г.), Новые примитивные функции и операторы (сценарий) , Встреча пользователей Dyalog '16 , получено 21 сентября 2019 г.
  83. ^ Тейлор, Стивен; Стритер, Джефф; Скоулз, Джон (12 октября 2016 г.). Внедрение Dyalog: первые годы (видео). Встреча пользователей Dialog '16 . Проверено 21 сентября 2019 г.
  84. ^ Скоулз, Джон (11 сентября 2017 г.). Практический пример: перекодирование из процедурного стиля в денотативный (видео). Встреча пользователей Dialog '17 . Проверено 21 сентября 2019 г.
  85. ^ Скоулз, Джон (11 сентября 2017 г.), Практический пример — перекодирование от процедурного стиля к денотативному (PDF) , Встреча пользователей Dyalog '17 , получено 21 сентября 2019 г.
  86. ^ Скоулз, Джон (март 2019 г.), Хуэй, Роджер (редактор), Схолизмы , данные получены 20 сентября 2019 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 18e7903bcb0c6a81a00a0738397ef6fc__1711825560
URL1:https://arc.ask3.ru/arc/aa/18/fc/18e7903bcb0c6a81a00a0738397ef6fc.html
Заголовок, (Title) документа по адресу, URL1:
John M. Scholes - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)