Существует ли в R # конструктор пакетов или языков, который облегчает или обеспечивает реализацию " Python-подобных генераторов"?
Под "Python-подобными генераторами" я подразумеваю функции, которые сохраняют состояние между вызовами, в синтаксисе R и заимствовании ключевого слова yield из Python будет выглядеть примерно так:
iterable.fun <- function(){
yield list('a','b','c')
}
С yield вместо return, то вызов функции три раза подряд даст:
> iterable.fun()
'a'
> iterable.fun()
'b'
> iterable.fun()
'c'
Изменить: я не учитывал аспект генераторов Python, который отличает их от итераторов. Дело в том, что весь список объектов для итерации не построен на первом вызове, а затем повторяется, но каждый вызов функции создает один элемент, который будет возвращаться для этого вызова.