
Yuriy
19.06.2018
10:28:48

A64m
19.06.2018
10:29:36

Yuriy
19.06.2018
10:30:02

A64m
19.06.2018
10:30:16
нет, не доказывает

Google

A64m
19.06.2018
10:31:39
вот для сишарпа я доказал в одну строчку, вот и вы попробуйте докажите свои утверждения
тем временем решение о том, чтоб не ломать зиллион пакетов с дженериками в 8.6 проходит "рулевой" процесс, пока что на гитхабе.

Ilya
19.06.2018
11:10:49

A64m
19.06.2018
11:12:36
ну в том и дело, что переведенное на хаскель утверждение f это Functor абсурдно, его нельзя сформулировать, кайнды не сходятся, по сравнению с языком где так и есть и все работает

Ilya
19.06.2018
11:15:40

Yuuri
19.06.2018
11:18:20
Ага, типы не налазят!

Yuriy
19.06.2018
11:42:06

Dmitry
19.06.2018
11:42:39

A64m
19.06.2018
11:44:56

Ilya
19.06.2018
11:49:51
Завтра в breaking news "Выяснилось, что IO — это не монада. Хаскелисты присматриваются к си-шарп"

Yuriy
19.06.2018
11:52:16

Mariia
19.06.2018
11:54:13

Yuriy
19.06.2018
11:57:23
по-моему, тайпклассами можно покрыть и ограничение, накладываемое супертипом, и многое другое

Google

A64m
19.06.2018
11:59:01

Yuriy
19.06.2018
11:59:16

A64m
19.06.2018
11:59:36
потому что C это не Exists C

Yuriy
19.06.2018
11:59:54

A64m
19.06.2018
12:01:18
для начала в кайндах

Yuriy
19.06.2018
12:01:21
потому что C это не Exists C
можно сказать, что в сишарпе передача по ссылке на интерфейс, а не объекта интерфейса, так что с одной стороны будет Ref C
можно переименовать Exists в Ref, тогда с другой стороны будет тоже Ref C
для начала в кайндах
чтобы говорить о кайндах, сначала покажите мне тайпклассы в Сишарпе и подтипы в Хаскеле
нельзя сравнивать кайнды между языками

A64m
19.06.2018
12:02:56
я сравниваю кайнды Constraint и Type в одном языке

Yuriy
19.06.2018
12:03:01
я сравниваю возможности, они примерно одинаковые
ссылка на интерфейс — тоже тип

A64m
19.06.2018
12:04:15
если сравнивать возможности, то у хаскеля они намного больше, речь не про возможности, а про то является ли ограничение тем, что оно ограничивает

Yuriy
19.06.2018
12:04:55
если философствовать, то роза является только розой

A64m
19.06.2018
12:05:12

Yuriy
19.06.2018
12:05:31
а если писать код, то можно работать с T, обращаясь к нему только по констрэйнту

A64m
19.06.2018
12:06:04

Yuriy
19.06.2018
12:07:24

Google

A64m
19.06.2018
12:08:14
т.е. вы не утверждаете, что C это то Exists C?

Yuriy
19.06.2018
12:08:31
я утверждаю, что для программиста между C и Exists C нет принципиальной разницы

A64m
19.06.2018
12:08:49

Yuriy
19.06.2018
12:09:14
наверное, можно даже написать изоморфизм

A64m
19.06.2018
12:09:40

Yuriy
19.06.2018
12:09:41

A64m
19.06.2018
12:09:53
да никакая, если честно

kana
19.06.2018
12:10:28
а что сказать про нульарные констрейты (ну в смысле без привызяки к типам вообще)?

A64m
19.06.2018
12:10:48
что?

