Size: a a a

Programming Offtop

2020 August 13

A

Alex in Programming Offtop
Quantum Harmonizer
лол, а где невозможно?)
а разве в Java возможно чисто функциональное программирование?
источник

QH

Quantum Harmonizer in Programming Offtop
Andrew Mikhaylov
На сишечке, на бейсике
на сишке можно указатель на функцию передавать
источник

AM

Andrew Mikhaylov in Programming Offtop
Quantum Harmonizer
на сишке можно указатель на функцию передавать
криваярожа.жпг
источник

QH

Quantum Harmonizer in Programming Offtop
Alex
а разве в Java возможно чисто функциональное программирование?
чистое ни на котлине, ни на го невозможно
источник

AM

Andrew Mikhaylov in Programming Offtop
Quantum Harmonizer
на сишке можно указатель на функцию передавать
Какой вопрос, такой и ответ же :)
источник

AM

Andrew Mikhaylov in Programming Offtop
Alex
а разве в Java возможно чисто функциональное программирование?
Ты расскажи сначала, что такое чисто функциональное программирование, раз уж решил в эту степь отправиться.
источник

QH

Quantum Harmonizer in Programming Offtop
я подумал про отделение сайд-эффектов
источник

A

Alex in Programming Offtop
о нашёл что-то вменяемое в определениях)
"․ Не существует формального согласованного определения того‚ что влечет за собой ФП‚ но есть два основных понятия‚ с которыми согласится большинство людей։
Избегание мутации и побочных эффектов
Использование функций в качестве центрального строительного блока программ"
или же если посмотреть с той точки с которой пытался смотреть я
то вот эта мысль
"В ООП основными строительными блоками являются классы и объекты․ В ФП‚ напротив‚ вы строите свои программы‚ используя функции․ На большинстве функциональных языков вся ваша программа будет просто функцией․ И эта функция‚ в свою очередь‚ будет построена из других функций․"
источник

A

Alex in Programming Offtop
в общем если упростить) то без ООП)
источник

AM

Andrew Mikhaylov in Programming Offtop
Alex
в общем если упростить) то без ООП)
Асм -- это ФП, выходит?
источник

A

Alex in Programming Offtop
Andrew Mikhaylov
Асм -- это ФП, выходит?
вообще то языки низкого уровня сложно подтянуть к парадигме функционального и даже процедурного программирования
источник

A

Alex in Programming Offtop
то есть ФП вроде как на уровень повыше язык нужен)
источник

AM

Andrew Mikhaylov in Programming Offtop
Странно, мне казалось, что с процедурным подходом асм как раз хорошо согласуется.
источник

AM

Andrew Mikhaylov in Programming Offtop
Alex
о нашёл что-то вменяемое в определениях)
"․ Не существует формального согласованного определения того‚ что влечет за собой ФП‚ но есть два основных понятия‚ с которыми согласится большинство людей։
Избегание мутации и побочных эффектов
Использование функций в качестве центрального строительного блока программ"
или же если посмотреть с той точки с которой пытался смотреть я
то вот эта мысль
"В ООП основными строительными блоками являются классы и объекты․ В ФП‚ напротив‚ вы строите свои программы‚ используя функции․ На большинстве функциональных языков вся ваша программа будет просто функцией․ И эта функция‚ в свою очередь‚ будет построена из других функций․"
Первой части описания, конечно, котлин не противоречит и даже не мешает, но и не то, чтобы предлагает удобные инструменты в помощь.

Про го не берусь судить.
источник

A

Alex in Programming Offtop
в Го "нетривиальное" ООП, скажем так)
в Котлин что мне нравиться что можно и так и так))
но опять же это личный взгляд)
источник

QH

Quantum Harmonizer in Programming Offtop
Alex
в Го "нетривиальное" ООП, скажем так)
в Котлин что мне нравиться что можно и так и так))
но опять же это личный взгляд)
почему нетривиальное? В го же вроже всё очень просто
источник

A

Alex in Programming Offtop
Quantum Harmonizer
почему нетривиальное? В го же вроже всё очень просто
там нет такой привычной вещи как классы)
без них ООП немного необычен))
источник

QH

Quantum Harmonizer in Programming Offtop
Alex
там нет такой привычной вещи как классы)
без них ООП немного необычен))
классы — это способ, а не парадигма)
источник

A

Alex in Programming Offtop
верно))
источник

NL

Nick Linker in Programming Offtop
Anton Korotkikh
ну зависит от либы, оно не сложно в туторах, на гитхаб заходишь в какой-нибудь проект и там просто ад + макросы ещё в довесок... может конечно нужно долго и мучительн опривыкать, но растовский код отпугивает, имхо
Тренировка нужна. Но с практикой не труднее чем везде, и в некоторых аспектах даже легче (например алгоритмы разбирать легче, потому что &/&mut помогают отследить, как меняются стуктуры данных и какие инварианты поддерживаются).

Метапрограммирование везде сложно, в расте макросы можно раскрыть с помощью ключей к компилятору или поддержкой IDE (она есть).
источник