letters.htm
Избранные места из переписки с друзьями
Аркадий Климов
Задачка занятная,
Не удивительно, что здесь могла получиться рекурсивная программка типа
A { 'a' e.1 = 'a' <A e.1>; 'b' e.1 = 'b' <A e.1>; ... 'z' e.1 = 'z' <A e.1>; =; }
А то, что это потом свернулось в
* InputFormat: <A e.41 > $ENTRY A { e.41 = e.41 ; }
это уже удивительно. Можешь прокомментировать это?
А еще интересно, что будет, если применять шифр, скажем, 35 раз, а не 70.
Наверно, лучшее, что можно было бы тогда надеяться получить - это
A { 'y' e.1 = 'z' <A e.1>; 'z' e.1 = 'y' <A e.1>; s.a e.1 = s.a <A e.1>; =; }
Получится?
Александр Корлюков
Почему получилась функция из одного предложения - у меня у самого это вызвало удивление. Надо спрашивать Андрея Немытых. Я думаю, что проявилось одно из его последних нововведений.
Валентин Турчин
Imenno tak. On proverjaet: na vykhode imeet li kazhdoe predlozhenie opredelennoe svojstvo; esli da, to vsja funkcija zamenjaetsja tozhdestvom. Svojstvo takoe: esli ubrat' activation brackets v pravoj chasti, to poluchitsja levaja chast'. I eto srabotalo.
Александр Корлюков
Если применять шифр 35 раз, то получается то, что ожидается -
$ENTRY A { e.41 = <F147 e.41 > ; } F147 { = ; 'a' e.41 = 'a' <F147 e.41 > ; 'b' e.41 = 'b' <F147 e.41 > ; 'c' e.41 = 'c' <F147 e.41 > ; 'd' e.41 = 'd' <F147 e.41 > ; 'e' e.41 = 'e' <F147 e.41 > ; 'f' e.41 = 'f' <F147 e.41 > ; 'g' e.41 = 'g' <F147 e.41 > ; 'h' e.41 = 'h' <F147 e.41 > ; 'i' e.41 = 'i' <F147 e.41 > ; 'j' e.41 = 'j' <F147 e.41 > ; 'k' e.41 = 'k' <F147 e.41 > ; 'l' e.41 = 'l' <F147 e.41 > ; 'm' e.41 = 'm' <F147 e.41 > ; 'n' e.41 = 'n' <F147 e.41 > ; 'o' e.41 = 'o' <F147 e.41 > ; 'p' e.41 = 'p' <F147 e.41 > ; 'q' e.41 = 'q' <F147 e.41 > ; 'r' e.41 = 'r' <F147 e.41 > ; 's' e.41 = 's' <F147 e.41 > ; 't' e.41 = 't' <F147 e.41 > ; 'u' e.41 = 'u' <F147 e.41 > ; 'v' e.41 = 'v' <F147 e.41 > ; 'w' e.41 = 'w' <F147 e.41 > ; 'x' e.41 = 'x' <F147 e.41 > ; 'y' e.41 = 'z' <F147 e.41 > ; 'z' e.41 = 'y' <F147 e.41 > ; s.171 e.41 = s.171 <F147 e.41 > ; }