
dimiii
19.10.2018
10:11:48

Phil
19.10.2018
10:11:59
Ну, если идти по стопам Венката, то скорее важно, где будет больше сложности - в ФП или ООП )
И оно очень по разному )

Nick Senchurin
19.10.2018
10:12:06

Phil
19.10.2018
10:12:16
Иногда вообще самый простой код - императивный )

Google

Nick Senchurin
19.10.2018
10:14:04
у меня просто крик души, я рефакторил всю последнюю неделю , выпиливая стэйты , геттер стэйт менял, хоспади прости ?

Quantum Harmonizer
19.10.2018
10:14:11

Phil
19.10.2018
10:14:44
Какой такой гришка?

Sergey
19.10.2018
10:14:52
ну вообще я б не сказал что книга бесполезная, просто многие вещи идут в котлине уже из коробки

Quantum Harmonizer
19.10.2018
10:15:09
Паттерны не нужны. Просто пишите код, который решает вашу задачу, без вопросов "а если мы завтра захотим".

Anna
19.10.2018
10:15:12
Про научно-обоснованное ооп: http://lucacardelli.name/Talks/1997-08-04..15%20A%20Theory%20of%20Objects%20(Sydney%20Minicourse).pdf

Nick Senchurin
19.10.2018
10:15:44
хм, ознакомлюсь

Anna
19.10.2018
10:16:18
Ну по крайней мере там имена, чьи статьи гуглить, а дальше по ссылочкам если что ?♀️

Andrey
19.10.2018
10:18:44
Банда четырёх вообще описывала, как при отсутствии концепции замыкания в языке (тогдашний C++) писать генерализованный абстрактный код.
Практически все паттерны реализуемы через функции высших порядков, так что в языках, где есть лямбды, подобное абстрагирование не является проблемой, требующей написания целой книги.

Nick Senchurin
19.10.2018
10:19:49
❤️

Boris
19.10.2018
10:21:52

Phil
19.10.2018
10:22:14
Тот же интерпретатор )

Igor
19.10.2018
10:23:57

Google

Boris
19.10.2018
10:24:07
И вообще полезно посмотреть как можно подойти к решению ты или иной проблемы

Phil
19.10.2018
10:24:29
Угу, кто бы спорил, что полезно )

Igor
19.10.2018
10:26:55

Beholder
19.10.2018
10:33:43
Кто-то писал, "паттерны - это не догма, а размышления на тему "где в комнате делать дверь если в ней 3 окна""
Вообще слово "паттерны" из архитектуры пришло
imho считать что рекурсия и чистота функций есть неотъемлемое свойство ФП - это такая же ошибка, как считать что инкапсуляция и наследование есть неотъемлемое свойство ООП

Alexey
19.10.2018
10:37:25

Beholder
19.10.2018
10:37:56
ООП - это когда куча объектов передают друг другу сообщения

Kirill
19.10.2018
10:38:05

Beholder
19.10.2018
10:38:07
оно может быть и без наследования

Alexandr
19.10.2018
10:39:03
через сколько часов закончите? я выйду пока отсюда

Beholder
19.10.2018
10:39:04

Kirill
19.10.2018
10:39:18
А какие ещё есть? Любопытно

dimiii
19.10.2018
10:39:41
Эти вопросы были закрыты к 70-ым годам, ну что вы.

Beholder
19.10.2018
10:41:04
но вообще нефига натягивать сову на глобус. Котлин - практичный язык, на нём можно и нужно сочетать ООП и ФП

Kirill
19.10.2018
10:41:08
ООП - это когда куча объектов передают друг другу сообщения
Ну как... SmallTalk, с которого ООП и пошло (ЕМНИП), был основан на двух больших идеях: "всё объект" и "передача сообщений". Первую заметили и радостно заабьюзили. Вторая, хоть и не менее важна (по-моему, создатель языка считает её даже более важной), не так тепло принята

Beholder
19.10.2018
10:42:45

Andrey
19.10.2018
10:49:13
Лямбда исчисление - теория ФП. В практических языках существуют разные её реализации, но они не противоречат аксиомам теории.

Google

Andrey
19.10.2018
10:53:58
Чистый ФП язык содержит исключительно какую-либо реализацию лямбда исчисления, иначе его уже не получится называть чистым ФП языком.
Если язык при этом статически типизирован, то реализуется один из вариантов типизированного лямбда исчисления.
Вообще, лямбда исчисление как раз и занимается тем, что формализует понятие функции, как first class citizen

Alexey
19.10.2018
10:54:07

