
melancholiac
30.08.2017
08:33:10
я пытаюсь в функторах разобратся

Aleksey
30.08.2017
08:35:24
чем до монадки "упрощать" лучше уж liftA3 взять
liftA3 (\x y z -> [x, y, z]) (+1) (*2) (/3)
В данном же случае вообще лучше сделать
sequenceA [(+1), (*2), (/3)]
?

Google

Aleksey
30.08.2017
08:39:37
> :t liftA3 (\x y z -> [x, y, z]) (+1) (*2) (/3)
liftA3 (\x y z -> [x, y, z]) (+1) (*2) (/3)
:: Fractional t => t -> [t]
> liftA3 (\x y z -> [x, y, z]) (+1) (*2) (/3) 9
[10.0,18.0,3.0]
> :t sequenceA [(+1), (*2), (/3)]
sequenceA [(+1), (*2), (/3)] :: Fractional a => a -> [a]
> sequenceA [(+1), (*2), (/3)] 9
[10.0,18.0,3.0]

Ilya
30.08.2017
08:41:50
There should be one-- and preferably only one --obvious way to do it
?
я слышал, как хаскель называют "правильным питоном"

melancholiac
30.08.2017
08:43:42

Ilya
30.08.2017
08:43:45
но меня всегда радует, когда я решаю, каким из четырёх способов делать ту или иную задачу, и все одинаково подходит
а потом оказывается, что правильно вообще пятым

Aleksey
30.08.2017
08:57:39
Нельзя сделать такой язык, где любая задача будет решаться ровно одним способом. Иначе получится HQ9+

Alexander
30.08.2017
09:19:21
is HQ9+ turing complete?

Aleksey
30.08.2017
09:22:02
Нет, просто делает всё, что нужно от языка программировния :)

Max
30.08.2017
09:50:32

Serghei
30.08.2017
09:55:17
может он просто так толсто тролил )

Max
30.08.2017
09:56:01
Все обиделись на питон? )

Google

Dmitry
30.08.2017
09:56:17
а что?

Alexander
30.08.2017
09:57:06
/me ничего не понял

Max
30.08.2017
09:58:08
Предлагаю либо разжечь, либо забить

Dmitry
30.08.2017
09:58:46
ну попробуй разжечь
а то тихо здесь стало

Даниил
30.08.2017
09:59:58

Ilya
30.08.2017
10:00:17

Max
30.08.2017
10:00:46

Alexander
30.08.2017
10:00:46
а что такого в этом утверждении

Max
30.08.2017
10:01:00
Питон, видимо, не тру

Dmitry
30.08.2017
10:03:51
когда у тебя в рантайме разваливается код от того, что в одном месте он пробелами выровнен, а в другом табами - это не очень тру, согласись

Alexander
30.08.2017
10:04:25
питон точно не тру, если не скрипты писать

Дмитрий
30.08.2017
10:05:01
Признаюсь, иногда тру питона

Ilya
30.08.2017
10:06:30
я недавно вот про что подумал: питон и хаскель во многом похожи, но!
питон по дефолту энергичен, но постепенно добавляет ленивый синтакиисс
хаскель по дефолту ленив, но постепенно добавляет энергичный синтаксис
интересно, как скоро они "встретятся"
где-то по середине

melancholiac
30.08.2017
10:06:58

Даниил
30.08.2017
10:08:25
у питона с хаскелем общего примерно ничего

Dmitry
30.08.2017
10:08:45
1) import

Евгений
30.08.2017
10:08:47

Google

Dmitry
30.08.2017
10:08:49
2) идентация

melancholiac
30.08.2017
10:08:52

Дмитрий
30.08.2017
10:09:05
3) Направление письма

Ilya
30.08.2017
10:09:17
4) английские кейворды

