МЕТАЯЗЫК

 

 

 

Мета- (с греч. μετά- после, через, за) - часть сложных слов, обозначающая обобщённость, следование за чем-либо.

  • Метаданные — данные о данных (источник, формат, дата создания, объем и т. п.).

  • Метаязык -  язык, предназначенный для описания другого языка

 

 

 

Метаязык и проблема истинности высказывания

 


Метаязык — язык описания (задания) языка.

Понятие «метаязык» введено математиком Альфредом Тарским как инструмент преодоления самореферентных логических парадоксов (парадокс лжеца и др.).

Тарский показал, что попытки определения понятия "истинное предложение" в естественном языке, неизбежно приводящие к парадоксу Лжеца, являются результатом смешения языка-объекта и (часто неявно предполагаемого) метаязыка.

Формально точное (и не ведущее к противоречиям) определение истинности предложения может быть построено лишь в метаязыке.

 

Первый уровень языка (низший, обычный, повседневный язык) утверждает об объектах, например:

  • Снег белый.

На первом уровне нет понятий «ложь» и «истина».

Оценка истинности утверждений об объектах, прерогатива метаязыка — следующего уровня.

Только на втором уровне (в метаязыке) имеет смысл предложение:

  • Утверждение "снег белый" истинно

Об истинности предложения Утверждение "снег белый" истинно можно говорить только на третьем уровне  — метаметаязыке, где метааязык является объектным языком для этой следующей ступени и т. д.

 

Четкое разграничение содержательного метаязыка и языка-объекта - необходимое условие корректной постановки таких проблем непротиворечивости и полноты теории.

Формализация языков в качестве языков-объектов и необходимое для этой цели построение соответствующих метаязыков играют большую роль в лингвистических и логических исследованиях компьютерных языков (информационных, разметки, программирования).

 

 

С лестницей метаязыков Тарского тесно связана теория типов Бертрана Рассела.

 

 

 

 

Метаязык (лингвистика)

 

 

Метаязык (от греч. μετά — через, после) — язык «второго порядка», по отношению к которому естественный человеческий язык выступает как «язык-объект» и предмет языковедческого исследования.

Термин «метаязык» возник в математике и логике:

  • формализованный язык, средствами которого исследуются свойства соответствующих предметных (или объектных) теорий, разграничиваются уровень описываемых объектов и уровни их описания.

Метаязык языкознания будучи языком описания естественного языка, одновременно выступает как его часть.

