Как построить код для такого выражения?
От: frogkiller Россия  
Дата: 27.07.07 11:49
Оценка:
Попалась мне книжка Э.Дейкстры аж 1976 года.
И там встретилась такая идея — рассматривать следующую запись для оператора присваивания:

<оператор присваивания> ::= <переменная> := <выражение> | <переменная>, <оператор присваивания>, <выражение>


Цель такого действия — естественная запись одновременного присваивания:
x1, x2 := E2, E1  =>  x1 := E1

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

А ещё я попытался построить автомат, который бы распознавал такие конструкции, но что-то никак не получается. Получается, что для него необходим в общем случае неограниченный объём памяти, т.е. реализуемая им грамматика не относится ни к LL(k), ни к LR(k), при том, что она линейная. Так?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Курица — это инструмент, с помощью которого одно яйцо производит другие.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.