Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 27, 2015 09:42:43

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10026
Репутация: +  857  -
Профиль   Отправить e-mail  

Передача результата первой функции в качестве аргумента для второй

MiK
можно нормально в функциональном стиле писать?
Не, он для этого не предназначен. lambda-функции, например, есть, но их надо избегать, так как они, как и обычные функции, создают своё содержимое. То есть запросто может быть, что код, записанный функционально, будет работать медленнее императивного.
>>> f = lambda: 1
>>> dir(f)
['__annotations__', '__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__get__', '__getattribute__', '__globals__', '__gt__', '__hash__', '__init__', '__kwdefaults__', '__le__', '__lt__', '__module__', '__name__', '__ne__', '__new__', '__qualname__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']
>>>

MiK
и я не знаю есть ли смысл лезть в эти дебри.
Чтобы лезть в эти дебри, нужно сначала понять теорию лямбда-исчисления. То есть то, как оно математически образуется. Затем уже взять подходящий язык, чтобы на практике видеть, какие результаты это даёт.
Питон - это не тот язык, на котором нужно учиться функциональному программированию. Я сейчас читаю книжку по лиспу. Пришлось взяться за изучение этого древнего языка, чтобы понимать, как управлять Emacs'ом. :D



Отредактировано py.user.next (Фев. 27, 2015 09:44:16)

Офлайн

#2 Фев. 27, 2015 11:13:11

4kpt_III
Зарегистрирован: 2014-12-22
Сообщения: 999
Репутация: +  39  -
Профиль   Отправить e-mail  

Передача результата первой функции в качестве аргумента для второй

py.user.next

Подтверждаю. Не имеет смысла. И причин тут много. Очень много. Если подходить к функциональной парадигме с современным языком - то это хаскель.

P.S. Но методы функционального программирования использовать все же стоит. То же карирование использую постоянно.

Офлайн

#3 Фев. 27, 2015 13:28:27

MiK
Зарегистрирован: 2014-10-30
Сообщения: 191
Репутация: +  -1  -
Профиль   Отправить e-mail  

Передача результата первой функции в качестве аргумента для второй

4kpt_III
Ну да, обработчики событий(замыкания в обработчиках событий) мну вообще в восторг приводят, так удобно ими пользоваться научился, и помоему намного нагляднее чем в ооп даже получается.

py.user.next
Ну вообщем я тебя понял.
Спасибо, всем!

Отредактировано MiK (Фев. 27, 2015 13:56:58)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version