Даниил
30.08.2017
10:09:26
@Masteroid опередил(

melancholiac
30.08.2017
10:09:28
опередил

Евгений
30.08.2017
10:09:38
Блин :(
Списки есть!!!

melancholiac
30.08.2017
10:10:31
5) в обоих есть числа

Aleksey
30.08.2017
10:10:31

Евгений
30.08.2017
10:10:52
Как много сходств!

Alexander
30.08.2017
10:11:09
разве утвержднение не значит, что если вы делаете что-то на питоне, то можно и на haskell только лучше?

Ilya
30.08.2017
10:11:12
вообще современный питон всё больше клонится в сторону функциональщины и ленивости, а разве не этим славится х-ль?

melancholiac
30.08.2017
10:11:29

Даниил
30.08.2017
10:11:41

Alexander
30.08.2017
10:11:43
/me выкинул шляпу К.О. с 8го этажа

Евгений
30.08.2017
10:12:16

Даниил
30.08.2017
10:12:17

Google

Aleksey
30.08.2017
10:12:43
Питон никогда не "склонится в сторону функциональщини". Гвидо против

Евгений
30.08.2017
10:13:19
Смысл питона -- нахреначить 1000 строк полуработающего кода и забыть, это ж просто баш на стероидах

Aleksey
30.08.2017
10:13:54
1000 строк точно не нужно писать на питоне
(Даже 100 не стоит, ИМХО)

Ilya
30.08.2017
10:14:20
я пишу на питоне, брат жив

Max
30.08.2017
10:14:39
Следует ли из этого, что сравнение с питоном оскорбительно? )

Alexander
30.08.2017
10:14:44
братья они такие, живучие

Denis
30.08.2017
10:14:45
https://isomorf.io/#!/

Ilya
30.08.2017
10:14:46
(не веб)

Даниил
30.08.2017
10:15:18

Ilya
30.08.2017
10:15:33
но питон многое тянет из х-ля

Aleksey
30.08.2017
10:15:47
Питон ничего не тянет из хаскеля. Инфа 100%
Из питона просто никак не могут выпилить то, что один лиспер напихал

melancholiac
30.08.2017
10:16:22
пару ленивых конструкций это не родство с хаскелем имхо

Ilya
30.08.2017
10:16:34
а списковые включения у кого стянули? а reduce?

melancholiac
30.08.2017
10:16:38
хотя я ни того ни того не знаю

Denis
30.08.2017
10:16:50
reduce? :D

Даниил
30.08.2017
10:16:53

Aleksey
30.08.2017
10:16:58
Нет в питоне ленивых конструкций, кроме сокращения вычисления логических выражений

Google

Aleksey
30.08.2017
10:17:19

melancholiac
30.08.2017
10:17:23

Ilya
30.08.2017
10:17:36
map тоже ленивый, внезапно
с python3

melancholiac
30.08.2017
10:17:39
хотя там просто дергается .next()

Aleksey
30.08.2017
10:17:41
Генераторы энергичные. Просто это объекты со стейтом и декларированным протоколом

melancholiac
30.08.2017
10:17:51
ХА, опередил

Даниил
30.08.2017
10:17:54

Евгений
30.08.2017
10:18:26
Я пользуюсь map'ом

Aleksey
30.08.2017
10:18:28
reduce в питоне от одного из коре девелоперов, любившего в лисп

Ilya
30.08.2017
10:18:45
1, 2, 3...

Aleksey
30.08.2017
10:18:56

melancholiac
30.08.2017
10:19:01
мне кажется или языки выбирают по личным предпочтениям и спор о яп=спор о фламастерах?

Leonid
30.08.2017
10:19:44
Пишу на pyqt с rxpy. Боль и унижение.

Aleksey
30.08.2017
10:19:49
Спор не о предпочтениях же :) Спор о том, что "питон похож на хаскель" ( на самом деле - нет)

Даниил
30.08.2017
10:20:14

Ilya
30.08.2017
10:20:19
а я скажу, что питон это хаскель для бедных