массив чисел и последовательность переданных чисел принципиально не сильно отличаются. Поэтому я считаю, что детерминированность в том смысле что я написал, можно считать детерминированностью.что-то в приведенной вами цитате свалены детерминированность и побочные эффекты в кучу) Вероятно автор данной строчки написал её не разобравшись и уж точно, что он не процитировал её из учебной литературы)На всякий случай, дам ссылку на Wikipedia про побочные эффекты:
хранение и чтение внутреннего локального состояния самой функции не считаются побочным эффектом.Очевидно, TON/TOF/SR/BLINK и т.п. функциональные блоки хранят и изменяют состояние.Операция "write to FB" является вариантом явной передачи в функцию аргумента. Она ничем не отличается от дополнительного входа, куда мы так-же передаем аргумент.Операция "write to FB" так вообще один сплошной побочный эффект.чем они глобальные? Из макросов их не прочитать.Вот те раз. А сетевые переменные не глобальные что-ли?необходимым критерием побочного эффекта является выход который зависит не только от входящих аргументов, но и от чего-то еще внешнего.Подразберитесь с теорией. Разумеется, из внутренних макросов менять внешние переменные нехорошо, но это (изменение внешних) не является необходимым критерием на "наличие побочных эффектов".Blink(n,m) всегда выдает 0 первые m миллисекунд и 1 последующие n и так далее. В смысле "выход есть развертка во времени", блинк - обычная чистая функция.Например, блок BLINK ничего не меняет, но это побочный эффект -- "обращение к источнику времени". Его вызываешь, и он возвращает разное.
Итого, всё во что уперлись наши разногласия - это правомерно ли считать ли развертку во времени аргументом или результатом работы функции.
У нас в физике например, есть единое пространство-время и относительность одновременности. Это значит, что принципиальной разницы между разверткой в пространстве и во времени нет и посему мы вправе считать последовательность во времени частным случаем массива или списка)





