История изменений
Исправление tailgunner, (текущая версия) :
Важнее был ответ на «устроят ли тебя чистые функции». Если устроят, то на Python примерно так (вероятно, такая функция есть в stdlib более-менее новых Python):
def mkpipe(cmdlst):
def run1(a):
for cmd in cmdlst:
a = cmd(a)
return a
return run1
def c1(a): return str(a) + "-- cmd"
map(mkpipe([c1, lambda x: str(x) + "-- lam"]), [1, 2, 3])
Объединение через «|» тоже можно сделать, но там придется писать декоратор.
А вот если нужна зависимость от внутреннего состояния, придется делать на итераторах, и там всё становится несколько нетривиально.
P.S. https://toolz.readthedocs.io/en/latest/streaming-analytics.html
Исходная версия tailgunner, :
Важнее был ответ на «устроят ли тебя чистые функции». Если устроят, то на Python примерно так (вероятно, такая функция есть в stdlib более-менее новых Python):
def mkpipe(cmdlst):
def run1(a):
for cmd in cmdlst:
a = cmd(a)
return a
return run1
def c1(a): return str(a) + "-- cmd"
map(mkpipe([c1, lambda x: str(x) + "-- lam"]), [1, 2, 3])
Объединение через «|» тоже можно сделать, но там придется писать декоратор.
А вот если нужна зависимость от внутреннего состояния, придется делать на итераторах, и там всё становится несколько нетривиально.