В метаязыке понятия методологически обусловленны (по-разному трактуются и осмысляются в соответствии с методологическими основами направлений исследования.

Например, фонема:

  • «кратчайшая единица системы выражения звукового языка, способная различать звуковые оболочки слов и морфем» (московская фонологическая школа);

  • «пучок дифференциальных признаков» (пражская фонологическая школа);

  • «семья звуков» (английская фонетическая традиция);

  • «точка пересечения сети функций» (глоссематика) и т. п.

См. Метаязык (в ЛЭС: лингвистическом энциклопедическом словаре)

 

 

 

Метаязык (информатика)

 

Метаязык (в информатике) — формальная система данных и правил их построения, задающая описания свойств системы данных более низкого уровня.

Текстами метаязыка являются наборы метаданных  (данных, служащие для описания имеющихся данных).

Метаданные (от лат. meta — цель, конечный пункт, предел, край[1] и данные) — информация о другой информации, или данные, относящиеся к дополнительной информации о содержимом или объекте.

Метаданные раскрывают сведения о признаках и свойствах, характеризующих какие-либо сущности, которые позволяют автоматически обрабатывать их в больших информационных потоках.

Метаданные - данные метаязыка.

Онтология - структурированные (как правило, иерархически) метаданные - онтология или схемой метаданных.

Онтология - схема метаданных (например, XML-схема).

Сложно провести формальное разделение на данные и метаданные в документе, поскольку:

  • метаданные могут одновременно выступать в качестве данных (заголовок статьи -  элемент метаданных о тексте и часть самого текста.

  • данные и метаданные могут меняться ролями (определяется пространством имён, системой отсчёта, точкой зрения).

Метаданные могут создаваться:

  • вручную ("гарантирует" осмысленность, но долго, дорого)

  • автоматически

Метаданные классифицируют:

  • по содержанию (описание ресурса (файла), либо содержимое ресурса (информации в файле).

  • по отношению к ресурсу (в целом или к его частям)

  • по возможности логического вывода (данные сами по себе; метаданные, описывающие данные; метаданные, которые позволяют делать логический вывод, используя второй слой).

Формат метаданных — стандарт формального описания некоторой категории ресурсов (объектов, сущностей, атрибутов, свойств и т. п.). Формат метаданных включает

См. https://ru.wikipedia.org/wiki/Метаданные

 

 

 

Метаязык (постмодернизм)

Метаязыкпостмодернизме):

  • «тот неизбежно искусственный язык, на котором (в контексте постмодернистской концепции симуляции) ведется логическое исследование языка-объекта (предмета логического исследования)

  • трансгрессивная по своей природе процессуальность вербального продукта рефлексии над процессуальностью языка.

Язык-объект и метаязык задаются определенного типа дискурсом и есть формы проявления рефлексирующего над языком бытия.

  • Живой язык не зависит от наличия или отсутствия субъектной рефлексии над ним, но в ситуации такой рефлексии, функционально разделяется на "язык как таковой" и "язык-объект"(становящийся предметом рефлексии по отношению к тексту).

Таким образом, "язык-объект" выступает как один из двух равноправно-связанных языков:

  • метаязыка (планом выражения для языка-объекта)

  • языка-объекта (планом содержания для метаязыка).

Лишь в системе отсчета субъекта-критика:

  • "язык-объект" выступает как «слово другого» (Р.Барт),

  • метаязык выступает как слово критика о «слове другого».

Метаязык, выступает предметом рефлексии сам для себя, обретает функциональный статус "языка-объекта".

 

Постмодернизм. Энциклопедия (сост. А.А.Грицанов, М.А.Можейко)

 

 

 

 

Формальные языки

 

Любой естественный характеризует:

  • изменчивость, которая состоит в непостоянстве словарного состава языка;

  • неоднозначность трактовки фраз различными людьми;

  • избыточность.

Перечисленные особенности не позволяют применить естественный язык для записи алгоритма, поскольку одним из свойств алгоритма является его детерминированность, т.е. однозначность выполнения шагов любым исполнителем. Наиболее простой путь преодоления нежелательных свойств естественных языков – построение языков искусственных со строгим синтаксисом и полной смысловой определенностью – такие языки получили название формальных.

В любом языке – естественном или искусственном – можно выделить две составляющие: синтаксис и семантику. 

Синтаксис  – это совокупность правил, согласно которым строятся допустимые в данном языке конструкции. 

Семантика – смысловая сторона языка – соотносит единицы и конструкции языка с некоторым внешним миром, для описания которого язык используется.

Для описания формального языка необходим другой язык, с помощью которого будут создаваться языковые конструкции.

Описываемый формальный язык называется языком-объектом, а язык, средствами которого производится описание – метаязыком.

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

Любая грамматика начинается с указания алфавита, т.е. набора символов, посредством которого строятся конструкции языка.

Формальная грамматика задается упорядоченной четверкой {T, N, S, P}, где T и N – непересекающиеся конечные множества, образующие алфавит или словарь порождаемого формального языка; T называется множеством (словарем) терминальных символов; N – множеством (словарем) нетерминальных (вспомогательных) символов. S – начальный (выделенный) вспомогательный символ из множества N. P – набор правил вывода конструкций языка (подстановок) из выделенного вспомогательного символа, имеющие вид g h, где g и h – цепочки, состоящие как из терминальных, так и нетерминальных символов.

 

 

Метаязыки логико-математического моделирования

 

Обращение к определенному метаязыку описания является важным для построения логико-математических моделей.

Сама модель часто выступает как метаязык, в терминах которого фиксируются исходные данные.

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

При описании естественного языка обычно в качестве метаязыка рекомендуется использовать тот же самый язык, например ограниченный русский для представления русского языка или ограниченный английский, который используется в машинном переводе.

Дело существенно меняется, если требуется описание искусственного языка в строящихся для определенных целей и имеющих формальные и однозначные правила построения. Эти метаязыки для искусственных языков должны иметь простую структуру и простую внутреннюю организацию. В настоящее время для описания синтаксиса искусственного языка используется ряд популярных метаязыков, их еще называют метасинтаксические языки.

 

 

 

Метаязык и вычислимость

 

здесь

 

 

 

Метасинтаксические языки

Формальные языки — это множества цепочек, составленных из символов некоторого конечного алфавита.

Способ задания языка называет грамматикой этого языка.

Назначение грамматики — задание языка.

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

Это возможно только в том случае, если строение всех цепочек языка основано на единых принципах, которых конечное число.

Например, грамматика L = {a^nb^n} (здесь n — натуральное число) задает язык L, состоящий из цепочек вида ab, aabb, aaabbb и т.д.

Язык L представляет собой бесконечное множество цепочек, но тем не менее, его грамматика (описание) состоит всего из 10 символов, т.е. конечна.

В примере выше в качестве такого принципа выступает следующий: «каждая цепочка языка начинается с символов a, за которыми идет столько же символов b».

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

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

Грамматика языка описывает законы внутреннего строения его цепочек (синтаксические закономерности.

Грамматика - конечный способ описания синтаксических закономерностей языка.

Для практики интересны грамматики, которые заданы на основе единого языка (метаязыка) описания грамматик всех формальных языков, т.е. в рамках единого подхода (формализма или парадигмы).

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

Такие парадигмы описания грамматик называют синтаксическими теориями.

Формальная грамматика — это математическая модель грамматики, описанная в рамках какой-то синтаксической теории.

Самый известный метаязык для задания грамматик —  порождающие грамматики Хомского.

Имеются и другие формализмы. Например, окрестностные грамматики.

 

С алгоритмической точки зрения грамматики можно подразделить по способу задания языка. Имеются три основных таких способа (вида грамматик):

  • Распознающие грамматики. Такие грамматики представляют собой устройства (алгоритмы), которым на вход подается цепочка языка, а на выходе устройство печатает «Да», если цепочка принадлежит языку, и «Нет» — в противном случае.

  • Порождающие грамматики. Этот вид устройств используется для порождения цепочек языков по требованию. Образно говоря, при нажатии кнопки будет сгенерирована некоторая цепочка языка.

  • Перечисляющие грамматики. Такие грамматики печатают одну за другой все цепочки языка. Если язык состоит из бесконечного числа цепочек, то процесс перечисления сам никогда не остановится. Его можно остановить принудительно в нужный момент времени.

 

 

 

 

Метаязык Хомского

Метаязык Хомского имеет следующую систему обозначений:

  • символ “®” отделяет левую часть правила от правой (читается как "порождает" и "это есть");

  • нетерминалы обозначаются буквой А с индексом, указывающим на его номер;

  • терминалы - это символы используемые в описываемом языке;

  • каждое правило определяет порождение одной новой цепочки, причем один и тот же нетерминал может встречаться в нескольких правилах слева.

Описание идентификатора на метаязыке Хомского будет выглядеть следующим образом:

1. A1 ® A

23. A1 ® W

45. A1 ® s

2. A1 ® B

24. A1 ® X

46. A1 ® t

3. A1 ® C

25. A1 ® Y

47. A1 ® u

.... .... .....

20. A1 ® T

42. A1 ® p

64. A3 ® A3A1

21. A1 ® U

43. A1 ® q

65. A3 ® A3A2

 

Приведенный в предыдущем разделе пример описания идентификатора показывает громоздкость метаязыка Хомского, что позволяет эффективно использовать его только для описания небольших абстрактных языков. Более компактное описание возможно с применением метаязыка Хомского-Щутценберже, использующего следующие обозначения метасимволов:

  • символ “=” отделяет левую часть правила от правой (вместо символа “®”);

  • нетерминалы обозначаются буквой А с индексом, указывающим на его номер;

  • терминалы - это символы используемые в описываемом языке;

  • каждое правило определяет порождение нескольких альтернативных цепочек, отделяемых друг от друга символом “+”, что позволяет, при желании, использовать в левой части только разные нетерминалы.

 

 

 

 

Метаязык Хомского-Щутценберже

Более компактное описание возможно с применением метаязыка Хомского-Щутценберже, использующего следующие обозначения метасимволов:

  • символ “=” отделяет левую часть правила от правой (вместо символа “®”);

  • нетерминалы обозначаются буквой А с индексом, указывающим на его номер;

  • терминалы - это символы используемые в описываемом языке;

  • каждое правило определяет порождение нескольких альтернативных цепочек, отделяемых друг от друга символом “+”, что позволяет, при желании, использовать в левой части только разные нетерминалы.

Введение возможности альтернативного перечисления позволило сократить описание языков. Описание идентификатора будет выглядеть следующим образом:

  1. A1=A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+
    W+X+Y+Z+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+
    v+w+x+y+z

  2. A2=0+1+2+4+5+6+7+8+9

  3. A3=A1+A3A1+A3A2

 

 

 

 

Бэкуса-Наура формы (БНФ)

 

Метаязыки Хомского и Хомского-Щутценберже использовались в математической литературе при описании простых абстрактных языков.

 Метаязык, предложенный Бэкусом и Науром, впервые использовался для описания синтаксиса реального языка программирования Алгол 60.

Наряду с новыми обозначениями метасимволов, в нем использовались содержательные обозначения нетерминалов.

Это сделало описание языка нагляднее и позволило в дальнейшем широко использовать данную нотацию для описания реальных языков программирования.

Были использованы следующие обозначения:

  • символ "::=" отделяет левую часть правила от правой;

  • нетерминалы обозначаются произвольной символьной строкой, заключенной в угловые скобки "<" и ">";

  • терминалы - это символы, используемые в описываемом языке;

  • каждое правило определяет порождение нескольких альтернативных цепочек, отделяемых друг от друга символом вертикальной черты "|".

 

Пример описания идентификатора с использованием БНФ:

  • <буква> :: = А|В|С|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z|a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z

  • <цифра> :: = 0|1|2|3|4|5|6|7|8|9

  • <идентификатор> ::= <буква> | <идентификатор><буква> |<идентификатор><цифра>

Правила можно задавать и раздельно:

  • <идентификатор> :: = <буква>

  • <идентификатор> :: = <идентификатор> <буква>

  • <идентификатор> :: = <идентификатор> <цифра>

Формы Бекуса-Наура используются с двумя основными целями:

  • они являются металингвистическим языком, стандартным для описания языков программирования;

  • они описывают правила построения текстов или конструкций.

Чтобы БНФ приблизить к традиционному представлению формальной грамматики, следует осуществить ряд преобразований:

  • стандартную связку : : = заменить на →

  • < > представляются большими буквами, в основном латинскими

  • основные символы языка представляют маленькими и называют терминалами.

  • выделяется нетерминальный символ, составляющий самой первой и общей конструкции, и его называют начальным символом S.

Таким образом, множество терминальных символов, множество нетерминалов с выделенными начальными символами и множество правил вывода входят в формальное определение порождающей грамматики.

Язык, порождаемый такими грамматиками, это множество терминальных цепочек, которые можно вывести из начального символа.

 

Маша любит Васю
↓ ↓ ↓
Т   Т  Т  =Vтер. 
М Л В
↓ ↓ ↓
<под.> <сказ.> <доп.> =Vнетер.

[Vт, Vнт, R, S]  R  <S> → <П> <С> <Д>

<П> Маша
<С> любит 
<Д> Васю

 

Формальное определение порождающей грамматики состоит из 4-ки компонентов [Vт, Vнт, R, S]:

  • – множество терминальных символов (словарь)

  • Vнт – множество нетерминальных символов (словарь метаязыка)

  • S – начальная аксиома метаязыка (правильный символ, с которого начинается подстановка)

  • R – правила описания синтаксиса.

 

 

Расширенные Бэкуса-Наура формы (РБНФ)

 

Метаязыки, представленные выше, позволяют описывать любой синтаксис.

Однако, для повышения удобства и компактности описания, целесообразно ввести в язык дополнительные конструкции.

В частности, специальные метасимволы были разработаны для описания необязательных цепочек, повторяющихся цепочек, обязательных альтернативных цепочек. Существуют различные расширенные формы метаязыков, незначительно отличающиеся друг от друга.

Их разнообразие зачастую объясняется желанием разработчиков языков программирования по-своему описать создаваемый язык.

К примерам таких широко известных метаязыков можно отнести:

  • метаязык PL/I,

  • метаязык Вирта, используемый при описании Модулы-2,

  • метаязык Кернигана-Ритчи, описывающий Си.

Зачастую такие языки называются расширенными формами Бэкуса-Наура (РБНФ). 

РБНФ, используемые Виртом, имеют следующие особенности:

  • Квадратные скобки "[" и "]" означают, что заключенная в них синтаксическая конструкция может отсутствовать;

  • фигурные скобки "{" и "}" означают ее повторение (возможно, 0 раз);

  • круглые скобки "(" и ")" используются для ограничения альтернативных конструкций;

  • сочетание фигурных скобок и косой черты "{/" и "/}" используется для обозначения повторения один и более раз. Нетерминальные символы изображаются словами, выражающими их интуитивный смысл и написанными на русском языке.

 

ABNF (Augmented Backus-Naur Form, пополненная нормальная форма Бэкуса-Наура) - расширение нормальной формы Бэкуса-Наура (BNF) - метасинтаксис (metasyntax) для представления контекстно-свободных грамматик (context-free grammar), то есть формальный способ описания формальных языков (formal language ), имеющих собственный синтаксис и порождающие правила. Побудительным мотивом к созданию этого метаязыка (metalanguage) была необходимость описания формальной языковой системы, представляющую собой протокол.

 

 

Диаграммы Вирта

 

Диаграммы Вирта - синтаксические диаграммы (введены Виртом для описания выражений и лексем языка Pascal).

Наряду с текстовыми способами описания синтаксиса языков широко используются и графические метаязыки, среди которых наиболее широкую известность получил язык диаграмм Вирта, впервые примененный для описания языка Паскаль.

Метасимволы заменены следующими графическими обозначениями:

  • терминальные символы и их постоянные группы располагаются в окружностях или прямоугольниках со скругленным вертикальными сторонами;

  • нетерминальные символы заносятся внутрь прямоугольников;

  • каждый графический элемент, соответствующий терминалу или нетерминалу, имеет по одному входу и выходу, которые обычно рисуются на противоположных сторонах;

  • каждому правилу соответствует своя графическая диаграмма, на которой терминалы и нетерминалы соединяются посредством дуг;

  • альтернативы в правилах задаются ветвлением дуг, а итерации - их слиянием;

  • должна быть одна входная дуга (располагается обычно слева и сверху), задающая начало правила и помеченная именем определяемого нетерминала, и одна выходная, задающая его конец (обычно располагается справа и снизу).

 

 

 

Классификация грамматик

 

Грамматика G=(T,N,P,S) состоит из 4 элементов:

  • Алфавит (Т) терминальных символов (буквы, цифры, спец.символы);

  • Алфавит (N) нетерминальных символов (символы метаязыка для описания языка-объекта)

  • Набор правил описания синтаксиса (Р);

  • Правильный символ, с которого начинается подстановка (S).

Согласно Хомскому, формальные грамматики можно разделить на четыре типа:

Тип 0 — неограниченные[править

Тип 1 — контекстно-зависимые

Тип 2 — контекстно-свободные

Тип 3 — регулярные

См.: https://ru.wikipedia.org/wiki/Иерархия_Хомского

 

 

 

 

Ролан Барт "Литература и метаязык"

извлечения

Логика учит нас плодотворному разграничению языка-объекта и метаязыка.

Язык-объект - это сам предмет логического исследования, а метаязык - тот неизбежно искусственный язык, на котором такое исследование ведется.

Логическое мышление как раз и состоит в том, что отношения и структуру реального языка (языка-объекта) я могу сформулировать на языке символов (метаязыке).  

Наши писатели в течение долгих веков не представляли, чтобы литературу (само это слово появилось недавно) можно было рассматривать как язык, подлежащий, как и всякий язык, подобному логическому разграничению.

Литература никогда не размышляла о самой себе (порой она задумывалась о своих формах, но не о своей сути), не разделяла себя на созерцающее и созерцаемое; короче, она говорила, но не о себе.

Однако в дальнейшем - вероятно, с тех пор, как начало колебаться в своих основах буржуазное благомыслие,- литература стала ощущать свою двойственность, видеть в себе одновременно предмет и взгляд на предмет, речь и речь об этой речи, литературу-объект и металитературу.

Развитие это прошло, в общих чертах, следующие фазы. Сначала сложилось профессиональное самосознание литературного мастерового, вылившееся в болезненную тщательность, в мучительное стремление к недостижимому совершенству (Флобер).

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

Потом появилась надежда устранить тавтологичность литературы, бесконечно откладывая самое литературу «на завтра», заверяя вновь и вновь, что письмо еще впереди, и делая литературу из самих этих заверений (Пруст).

Далее суду подверглась сама«спокойная совесть» литературы: слову-объекту стали намеренно, систематически приписывать множественные смыслы, умножая их до бесконечности и не останавливаясь окончательно ни на одном фиксированном означаемом (сюрреализм).

Наконец, попытались, наоборот, создать смысловой вакуум, дабы обратить литературный язык в чистое здесь-бытие, в своего рода «белое» (но отнюдь не непорочное) письмо - я имею в виду творчество Роб-Грийе.  

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

Поскольку же такие поиски ведутся не извне, а внутри самой литературы, точнее, на самой ее грани, в той зоне, где она словно стремится к нулю, разрушаясь как язык-объект и сохраняясь лишь в качестве метаязыка, где сами поиски метаязыка в последний момент становятся новым языком-объектом, то оказывается, что литература наша уже сто лет ведет опасную игру со смертью, как бы переживает свою смерть; она подобна расиновской героине (Эрифиле в «Ифигении»), которая умирает, познав себя, а живет поисками своей сущности.

Этим, собственно, и определяется ее трагизм: наше общество, стоящее ныне как бы в историческом тупике, оставляет литературе лишь характерно эдиповский вопрос: кто я?, запрещая ей при этом подлинно диалектическую постановку вопроса: что делать?

Истина нашей литературы - не в области действия, но она не принадлежит уже и области природы: это маска, указывающая на себя пальцем. 

                                                                                1959

 

 

Успешное моделирование

здесь

 

 

 

kmp