65. Специализированные искусственные языки

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

65.1. Системы международного смыслового письма (пазиграфии). Термин пазигра́фия (буквально 'письмо для всех')19 известен с конца XVIII в. Однако знаки, предназначенные для записи некоторого специального содержания и ставшие понятными многим народам, создавались очень давно. К древнейшим системам пазиграфии относятся математические знаки, семиотика картографии (зарождавшаяся еще в античной географии и астрономии), знаки средневековой алхимии, шахматная нотация, знаки для записи музыки (причем современному нотному письму предшествовали другие системы, например, в древнерусском церковном пении использовали безлинейное, так называемое крюковое письмо) и др.

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

192

Эвклид в своих "Началах" (III в. до н.э.) стал в геометрии обозначать отрезки буквами. В III в. н.э. (в эпоху эллинизма) алгебраические вычисления стали записывать буквами, однако современные знаки для неизвестных или переменных величин (х, у, z), для обозначения степени (а2, а3, аn) появляются только в XVII в. (у Декарта). Современные цифры появились в Индии не позднее V в. н.э. (в X - XIII вв. они стали известны европейцам от арабов и потому называются у нас арабскими). Современную систему знаков для дифференциального и интегрального исчисления разработал Лейбниц (1646 - 1716). В XIX в. создаются знаки математической (символической) логики (⊃, ⊂, ∈, ≡, ≈ и др.). В этом же веке математики ставят вопрос о международной унификации математической символики20.

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

В современном мире, перенасыщенном информацией и информационными шумами и помехами, роль пазиграфии, т.е. знаков международных, не требующих перевода, возрастает. Растет и количество таких знаков и знаковых систем. Их огромное большинство относится к областям специальных знаний и занятий, однако в их числе есть и широко известные символы: знаки химических элементов (Аи - 'золото', S - 'сера'), формулы веществ (Н2О - 'вода'), международные обозначения физических величин (t - 'время', v - 'скорость', s - 'расстояние') и т.п. Важнейшие из общезначимых систем пазиграфии - знаки дорожного движения; международные знаки опасности ('высокое напряжение', 'радиация', 'непитьевая вода', 'купаться запрещено' и др.); пиктограммы олимпийских видов спорта, пиктограммы услуг и товаров в международных аэропортах, отелях, туристическом сервисе; знаки

193

юридической охраны прав21; знаки интернета, электронной почты, символы национальных валют, товарные знаки и логотипы крупных компаний; пиктограммы-инструкции по обращению с изделием (ср. 'ручная стирка', 'стирка при температуре до 40°' 'не подлежит стирке' и т.п.) и многое другое22.

65.2. Информационные языки. Информационные языки - это специализированные системы обозначений, создаваемые для оптимизации представления информации в целях ее дальнейшего накопления, передачи и переработки. Повышение коммуникативных возможностей информационных языков достигается благодаря отсутствию многозначности, омонимии и синонимии знаков, что связано с их совершенно четкой функциональной направленностью (в то время как обычный язык почти в каждом коммуникативном акте многофункционален). Однако, как заметил В.А. Москович, "принципиальных различий между естественными и информационными языками нет. Естественные языки могут рассматриваться как информационные языки прямой документации, с помощью которых осуществляется первичная концептуализация мира" (Москович 1971, 135). Различают несколько классов таких систем (информационно-поисковые, информационно-логические языки и др. )

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

194

