- Фантастика и фэнтези
- Ироническое фэнтези
- Стимпанк
- Детективная фантастика
- Киберпанк
- Попаданцы
- LitRPG
- Космоопера
- Технофэнтези
- Городская фантастика
- Русское фэнтези
- Юмористическая фантастика
- Космическая фантастика
- Боевое фэнтези
- Эпическая фантастика
- Зарубежная фантастика
- Книги магов
- Мистика
- Разная фантастика
- Разное фэнтези
- Любовное фэнтези
- Романтическая фантастика
- Городское фентези
- Историческая фантастика
- Историческое фэнтези
- Социально-философская фантастика
- Сказочная фантастика
- Иностранное фэнтези
- Романтическое фэнтези
- Ироническая фантастика
- Ужасы и Мистика
- Постапокалипсис
- Героическая фантастика
- Фэнтези
- Научная Фантастика
- Социально-психологическая
- Альтернативная история
- Боевая фантастика
- Разная литература
- Пословицы, поговорки
- Шахматы
- Визуальные искусства
- Фанфик
- Авто и ПДД
- Военное
- Отраслевые издания
- Гиды, путеводители
- Зарубежная образовательная литература
- Военная история
- Цитаты из афоризмов
- Современная литература
- Великолепные истории
- Начинающие авторы
- Современная зарубежная литература
- Боевые искусства
- Изобразительное искусство, фотография
- Кино
- Литература 19 века
- Недвижимость
- Музыка, музыканты
- Готические новеллы
- Истории из жизни
- Культура и искусство
- Спецслужбы
- Зарубежная прикладная литература
- Музыка, танцы
- Подростковая литература
- Прочее
- Военная техника, оружие
- Газеты и журналы
- Периодические издания
- Домоводство, Дом и семья
- Любовные романы
- Экономическая литература
- Научные и научно-популярные книги
- О животных
- Биохимия
- Культурология
- Юриспруденция
- Политика
- Психотерапия
- Языкознание
- Научпоп
- Медицина
- Психология, личное
- Радиотехника
- Филология
- Педагогика
- Образовательная литература
- Деловая литература
- Физика
- Науки: разное
- Химия
- Воспитание детей, педагогика
- Детская психология
- Зарубежная публицистика
- Биология
- Архитектура
- Зарубежная психология
- Науки о космосе
- Социология
- Математика
- География
- Беременность, ожидание детей
- Литературоведение
- Транспорт, военная техника
- Обществознание
- Зоология
- География
- Альтернативная медицина
- Иностранные языки
- Ветеринария
- Рефераты
- Астрология
- Биофизика
- Экология
- История Европы
- Учебники
- Шпаргалки
- Государство и право
- Ботаника
- Религиоведение
- История
- Техническая литература
- Прочая научная литература
- Психология
- Детективы и Триллеры
- Справочная литература
- Проза
- Новелла
- Юмор
- Проза
- Историческая проза
- Русская современная проза
- Советская классическая проза
- Повести
- Очерки
- Эссе
- Рассказы
- Зарубежная современная проза
- Сентиментальная проза
- Зарубежная классика
- Афоризмы
- Эпистолярная проза
- Феерия
- Семейный роман/Семейная сага
- Разное
- Антисоветская литература
- Магический реализм
- Русская классическая проза
- Современная проза
- О войне
- Контркультура
- Классическая проза
- Поэзия, Драматургия
- Детская литература
- Детская фантастика
- Детские остросюжетные
- Детские стихи
- Детские приключения
- Внеклассное чтение
- Учебная литература
- Зарубежные детские книги
- Бизнес
- Загадки
- Книги для подростков
- Школьные учебники
- Детский фольклор
- Книги для дошкольников
- Детские детективы
- Детская познавательная и развивающая литература
- Буквари
- Прочая детская литература
- Сказка
- Детская проза
- Детская образовательная литература
- Юмор
- Документальные книги
- Бизнес
- Внешнеэкономическая деятельность
- Тайм-менеджмент
- Кадровый менеджмент
- О бизнесе популярно
- Управление, подбор персонала
- Бизнес
- Менеджмент и кадры
- Продажи
- Экономика
- Ценные бумаги и инвестиции
- Малый бизнес
- Делопроизводство, офис
- Корпоративная культура, бизнес
- Банковское дело
- Финансы
- Зарубежная деловая литература
- Ораторское искусство / риторика
- Личные финансы
- Интернет-бизнес
- Поиск работы
- Государственное и муниципальное управление
- Бухучет и аудит
- Работа с клиентами
- Менеджмент
- Краткое содержание
- Личная эффективность
- Переговоры
- Приключения
- Старинная литература
- Религия и духовность
- Компьютеры и Интернет
- Блог
Читаем без скачивания Учебное пособие по курсу «Нейроинформатика» - Е. Миркес
Шрифт:
Интервал:
Закладка:
<Формальный аргумент типа Long>::= <Список имен аргументов типа Long>: Long;
<Список имен аргументов типа Long>::= <Имя аргумента типа Long> [,<Список имен аргументов типа Long>]
<Имя аргумента типа Long>::= <Идентификатор>
<Аргумент типа Long>::= {<Имя аргумента типа Long> | <Имя аргумента типа PLongArray>^[ <Номер элемента>] | TLong( <Имя произвольного аргумента>) }
<Имя произвольного аргумента>::= <Имя аргумента типа Long>, <Имя аргумента типа Real>, <Имя аргумента типа Integer>, <Имя аргумента типа Color>, <Имя аргумента типа Logic>, <Имя аргумента типа String>, <Имя аргумента типа PRealArray>, <Имя аргумента типа PIntegerArray>, <Имя аргумента типа PLongArray>, <Имя аргумента типа PLogicArray>, <Имя аргумента типа PString>, <Имя аргумента типа Visual>, <Имя аргумента типа Pointer>, <Имя аргумента типа FuncType>
Третье четвертое и пятое предложения данного фрагмента пришлось бы повторить для каждого из остальных тринадцати типов аргументов. Поскольку приведенные в книге БНФ описания языков призваны задать и объяснить синтаксис языка, а не служить исходным кодом компилятора компиляторов, автор счел возможным отступить от канонов БНФ, тем более, что для профессионала в области языков программирования не составит большого труда заменить неформальные конструкции на точные формальные фрагменты.
Описание общих синтаксических конструкцийВ данном разделе приведено описание общего подмножества языков описания компонентов. В некоторых случаях, когда БНФ описание понятия сложно, а неформальное описание просто и однозначно, в БНФ описание включаются фрагменты неформального описания таких понятий.
Список синтаксических конструкций общего назначения:
<Идентификатор>::= <Буква> [<Символьная строка>]
<Буква>::= {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 }
<Символьная строка>::= {<Буква> | <Цифра> | _ } [<Символьная стока>]
<Цифра>::= {0 | 1 | 2 | 3 | 4 | 5 | 6 |7 |8 |9 }
<Число>::= {<Целое число> | <Действительное число>}
<Целое число>::= [—] <Положительное целое число>
<Положительное целое число>::= <Цифра> [<Положительное целое число>]
<Действительное число>::= <Целое число>[.<Положительное целое число>][e<Целое число>]
<Целочисленная константа>::= {<Предопределенная константа типа Integer> | < Предопределенная константа типа Long> | <Целое число>}
<Цветовая константа>::= H <Шестнадцатеричная цифра> <Шестнадцатеричная цифра> <Шестнадцатеричная цифра> <Шестнадцатеричная цифра>
<Шестнадцатеричная цифра>::= {0 | 1 | 2 | 3 | 4 | 5 | 6 |7 |8 |9 | A | B |C | D | E | F }
<Строковая константа>::= “<Строка произвольных символов>”
<Логическая константа>::= {True | False}
<Строка произвольных символов> — Последовательность произвольных символов из набора ANSI. В этой последовательности допускаются символы национальных алфавитов. При необходиости включить в эту конструкцию символ кавычек, он должен быть удвоен.
<Скалярный тип>::= {Long|Real|Integer|Color|Logic|String|PRealArray|PIntegerArray|PLongArray|PLogicArray|PString|Visual|Pointer|FuncType}
<Тип массива>::= { RealArray|IntegerArray|LongArray|LogicArray}
<Константа типа Тип> — константа имеющая тип Тип.
Список синтаксических конструкций для формальных аргументов:
<Список формальных аргументов>::= <Формальный аргумент> [; <Список формальных аргументов>]
<Формальный аргумент>::= <Список имен аргументов>:<Скалярный тип>
<Список имен аргументов>::= <Имя аргумента> [,<Список имен аргументов>]
<Имя аргумента>::= <Идентификатор>
<Аргумент типа Тип> — одно из следующих понятий:
имя аргумента, который при описании формальных аргументов имел тип Тип
имя элемента аргумента-массива, если элементы массива имеют типТип
результат приведения произвольного аргумента или элемента аргумента-массива к типу Тип.
Синтаксические конструкции описания переменных:
<Описание переменных>::= Var<Список описаний однотипных переменных>
<Список описаний однотипных переменных>::= <Тип переменной> <Список переменных>; [<Список описаний однотипных переменных>]
<Список переменных>::= <Имя переменной> [, <Список переменных>]
<Имя переменной>::= <Идентификатор>
<Тип переменной>::= {<Скалярный тип> | <Тип массива>[ <Целочисленноеконстантное выражение>] }
<Переменная типа Тип> — одно из следующих понятий:
имя переменной, которая при описании переменных имела тип Тип
имя элемента массива, если элементы массива имеют типТип
результат приведения произвольной переменной или элемента массива к типу Тип.
Синтаксическая конструкция описания глобальных переменных (доступна только в языках описания компонентов учитель и контрастер):
<Описание глобальных переменных>::= Global<Список описаний однотипных переменных>
Синтаксические конструкции описания статических переменных
Статические переменные, как правило, служат для описания параметров компонентов нейрокомпьютера. Использование в именах переменных только символов латинского алфавита и цифр делает идентификаторы универсальными, но неудобными для всех пользователей, кроме англо-говорящих. Для удобства всех остальных пользователей в описании статических переменных предусмотрена возможность использовать дополнительные имена для статических переменных. Однако эти имена служат только для построения интерфейса и не могут быть использованы в описании тела соответствующего компонента. Кроме того, статической переменной можно при описании задать значение по умолчанию.
<Описание статических переменных>::= Static <Список описаний статических переменных>
<Список описаний статических переменных>::= <Описание статической переменной>; [<Список описаний статических переменных>]
<Описание статической переменной>::= <Тип переменной> <Имя переменной> [Name <Имя статической переменной>] [Default <Значение по умолчанию>]
<Имя статической переменной>::= <Строковая константа>
<Значение по умолчанию>::= <Константное выражение типа <Тип переменной>>
Синтаксические конструкции описания функций
<Описание функций>::= <Описание функции> [<Описание функций>]
<Описание функции>::= <Заголовок функции> <Описание переменных> <Описание меток> <Тело функции>
<Заголовок функции>::= Function<Имя функции>[( <Список формальных аргументов>)]: <Скалярный тип>;
<Описание меток>::= Label<Список меток>;
<Список меток>::= <Имя метки> [, <Список меток>]
<Имя метки>::= <Идентификатор>
<Тело функции>::= Begin<Составной оператор> End;