Примерами внутренних и промежуточных языков могут служить: язык представления графической и текстовой информации (ЯГТИ), языки графических метафайлов для хранения данных в архивах чертежей (графиков, диаграмм) и т. п.
Выходные языки исследования предназначены для представления результатов выполнения исследовательских процедур на ЭВМ, в том числе каких-либо рекомендаций, включая результаты исследования в форме, удовлетворяющей их дальнейшее применение.
Языки сопровождения и управления служат для непосредственного общения пользователя с ЭВМ в процессе решения задач. Эти языки, как правило, включают средства для корректировки и редактирования входных данных и заданий на исследование и поэтому содержат элементы входных и выходных языков, а также язык диагностических сообщений о допущенных ошибках.
По связи с универсальными языками программирования будем различать автономные и расширяющие языки. Автономные языки имеют собственные грамматики, соответствующий транслятор и могут применяться независимо от других языков программирования. Расширяющие языки строятся на основе грамматики другого языка и являются его проблемно-ориентированными дополнениями. Базой расширения чаще всего служат алгоритмические языки ПЛ/1, С и др. Такой подход позволяет использовать в языках исследования все имеющиеся в базовом языке мощные средства обработки данных и упростить связь языков исследования с другими программными средствами системы, а также обеспечить в значительной степени независимость языков исследования от типа используемой ЭВМ. К недостаткам расширяющих языков относится преимущественно их пакетный режим использования.
По оперативности языки будем разделять на диалоговые и пассивные. Диалоговые языки обеспечивают взаимодействие исследователя с ЭВМ на основе взаимного обмена сообщениями в реальном масштабе времени. Это позволяет оперативно получать все промежуточные результаты и управлять процессом исследования на ЭВМ.
Пассивные языки позволяют задавать входные данные и последовательность исследовательских операций и процедур в виде некоторого символического описания с последующей трансляцией этих описаний и выполнением в режиме пакетной обработки заданий.
По преимущественному способу представления информации будем выделять алфавитно-цифровые, графические, голосовые и смешанные языки исследования.
В алфавитно-цифровых (символических) языках описания задаются в виде строк символов или в виде таблиц.
В графических языках информация представляется в виде чертежей, графиков, схем, диаграмм и т. п. Для вывода информации в такой форме используют графопостроители, дисплеи, а для ввода — различные устройства кодирования графической информации, алфавитно-цифровую и функциональную клавиатуры и др. При решении задач многих исследуемых проблемах для исследователей привычной является графическая форма представления информации, поэтому графические языки являются наиболее эффективными для АСНИ.
Разработка голосовых языков общения человека с ЭВМ основывается на использовании устройств распознавания и синтеза речи. Их применение в качестве языков управления совместно с другими способами представления информации является перспективным направлением развития диалоговых языков исследования.
К языкам исследования предъявляют следующие основные требования: эффективность, полноту, расширяемость, выразительность и проблемную ориентацию.
Эффективность языка подразумевает точность передачи заданий пользователя и лаконичность записей.
Полнота языка понимается как возможность описания любых проблемных ситуаций, на исследование которых ориентирована АСНИ, а также задания всех действий, имеющих отношение к цели исследования.
Расширяемость алфавита и синтаксиса языка должна обеспечить возможность развития языка в соответствии с развитием предметной области АСНИ.
Выразительность и проблемная ориентация должны обеспечить простоту изучения и использования языков исследователями-непрограммистами. С этой точки зрения языки исследования должны быть близкими к естественным по своим грамматикам, что обеспечивает простоту и минимальные затраты времени на их изучение.
21.2. Представление языков с помощью формальных грамматик
Искусственные языки лингвистического обеспечения АСНИ относятся к формальным языкам, которые определяются как множество цепочек в некотором конечном алфавите.
Для задания описания формального языка необходимо указать его алфавит и формальную грамматику.
Алфавит представляет собой совокупность объектов, называемых символами (или буквами), каждый из которых можно воспроизвести в неограниченном количестве экземпляров.
Для языков исследования, которые в большинстве своем близки к естественным, а слова, словосочетания и графические образы являются простейшими элементами, термин «алфавит», принятый в теории формальных языков, можно отождествить с термином «словарь», который употребляется в лингвистике.
Формальная грамматика представляет собой систему правил для описания множества конечных последовательностей символов. Конечные последовательности символов (цепочек), входящие в это множество, называют предложениями, а само множество — языком, который описывается этой формальной грамматикой.
В теории формальных языков правила формальных грамматик рассматриваются как продукции (правила вывода) — элементарные операции, которые, будучи применены в определенной последовательности к исходной цепочке (аксиоме), порождают лишь правильные цепочки. Сама последовательность правил, использованных в процессе порождения некоторой цепочки, является ее выводом.
По способу задания правильных цепочек формальные грамматики разделяются на порождающие и распознающие.
К порождающим относятся грамматики, которые устанавливают правила построения любой правильной цепочки с указанием ее структуры так, что нельзя построить ни одной неправильной цепочки.
Распознающая грамматика позволяет установить, правильна ли произвольно выбранная цепочка, и если она правильна, выяснить ее строение.
Такое деление является несколько условным, так как любая распознающая грамматика по сути задает правила построения всех предложений.
Порождающей грамматикой или, кратко, грамматикой называется
упорядоченная четверка
G = (VT, VH, σ0, Р),
где VT = {a1, а2,....., ап} — основной терминальный алфавит;
VH — конечный вспомогательный (нетерминальный) алфавит;
σ0
VH — начальный (нетерминальный) символ или аксиома;
Р = {иi→vi/i = 1, 2 ... k} — конечная система подстановок (продукций), левые и правые части которых есть цепочки иivi, содержащие символы основного VT и вспомогательного VH алфавитов, т. е. иi,vi
F(V), где F (V) — свободная полугруппа над объединенным алфавитом V=(VT
VH).
Символы основного алфавита VT являются элементарными единицами определяемого языка, а символы алфавита VH — метапеременными, которые используются при выводе правильных цепочек. В естественных языках метапеременным соответствуют грамматические классы: существительное, глагол и т. п. Начальный символ σ0
VH — метапеременная аксиома, из которой выводятся все правильные цепочки, например, в естественных языках такой аксиоме соответствует грамматический класс «предложение». Множество Р — грамматические правила определяемого языка. Язык, порождаемый грамматикой G, обозначают через L(G).
Задача описания языка состоит в определении множеств, составляющих его грамматику.
Множество терминальных символов VT в наибольшей степени отражает проблемную ориентацию языка исследования. Рациональное определение множества VT путем включения в него привычных для исследователя понятий позволяет создать проблемно-ориентированную языковую среду, естественную для него как для специалиста.
В качестве начального нетерминального символа σ0 во входных языках исследования чаще всего выбирают понятие «директива». Остальные нетерминальные символы определяют лексические классы (лексические переменные) входного языка. Например, для диалоговых языков можно определить следующее подмножество нетерминальных символов: ДМ — директива, Д — действие, ОД — объект действия, СД — способ действия, УД — условия действия, ЧД — число действий; УВВ — устройство ввода; УВН — устройство вывода и т. д.
Решающее влияние на свойства языка, сложность порождения и распознавания цепочек оказывают правила подстановок множества Р. В зависимости от правил подстановок, различают следующие четыре основных класса грамматик.
1. Грамматики непосредственных составляющих или контекстные грамматики (НС-грамматики) с продукциями вида
и1ψи2→ и1zи2,
где и1 и и2 — произвольные (возможно, пустые) цепочки над VT
VH; ψ — нетерминальный сивол, z—непустая цепочка над VT
VH. Цепочки и1 и и2 называют соответственно левым и правым контекстами данной продукции.
Каждое правило вывода НС-грамматики указывает подстановку некоторой цепочки вместо нетерминального символа. Язык, порождаемый НС-грамматикой, называется НС-языком или контекстным языком.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |


