когда вы делаете F:: P, вы на самом деле делаете F "указывает на" P's значение (функция).
когда вы снова делаете P: func [] [],вы создаете новую функцию значение , которой присваивается значение только P.
единственный способ получить косвенное обращение - через средство доступа, что-то вроде F: do [P]
при изменении p значение f будет знать, что вызвать новую функцию, поскольку привязка P не изменилась, только ее значение (которое является новой функцией).
псевдоним - словоэквивалентности, а не указатели, поэтому они также действительны как слова на путях и весьма неприятны в реальном мире.