Теория синтаксического анализа, перевода и компиляции - Том 1 (943928), страница 115
Текст из файла (страница 115)
Она состоит из двух частей. Первая представляет собой входную коитекстно-свободную грамматику, а ПРИЛОЖЕНИЕ именно простую 1.й(!)-грамматику. Вторая часть определяет семантические правила, ассоциируемые с правилами входной грамматики. Кроме того,мы дадим регулярные определения, описывающие используемые в этой схеме лексические переменные <константа) и (переменная>.
Входная грамматмиа 1 (программа> (список определ> ) <выражение) 3 <список определ>— Йе1 <определение> <список определ) ~ бе1 (определение) 5 (выражение>— 1е1 <определение> 1« (выражение> ~ 1п <оспер часть>. (выражение) ~ <где выражение) 8 <где выражение> (знач выражение> «!неге (рек определение) ! <знач выражение> 1О <знач выражение>— Уа1о1 <команда> ! <команда> 12 (команда>— (помеч команда>; (команда> ) <помеч команда) 14 (помеч команда>— <переменная>: <помеч команда) ) <услов команда) 16 <услов команда>- 1ез1 (логическое> !Ьо (помеч команда> Ипо1 <помеч команда) ) 1ез! <логическое> 11«о1<помеч команда> 1Ьо(помеч команда) ~ !1 <логическое> до <помеч команда) ~ «п1езз (логическое) Йо (помеч команда> ! в)т!1е (логическое> до <помеч команда) ! ««111 <логическое> до (помеч команда) ! <основ команда> 23 (основ команда>— <кортеж>: = <кортеж> ! яо1о <комбинация> ] гез (кортеж) ! <Кортеж) 27 <кортеж>— <Т1> ! <Т!>, <кортеж> 20 <Т1>- <Т1> а«ц (услов выражение> ! <услов выражение) 31 (услов выражение)— <логическое> — <услов выражение>!(услов выражение) ! <Т2> 570 ПЭА СУ-СХЕМА ДЛЯ ЯЗЫКА РАЬ 33 <Т2>— 5 <комбинация> ! <логическое> 35 <логическое) (логическое> ог <конъюнкция) ~ <конъюнкция) 37 <конъюнкция)- (конъюнкция> сс (отрицание> ! <отрицанне> 39 <отрицание)— по1 <отношение> ~ (отношение> 41 <отношение>— (ариф выражение> (функтор отнош) <ариф выражение> ) (ариф выражение> 43 <ариф выражение>- (ариф выражение)+(терм> ! <ариф выражение> — (терм)! +<терм> ~ — <терм> ! (терм> 48 (терм)— <терм) Р (множитель> ~ (терм> <множитель) (множнтель> 51 <множитель) (первичное> а ч (множитель) ~ <первичное> 53 <первичное>— (первичное> % (переменная> <комбинация> ) (комбинация> 55 <комбинация>- (комбинация> <произвольное> ~ (произвольное) 57 <произвольное>- (переменная> ! (константа> ! ((выражение)) ! )(выражение>! 61 <определение>— <внутр определение> Ау!11!1п (определение> ) <внутр определение> 63 <внутр определение>— <внутр определение) 1«АУИС)! <одноврем определение) ! (одноврем определение> 65 <одиоврем определение>- <рек определение) апд <одиоврем определение) ) <рек определение> 67 <рек определение>— гес (основное определение) ! (основное определение) 69 <основное определение)— <список переменных>= <выражение> ) (переменная) (оспер часть> =-- <выражение) [ !<определение>) ! 1(определение>1 73 <оспер часть> <оспер часть) <основ перем) ) (основ перем) ПРИЛОЖЕНИЕ 75 <основ перем>— <переменная) ~ (<список переменных>) ~ ( ) 78 (список переменных> (переменная), (список переменных) ~ (переменная) Правила перевода, соответству4ощие правилам вводной грам- матики 1 <программа>= <список определ) ~ <выражение> 3 (список определ> =- <определение) <список определ> де1 <определение> 1азЫе1 5 (выражение> —.— <определеиие> <выражеиие> !е! ( (оспер часть> (выражение) 1ашЬда [ <где выражение> 8 (где выражение>= <знач выражение> <рек определение) тч!4еге ~ (знач выражение> 10 <знач выражение>= <команда) ча1о1 ~ (команда) 12 (команда) =- (помеч команда> <команда>; ~ <помеч команда) .
14 <помеч команда> = <перемениая> <помеч команда>: ~ <услов команда> 16 <услов команда> = <логическое> <помеч команда> <помеч команда) !ез1-!гпе ( <логическое> <помеч команда> <помеч команда) !ез1-1а(зе ( <логическое> <помеч команда) П ! <логическое> <помеч команда> пп!еза ) <логическое> <помеч команда> и4411е ~ (логическое> <помеч команда> пп!11 ~ (основная команда> 23 <основная команда> = <кортеж> <кортеж>: = ~ <комбинация> до!о [ <кортеж> гез ~ <кортеж) 27 <кортеж> = <Т1> ~ (Т1) <кортеж>, '29 <Т1>= <Т1> <услов выражение> апд ~ <услов выражение> 31 <услов выражение)= (логическое) (услов выражение) (услов выражение) !ез1-!гце ~ <Т2> 572 П.4, СУ-СХЕМА ДЛЯ ЯЗЫКА РАЬ 573 33 <Т2> == <комбинация) 8 ~ (логическое> 35 <логическое> = <логическое> <коиъюнкция) ог ! (конъюнкция> 37 (конъюнкция> = (конъюнкция> (отрицание> й ~ (отрицание> 39 <отрицание> = (отношение> по! ~ (отношение) 41 (отношение> = (ариф выражение> (ариф выражение) (функтор отнош> ( <ариф выражение> 43 <ариф выражение> = (ариф выражение> (терм) + ~ <ариф выражение> <терм> — ~ <терм> роз ~ <терм) пед ~ <терм> 48 <терм)=- (терм) <множитсль> е ~ <терм) <множитель> '( <множитель> 51 <множитель> =- <первичное> <множитель> ехр ~ (первичное) 53 <первичное> = <первичное) (переменная) (комбинация) % ( (комбинация> 55 <комбинация) = <комбинация) <произвольное> 9апппа ~ (произвольное) 57 <произвольное> == <переменная> ! <константа> ( <выражение) ~ (выражение> 61 <определение> = (внутр опреде.тение> <определение> Зч!!Ын ~ <внутр определение> 63 <виутр определение) = <внутр определение> (одиоврем определение) 1птчЫС!4 ! <одноврем определение> 65 <одноврем определение) = (рек определение> (одноврем определение) апд ~ <рек определение> 67 <рек определение> = (основное определение) гес ~ <основное определение) 69 <основное определение) = (список переменных> <выражение) = ~ <переменная> <оспер часть) (выражение) П ( (определение> ~ <определение> 73 <оспер часть) = (оспер часть) <основ иерем> ~ (основ перем) ПРИЛОЖЕНИЕ 75 <основ перем>= <переменная> ( (спнсок переменных) ) ( ) 78 <список переменных> == <переменная) ( <список переменных) ч) ( <переменная>.
Регулярные определения (пропис буква> = л(в]с[...[л (строч буква) = а[Ь !с]...]х <цифра>= 0[1[2!...[й <буква> = (пропис буква) ] (строч буква> <буквоцифра> = <буква> ) <цифра> <знач истин> = 1гне ] 1а1ве <голова перем>= (цифра>" ((буква> ( ) ( <строч буква> ((пропис буква) ( <цифра> ( ) 1 <пропис буква> ( (переменная> = <строч буква> ( <голова перем> (<буквоцифра> ( )' (целое> = <цифра>+ (вещественное> = <цифра>+. <цифра>+ (заковыч элемент> = <лгобой знак отличный от н и ') ! вп]и(] в Ь [|из (вв.]и']в/г(иг (заковыченное) = '<заковыч элемент>" <константа> = <целое> ] <вещественное> ( <заковыченное> (знач истин> ( е <функтор отпою> = цг ( яе ( ег) ( пе ] 1в ( 1е СПИСОК ЛИТЕРАТУРЫ ') здбрахам [1965) (АЬгайаш 5.), Зоше чиеьцопьо1 рйгазе ь!гис!иге йгашшагь, 1, Сотрит.
Ипйи!з(., 4, 61 — 70. вАбрахамс [!972) (АЬгаЬашь Р. Ъ'.), А ьуп!зх гцгес1ей рагьег 1ог геса1сцгап( йгапипагь, гпгегп, в', Сотри(ег Мой., 3:273, 105 — 1!5. вдбэ и др. [!973] (АЬе Ь[., М[гито(о М., Тоуойв Л, Тапийа К,), йгеЬ йташгпагь апй ьетегв[ йгар!ьь, Л Сотри!. Буьгет Бог,, 7:1, 37 — 68, 'Автоматический перевод [!97!), Сборник статей, изд-во „Прогресс"„М, Айронс [!961) (1гопь Е. Т.), А ьуп!ах й[гес1ей согпрпег 1ог А1ООЬ 60, Сотт. АСМ, 4:1, 51 — 55, Айронс [!963а) (!гопз Е. Т.).
Ап еггог сопес!шд рагье а!дог!!Ьт, Сотт. АСМ, 6:11, 669 — 673. Айронс [19636] (!гонь Е. Т.), ТЬе ь1гисаиге зпй те о[ Гпе ьуп1ах й!тес!ей согпрг!ег, Апп. Еео. Ли(от. Ргойгопь, 3, 207 — 227. Айронс [!964] (1гопь Е. Т.), 5!гцс!игаг соппесцопь гп 1огша! !апйиайеь, Солон. г(СМ, 7:2, 62 — 67. "'АЛГОЛ 68 [!976), Алгол 68. Методы реализации, под ред. Г.