Jump to content

ПИЛОТ

Programmed Inquiry, Learning или Teaching ( PILOT ) — простой язык программирования высокого уровня, разработанный в 1960-х годах. [1] Как и его младший брат LOGO , это был первый шаг в освоении технологии компьютерного обучения .

PILOT — это императивный язык, похожий по структуре на BASIC и FORTRAN по своей базовой компоновке и структуре. Его ключевые слова представляют собой отдельные символы, T для «типа» для печати текста или A для «принятия» — для ввода значений от пользователя.

Его история [ править ]

PILOT был разработан Джоном Амсденом Старкуэзером , профессором психологии в медицинском центре Калифорнийского университета в Сан-Франциско . В 1962 году он разработал простой язык для автоматизации обучающих тестов под названием Computest. Начиная с 1968 года, он разработал следующий проект под названием PILOT для различных компьютеров того времени, таких как SDS 940 . [2]

Синтаксис языка [ править ]

Строка кода PILOT содержит (слева направо) следующие элементы синтаксиса :

  • необязательная метка
  • командное письмо
  • необязательный Y (да) или N (нет)
  • необязательное условное выражение в круглых скобках
  • двоеточие (":")
  • операнд разделенных или несколько операндов, запятыми .

Метка также может быть одна в строке и не сопровождаться другим кодом. Синтаксис метки представляет собой звездочку, за которой следует идентификатор (буквенно-цифровая строка с буквенным начальным символом).

Командные буквы [ править ]

Следующие команды используются в «core PILOT». Строки, начинающиеся с «R:», обозначают примечание (или комментарий), поясняющее последующий код.

А
Принять ввод в « буфер приема ». Примеры:
 R:Next line of input replaces current contents of accept buffer
 A:
 R:Next line of input replaces accept buffer, and string variable 'FREE'
 A:$FREE
 R:Next 3 lines of input assigned to string variables 'X', 'Y' and 'Z'
 A:$X,$Y,$Z
 R:Numeric input assigned to numeric variable "Q"
 A:#Q
С
Вычислите и присвойте числовое значение. Большинство реализаций PILOT поддерживают только целочисленную арифметику и не используют массивы . Пример:
 R:Assign arithmetic mean of #X and #Y to #AM
 C:#AM=(#X+#Y)/2
Д
Измерьте массив в некоторых реализациях.
И
Завершить подпрограмму (возврат из нее) или (если вне подпрограммы) прервать программу. Всегда используется без операнда.
Дж
Перейти к метке. Пример:
  J:*RESTART
М
Сопоставьте буфер приема со строковыми переменными или строковыми литералами . Пример:
  R:Search accept buffer for "TRUTH", the value of MEXICO and "YOUTH", in that order
  M:TRUTH,$MEXICO,YOUTH

Первая строка соответствия (если есть), которая является подстрокой приемного буфера, присваивается специальной переменной $MATCH. буфера Символы слева от первого совпадения назначаются $LEFT, а символы справа — $RIGHT.

Флаг совпадения устанавливается на «да» или «нет», в зависимости от того, установлено ли совпадение. Любая инструкция, после буквы команды которой стоит буква Y, обрабатывается только в том случае, если установлен флаг соответствия. Операторы с N обрабатываются, только если флаг не установлен.

Н
Эквивалент TN: (введите, если последнее совпадение не удалось)
Р
Операнд R: является комментарием и поэтому не имеет никакого эффекта.
Т
Операнд «Тип» в качестве вывода. Примеры:
  R:The next line prints a literal string
  T:Thank you for your support.
  R:The next line combines a literal string with a variable expression
  T:Thank you, $NAME.
В
Используйте (вызовите) подпрограмму. Подпрограмма начинается с метки и заканчивается буквой E: Пример:
  R:Call subroutine starting at label *INITIALIZE
  U:*INITIALIZE