Одним из самых распространенных, совершенных и простых информационно-поисковых языков является Универсальная десятичная классификация (УДК), используемая в библиотечном деле. Она создана в 1905 г. бельгийскими библиографами Полем Отле и Анри Лафонтеном в Международном библиографическом институте в Брюсселе. УДК является классификационным цифровым языком: информация распределяется по классам, а каждый класс получает цифровое обозначение. Универсальность УДК в том, что она позволяет классифицировать все мыслимое содержание, которое только может быть записано в книгах. УДК использует десятичный принцип деления (рубрикации) содержания, с использованием цифр от 0 до 9; используются также несколько дополнительных знаков (двоеточие, знак равенства, апостроф, кавычку. Все мыслимое содержание УДК вначале разделяет на 10 главных классов (первого, верхнего яруса); каждому классу приписан свой индекс (на верхнем ярусе - однозначный):

  • 0 - Общий отдел. Библиография. Библиотечное дело.
  • 1 - Философия. Психология.
  • 2 - Религия. Теология.
  • 3 - Общественные науки. Право. Управление.
  • 4 - Свободный раздел.
  • 5 - Математика. Естественные науки.
  • 6 - Прикладные науки. Медицина. Техника.
  • 7 - Искусство. Прикладное (декоративно-прикладное) искусство
  • 8 - Художественная литература. Филология. Языкознание.
  • 9 - География. История.

Каждый из разделов верхнего яруса делится на 10 новых разделов (образующих 2-й ярус); затем каждый раздел 2-го яруса делится на новых 10 разделов (образующих 3-й ярус), которые в свою очередь делятся на 10 новых разделов и т.д. Глубина деления может быть безграничной - это зависит от структурированности той или иной области знаний. На каждом уровне деления предусмотрен свой "свободный раздел", что позволяет помещать "неожиданное" новое содержание в самостоятельную рубрику.

Индекс той рубрики, куда отнесена конкретная книга, включает ряд цифр, при этом на первом месте слева стоит индекс 1-го (верхнего) яруса, на 2-м - 2-го яруса и т.д. Ср. индекс книги по сопоставительному синтаксису русского и белорусского языков: УДК 808.2. - 56 808.26.

195

Интерпретация индексов УДК производится на основе специальных словарей двух типов (их называют "таблицы УДК"); эти словари издаются на национальных языках в соответствующих странах. В словарях первого типа индексы УДК объясняются с помощью слов естественного языка. В словарях второго типа помещены алфавитные списки словосочетаний естественного языка с приписанной каждому словосочетанию рубрикой УДК (Подробно см. Москович 1971, 42 - 47).

Информационно-логические языки содержат средства для представления знаний с использованием тех формально-логических моделей или сетей, с помощью которых удается представить определенный фрагмент действительности (технологический цикл, процесс принятия решений, менеджмент и др.). Примером такого языка может служить Универсальный семантический код, разработанный В.В. Мартыновым23. Подробно см. также Котов, Якушин 1979; Котов, Новиков, Скокан 1987; Проблемы 1997.

65.3. Языки программирования: математические системы, живущие по законам лингвистики. Языки программирования - это класс формализованных (т.е. логико-математических) систем записи24, предназначенных для автоматической (компьютерной) переработки информации. Они применяются как в общении человека и компьютера, гак и в передаче от человека к человеку специальной информации (относящейся к программированию).

Языки программирования имеют уровневое (иерархическое) строение. Как и в естественном языке, уровни языков программирования различаются по характеру той информации, которая передается единицами соответствующего уровня25. Эта такие

196

уровни: 1) алфавитный уровень, представляющий собой набор (в каждом языке - свой) элементарных, но несамостоятельных единиц для записи информации: цифр, букв, разделительных знаков (" ' ; , . / [ ] и др.), обозначений констант (π, g, φх, е), символов отношений (= ≠ ≡ > < ≥ ≤и др.), математических действий и функций (↑ + - ∫, sin(x), log(x) и др.), логических функций ("НЕ", "И", "ИЛИ"), служебных слов (ввод, выполнить, вычислить, график, если, иначе, интегрировать, пробел, пусть, стоп, таблица, формат, шаг и др ); 2) уровень имен, представляющих собой символьные (алфавитно-цифровые) цепочки, т.е. это уровень компьютерных аналогов слов; 3) уровень выражений (непредикативных комбинаций имен); 4) уровень операторов (синтаксических конструкций, содержащих предписания для совершения опреде ленной последовательности действий); 5) уровень текста или программы (содержащий семантически и синтаксически завершенную последовательность предписаний)26.

В современных языках программирования возрастает их естественно-языковая компонента. Она базируется на лексике естественного языка (образующей в алфавите языка программы класс "служебных слов") и является нерезервированной (открытой).

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

197

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

Языки программирования различаются между собой также в зависимости от категории пользователей, на которых ориентирован конкретный язык, - на компьютер, профессионального программиста или на непрофессионала. Одно из магистральных направлений в совершенствовании языков программирования состоит в создании все более "дружественных" (friendly software) по отношению к человеку программ (интерактивные, диалоговые режимы работы, развитые средства подсказки, защиты от ошибок и др.). Языки человеко-машинной коммуникации развиваются в направлении от чисто математических и даже чуждых человеку кодов28 ко все более "мягким" семиотикам, которые по сути представляют собой естественно-искусственные языки.

198


19 От греч. pãs - весь, всякий, gráphō - пишу.
20 Математический энциклопедический словарь. М.: Сов. энциклопедия, 1988. С. 350 - 352, 628 - 629.
21 © (от первой буквы англ. copyright 'право копирования; авторское право') - 'ко́пирайт (охрана прав автора)'; (от англ. production 'продукция') - 'охрана смежных прав (исполнителя произведения, производителя фонограммы, организации вещания)'; ® (от англ. registered 'зарегистрировано') - 'охрана товарного знака', ставится справа от охраняемого знака (наименования): adidas®; (англ. trademark 'фабричная марка' - 'охрана знака производителя'.
22 Примеры: e-mail, @, &, #, ⓧ , √, $, DM, £ и др.
23 Мартынов В.В. Универсальный семантический код: Грамматика. Словарь. Тексты. Мн.: Навука i тэхнiка, 1977; Мартынов В.В. Универсальный семантический код: УСК-3. Мн.: Навука i тэхнiка, 1984.
24 Формализованность языка означает, что его использование происходит по точным (единообразным) правилам построения выражений и их понимания. В формализованных языках следствия выводятся не на основе рассуждений, но посредством заданных операций, преобразующих символьные конструкции.
25 Выражение уровень (языка) в информатике понимают иначе, чем в лингвистике. Для лингвистов уровень языка - это одна из подсистем (имеющая свою единицу) в иерархической структуре языка; в информатике уровень - это интеллектуальная мощность языка, определяемая набором операторов и, соответственно, определяющая круг решаемых задач.
26 Следует заметить, что при составлении программ разработчик использует не только язык программирования, но и некоторые другие специальные семиотические средства (языки) - например, язык спецификаций, включающий в себя язык логической программы, графический язык блок-схемы со стандартным представлением отдельных компонентов алгоритма: "ввод/вывод", "начало/конец", "команда", "проверка условий", средств связи между ними и др. (Котов, Новиков, Скокан 1987, 123 - 124).
27 См.: ЛЭС 1990 (статьи: "Искусственные языки", "Языки программирования"); Математический энциклопедический словарь. М.: Сов. энциклопедия, 1988 (статьи "Язык программирования", "Алгоритмический язык", "Язык представления данных", "Формализованный язык", "База данных" и др. ).
28 Таков двоичный код ("да-нет"-язык), с его двумя знаками - 0 и 1, - единственный язык, на котором способно "понимать" собственно "железо" компьютера и на котором на заре ЭВМ должны были писать программы программисты.
Rambler's Top100
Lib4all.Ru © 2010.