Andrey
19.10.2018
11:17:13
Это я уже написал, я про фп спрашивал
Ну а смысл про ФП спрашивать, если перед началом дискуссии, судя по аргументам, человек не подтрудился даже статью на википедии про ФП почитать, чтоб иметь представление о предмете обсуждения?

Alexey
19.10.2018
11:31:24

Alexandr
19.10.2018
11:32:10
короче пятница, никто не работает
впереди вечер

Alexey
19.10.2018
11:32:33
Типо нельзя работать и немного в чате писать?

Igor
19.10.2018
11:32:34

Egor
19.10.2018
11:33:34
Эх, люблю Котлин-чат
Заходишь в него в любое рандомное время
А тут срач про ФП

Руслан
19.10.2018
11:33:59

Igor
19.10.2018
11:34:10

Alexandr
19.10.2018
11:34:29

Quantum Harmonizer
19.10.2018
11:34:32

Руслан
19.10.2018
11:34:37
Мне кажется он после этого сразу становится интересным 3 человекам, которые пришли из какого-то соседнего чата про фп

Andrey
19.10.2018
11:34:42
Не судите и не судимы будите ?
Я никого не сужу. Я просто подчёркиваю бессмысленность дальнейшей дискуссии при такой аргументации.
Я и про ФП не говорил ни разу, хорошо это или плохо, потому как нет серебряной пули.

Quantum Harmonizer
19.10.2018
11:36:35

Andrey
19.10.2018
11:36:41
а Go считается статически типизированным? ?
Да, считается. Просто система типов в Go близка к https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D1%81%D1%82%D0%BE_%D1%82%D0%B8%D0%BF%D0%B8%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BB%D1%8F%D0%BC%D0%B1%D0%B4%D0%B0-%D0%B8%D1%81%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5

Mikhail
19.10.2018
11:37:09

Google

Mikhail
19.10.2018
11:39:49
ну и вообще, Котлин дразнится поти хорошей поддержкой ФП, а не дает

Mi
19.10.2018
11:41:13
проблемы этих абстрактных парадигм в вакууме состоят в том, что это в чистом виде банально не удобно
а котлин вроде как разрабатывался для того, чтобы было удобно

Mikhail
19.10.2018
11:42:06
ну вот тут - то и собака зарыта
неудобно кому?

Quantum Harmonizer
19.10.2018
11:42:54
джавистам

Andrey
19.10.2018
11:43:16

Mikhail
19.10.2018
11:44:11
под поддержкой я в той фразе понимаю поддерживание, т.е. помощь, а не совместимость

Egor
19.10.2018
11:44:44
(я жалуюсь)

dimiii
19.10.2018
11:45:32

Egor
19.10.2018
11:45:33
Так что это ещё поспорить можно, хорошая или не хорошая

Andrey
19.10.2018
11:46:42
Правда с родами не совсем понятно, чем Kotlin будет от Scala отличаться, как мне кажется.

Egor
19.10.2018
11:48:43
Про это тут тоже уже был срач
KEEP предлагает тайпклассы и поддержку имплиситов через них

Andrey
19.10.2018
11:51:34

Igor
19.10.2018
11:57:49
Помниться Бреслав, был против hkt и говорил что "тайпклассы и без них полезны"

Mikhail
19.10.2018
12:06:09
я тут недавно думал о multiple receiver functions

Google

Mikhail
19.10.2018
12:06:17
а ведь на самом деле клевая идея
и мне кажется, можно типоклассы и через нее завезти

Beholder
19.10.2018
12:07:12
только что они на практике дают?

Алексей
19.10.2018
12:07:43
multiple receiver functions?

Egor
19.10.2018
12:07:44

Beholder
19.10.2018
12:08:35
тайпклассы

Egor
19.10.2018
12:09:10
а

Алексей
19.10.2018
12:09:15
apply {
smthing.apply {
...
}
}
такое что ль?

Egor
19.10.2018
12:09:24
да

Quantum Harmonizer
19.10.2018
12:09:42

Sergey
19.10.2018
12:09:49
разве это не делается аннотацией чтобы ограничивать контекст?

Quantum Harmonizer
19.10.2018
12:10:16

Sergey
19.10.2018
12:10:25
ок, сорян)

Quantum Harmonizer
19.10.2018
12:10:54
ок, сорян)
тут про ситуацию, когда тебе нужен одновременно один явный и один неявный ресивер

Egor
19.10.2018
12:11:00
тайпклассы
Абстракцию над данными, причем круче, чем интерфейсы

Beholder
19.10.2018
12:11:02
псевдокод хотя бы

Egor
19.10.2018
12:11:30

Quantum Harmonizer
19.10.2018
12:11:32