Yuriy
19.06.2018
12:21:23
это значит что вы не сконструируете доказательство C :~: Exists C на чем разговор можно закончить
{-# LANGUAGE ConstraintKinds #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
module Exists where
import Data.Type.Equality
data Exists c where
Exists :: c a => a -> Exists c
class (To a ~ b, From b ~ a) => Iso (a :: ka) (b :: kb) where
type To a :: kb
type From b :: ka
instance Iso c (Exists c) where
type To c = Exists c
type From (Exists c) = c

A64m
19.06.2018
12:26:35
и дальше что?

Yuriy
19.06.2018
12:59:05

Yuriy
19.06.2018
13:01:00
а я всего лишь утверждал, что можно решать одинаковые задачи

A64m
19.06.2018
13:05:48
каста что-то все не видно

Yuriy
19.06.2018
13:38:52
суть в том, что каст не нужен в Хаскелле
каст — ОО инструмент

A64m
19.06.2018
13:39:34
суть в том что не возможен

Yuriy
19.06.2018
13:41:00
это плохо?

kana
19.06.2018
13:42:27
instance Iso Int String where
type To Int = String
type From String = Int

Google

A64m
19.06.2018
13:44:36
это хорошо

Александр
19.06.2018
14:26:08

Alexander
19.06.2018
14:33:50
Для любого нормального программиста, в т.ч. хаскелиста (такие тоже бывают как это ни странно) код на Го читается более чем легко, а на хаскиле сложно

Alister
19.06.2018
14:34:25
код на питоне читается еще лучше
но это не повод переходить на питон

Pineapple
19.06.2018
14:36:20
Ну да. Каждая отдельная строчка го — легко

A64m
19.06.2018
14:36:34
с каждым днем код на го все более легче читается, и сейчас уже читается более легче, чем легко

Admin
ERROR: S client not available

Евгений
19.06.2018
14:41:42

kana
19.06.2018
14:42:36
го компилируемый же

Алексей
19.06.2018
14:42:42

Andrei
19.06.2018
14:44:09

Евгений
19.06.2018
14:44:34

kana
19.06.2018
14:45:23
если компилируемый язык считается скриптовым, то от классификации смысла уже нет попросту

Евгений
19.06.2018
14:45:39
Один фиг питон с указателями. Это я как дивапс скажу, у меня в отрасли только го и питон
По мне так скриптовый значит, что на нём только пишут и читают код. А если нужно чо-то поправить, то переписывают заново
Можете другой термин придумать

Yuuri
19.06.2018
14:48:14

Евгений
19.06.2018
14:49:20
"Является ли баш языком" филосораптор.пнг

Google

Alister
19.06.2018
14:49:46
cshell

Алексей
19.06.2018
14:50:09

A64m
19.06.2018
14:50:17
Для любого нормального программиста, в т.ч. хаскелиста (такие тоже бывают как это ни странно) очевидно, что скрипты вообще языками не являются

Александр
19.06.2018
14:50:25

Yuuri
19.06.2018
14:50:36
"Вообще, почти все - это язык, такая вот загогулина получается" (луговский.тхт)

A64m
19.06.2018
14:51:03
но не все язык программирования

Alexander
19.06.2018
14:51:10
хаскель - про ленивые вычисления и автоматическое распараллеливание. если говорить о технологиях, а не о синтаксисе

Yuuri
19.06.2018
14:51:10

Alexander
19.06.2018
14:51:33

A64m
19.06.2018
14:51:42
есть же автомат который ее разбирает, так что значит есть

Александр
19.06.2018
14:51:50

Евгений
19.06.2018
14:51:59
Вообще я не понимаю чо обсуждать содержимое го-чата

A64m
19.06.2018
14:52:24
> автоматическое распараллеливание
ХАХАХАХАХА НЕТ

Yuuri
19.06.2018
14:52:35
> Ну, это не необходимое условие.
Так я и не в возражение, а в дополнение :)

Alexander
19.06.2018
14:52:55
просто тут ничего не обсуждают, а тут релевантная хаскелю тема

A64m
19.06.2018
14:52:57
ну, при очень большом желании можно посчитать что ApplicativeDo автоматически распараллеливает

Yuuri
19.06.2018
14:53:47

Александр
19.06.2018
14:55:14
Наброс "динамические скрипты - не языки программирования" какой-то скучный, и генерирует скучные обсуждения

Евгений
19.06.2018
14:58:35
Как назвать пакет, организующий совместимость со свежим time (1.9), если time-compat уже забито?

Антон
19.06.2018
14:59:11