И
Эквивалент TY: (введите, если последнее совпадение было успешным)
Круглые скобки
Если в инструкции есть выражение в скобках, это условное выражение, и инструкция обрабатывается только в том случае, если проверка имеет значение «истина». Пример:
  R:Type message if x>y+z
  T(#X>#Y+#Z):Condition met

Производные [ править ]

Расширения ядра PILOT включают массивы и числа с плавающей запятой в Apple PILOT для Apple II , а также LOGO в стиле черепаховую графику в Atari PILOT для 8-битных компьютеров Atari . [3]

В период с 1979 по 1983 год группой пользователей UK PILOT руководил Алек Вуд, учитель гимназии для мальчиков Уиррал в Мерсисайде, Великобритания. Для микрокомпьютеров того времени было создано несколько версий машинного кода мини-ПИЛОТ, а школа в Шотландии разработала интерактивный учебник по иностранному языку, в котором ученики вели следы по городу, задавая вопросы и отвечая на них на немецком, французском и т. д. Статья в декабрьском журнале В 1979 году в журнале Computer Age была описана ранняя реализация под названием Tiny Pilot и приведен полный список машинного кода.

Версии PILOT, наложенные на интерпретаторы BASIC первых микрокомпьютеров, были известны в конце 1970-х и начале 1980-х годов, и журнал Byte Magazine в какой-то момент опубликовал не- тьюринговскую полную производную от PILOT, известную как Waduzitdo Ларри Хериарти, как способ продемонстрировать, что такое PILOT. компьютер был способен. [4] [5] PETPILOT (PILOT для Commodore PET) был первым языком для PET, не принадлежащим Commodore, и был написан на Microsoft BASIC, который поставлялся вместе с PET, при небольшой помощи Билла Гейтса. Он был создан в 1979 году Дэйвом Гомбергом и мог работать на 4K PET (который никогда не поставлялся) и хорошо работал на 8K PET, поставляемых Commodore. Оно было написано в гостиной Ларри Тесслера на ПЭТ-серийном номере 2.

В Vanilla PILOT 1983 года для Commodore 64 добавлена ​​графика черепахи. [6] как и Super Turtle PILOT , который был опубликован в виде типового списка в октябрьском номере журнала COMPUTE за 1987 год! журнал. [7]

В 1991 году Институт инженеров по электротехнике и электронике (IEEE) опубликовал стандарт для пилотов как IEEE Std 1154-1991. С тех пор оно было отозвано. [8] Эталонная реализация, основанная на этом, была реализована Эриком Рэймондом и поддерживалась (хотя и неохотно) в течение следующих 15 лет. [9]

В 1990 году eSTeem PILOT для компьютеров Atari ST был разработан и запрограммирован Томом Нильсеном, EdD. Основанный на стандартах IEEE для PILOT, он включает в себя специфичные для Atari функции, такие как управление устройствами Laserdisc и CDROM. [10]

Реализация psPILOT для любителей, созданная в 2018 году и частично основанная на стандарте IEEE, была реализована с использованием языка сценариев Microsoft PowerShell. [11]

Ссылки [ править ]

  1. ^ Роб Линвуд. «Ресурсный центр ПИЛОТ» . Проект Сорсфордж . Проверено 13 октября 2011 г.
  2. ^ Сючжи Чжоу (1998). «Реестр документов Джона А. Старквезера, 1965–1985 гг. » Библиотека Калифорнийского университета в Сан-Франциско . Получено 13 , октября
  3. ^ Джим Конлан, Трейси Делиман (1983). Atari PILOT для новичков . Рестон Паблишинг. ISBN  9780835903028 .
  4. ^ Брайан Коннорс (6 апреля 2001 г.). «Вадузитдо 2001» . Проверено 13 октября 2011 г.
  5. ^ Ларри Хериарти (сентябрь 1978 г.). «ВАДУЗИТДО: Как написать язык, используя 256 слов или меньше». Байт .
  6. ^ «Ванильный ПИЛОТ, ПИЛОТ с черепашьей графикой» . Инфомир . 12 сентября 1983 г., стр. 67–69 . Проверено 13 октября 2011 г.
  7. ^ Atarimagazines.com — ВЫЧИСЛЯЙТЕ! Выпуск 89, октябрь 1987 г., стр.74.
  8. ^ Стандарт IEEE 1154-1991 для программируемого исследования, обучения или преподавания (ПИЛОТ) . Комитет по стандартам IEEE. 1991. doi : 10.1109/IEESTD.1991.108548 . ISBN  0-7381-1184-8 .
  9. ^ «Двадцать лет спустя» .
  10. ^ «Пресс-релиз: eSTeem PILOT» .
  11. ^ «псПилот» .

Дальнейшее чтение [ править ]

  • Джон Старквезер (1985). Руководство пользователя по Pilot . Прентис-Холл. ISBN  978-0-13-937755-6 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 08a8a5736d6423e391cfc18ea0541f5e__1715189580
URL1:https://arc.ask3.ru/arc/aa/08/5e/08a8a5736d6423e391cfc18ea0541f5e.html
Заголовок, (Title) документа по адресу, URL1:
PILOT - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)