[Ответить в тред] Ответить в тред

03/04/16 - Набор в модераторы 03.04 по 8.04
26/03/16 - Конкурс: Помоги гомункулу обрести семью!
15/10/15 - Набор в модераторы 15.10 по 17.10



[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 27 | 3 | 18
Назад Вниз Каталог Обновить

Аноним 20/05/16 Птн 06:25:03  748114  
14637147032730.jpg (46Кб, 960x720)
Навеяно OCaml-ем и http://facebook.github.io/reason/ -ом. /pr/, объясни мне, зачем нужны сорта, кайнды и вообще все эти ✱ →✱ →✱ ? Почему нельзя использовать функции типов, с тем же самым синтаксисом, что и функции значений?
Аноним 20/05/16 Птн 11:11:13  748223
 
Аноним 20/05/16 Птн 11:28:19  748244
Ну что же вы, комплюктер-скикентисты?
Аноним 20/05/16 Птн 12:57:10  748303
вау. спасибо опушка. окамл с вменяемым синтаксисом подвезли
Аноним 20/05/16 Птн 14:57:26  748381
Не совсем понял твой вопрос.
Dmitriy 20/05/16 Птн 15:07:44  748389
Сложна сложна слоожна
Аноним 20/05/16 Птн 18:00:34  748546
А, разобрался. Пирс ввел виды, чтобы исключить бессмыслицы на уровне типов. Выражения вида «true 5» в какой-нибудь System F и так не типизируются, а вот выражения вида «n : Nat Nat» — уже хрен знает. Вот он и ввел виды, чтобы дополнительно типизировать сами типы.

Еще он не строит систему типизации над видами. А я вот хочу построить. Причем я хочу сделать так, чтобы синтаксис был одинаковым и для «терм : тип», и для «тип : вид», и для «вид : сорт», и для любых высших порядков. Можно сделать просто: «терм : (тип : вид)», но… какие подводные камни?
Аноним 20/05/16 Птн 19:33:49  748638
>>748546
> но… какие подводные камни
В том, что конструкторы типов ведут себя аналогично функциям, и в языках с зависимыми типами нет какой либо границы между миром типов и миром термов?
Например, в Idris можно писать так: http://docs.idris-lang.org/en/latest/tutorial/typesfuns.html#dependent-types
Аноним 20/05/16 Птн 23:06:59  748788
Новый окамл с нескучным синтаксисом. Все-таки пейсбук - самые зашкварные парашники из всех.
Аноним 20/05/16 Птн 23:38:55  748815
>>748788
> Новый окамл с нескучным синтаксисом.
Да. Лучшее, что случалось в языкостроении, ящитаю.
Аноним 21/05/16 Суб 01:09:38  748876
А систему модулей оставили такой же уёбищной.
Аноним 21/05/16 Суб 06:10:32  748978
>>748815
Просто эталон НИНУЖНО. Окамл-то старый остался, а значит, все его проблемы - однопоточность и неработоспособность на виндах - никуда не делись. Зато починили то, что не было сломано - синтаксис. Просто гениально.
Аноним 21/05/16 Суб 18:54:18  749555
>>748114 (OP)
>http://facebook.github.io/reason/
ZverOcaml Maximum Ultimate xxxDarkVasyaNxxx Edition
>>748876
Чем тебе система модулей не нравится?
Аноним 28/05/16 Суб 08:04:51  755728
>>748978
Это синтаксис-то не был сломан?
Аноним 28/05/16 Суб 08:31:20  755733
14644134802750.png (19Кб, 516x361)
>>748114 (OP)
> Почему нельзя использовать функции типов, с тем же самым синтаксисом, что и функции значений?
Чтобы удобнее читать было. А то откроешь кот, а там везде какие-то функции, и непонятно над чем они и че они типизируют.
Аноним 28/05/16 Суб 08:32:45  755735
>>748303
Не торжествуй заранее, вдруг там батареек нет и инфраструктура сделана тупо, плохо.
Аноним 28/05/16 Суб 09:51:01  755759
>>755728
А что с ним не так? Попиши на фешарпе не выключая свет - на окамловый молиться начнёшь.
Аноним 28/05/16 Суб 11:00:09  755794
Мама, мама! Ночью вылез раби из под кровати и укусил меня за пятку! Избегаю ограниченного языка!
Аноним 28/05/16 Суб 18:48:29  756224
>>748114 (OP)
ocaml с JS-синтаксисом.
Достижение из достижений.
Аноним 28/05/16 Суб 20:37:07  756351
14644570279820.jpg (24Кб, 600x270)
>>748114 (OP)
Б-же мой! Нахуя вот это вот?
Аноним 28/05/16 Суб 20:40:00  756352
>>755759

Короч были OCaml и SML. И нормально выглядил второй. Толком не знаю что к чему, но SML так и остался просто стандартом без норм реализаций. А в окамле видимо случился какой-то местный хайп среди функциональщиков типо смотрите добавили объекты как же жить стало хорошо.

Хуй знает может в окамле есть какая-то реально недостающая функциональность но синтаксис у него убогий. Поэтому можно порадоваться за майкрософта-рабов, что им дали вполне умеренный мл с вполне нормальным синтаксисом. Другое дело что это такие неважные мелочи.
Аноним 29/05/16 Вск 06:10:33  756570
>>756352
Знаешь, я, конечно, не эксперт в логике и всякой математике, но что-то мне кажется, что аргументировать утверждение "у окамла плохой синтаксис" утверждением "у окамла убогий синтаксис" - это, как бы сказать, слегка неправильный подход.
Аноним 29/05/16 Вск 09:56:27  756602
>>748114 (OP)
В depended-typed языках с бесконечной ерархией универсумов так и есть. Но на практике достаточно типов и видов, дальше забуриваться особого смысла нет. В общем если у тебя изначально depended-typed язык, то логично делать всё однообразно. Но хаскели и прочие окамлы изначально таковыми не являлись, поэтому в них сделали типы, потом почесали репу и добавили еще и виды. А потом решили, что в общем-то дальше добавлять ничего и не нужно.
Аноним 30/05/16 Пнд 02:04:30  757261
>>756570
Ну слушай. В этой битве ты победил. Я просто мимопроходил и захотелось сказать, что да, хоть это и вкусовщина, но всякий раз как пытаюсь разобраться есть ли что-нибудь в окамле нового для себя воротит банально от синтаксиса.
Короче хотел докинуть мнения, но чёт не вяжуться мои слова в связные предложения.
Аноним 31/05/16 Втр 07:23:40  758158
Раз зависимых типов трэд почил в бозе, поинтересуюсь тут. Есть переменная целочисленного беззнакового типа совпадающая разрядностью с разрядностью платформы. В конструкторе некий объект её инкременирует, в деструкторе декременирует, больше никто её не трогает. Человеку-то очевидна невозможность её переполнения, но как можно было бы продемонстировать это гипотетическому компилятору? Вообще из языков с зависимыми типами не так уж много императивных, а в тех что есть переполнения вообще игнорируются, но интересует-таки теоретическая возможность реализовать подобное.
Аноним 01/06/16 Срд 11:24:29  759127
>>748876
Да они вообще семантику и проверку типов нигде не поменяли.
Только с парсером побаловались.
Аноним 02/06/16 Чтв 07:29:24  759831
>>758158
ты наркоман ну или математик, сам придумал какую то проблему, конпеляторы знают разрядность под которой они работают
Аноним 02/06/16 Чтв 10:13:19  759869
>>758158
Я по оразованию математик, но попробую хотя бы план тебе наметить. Во-первых, тебе нужно формализовать понятие объекта и доказать для начала, что для заданного объекта деструктор не может быть вызван, если не был вызван конструктор. Во-вторых, как ни крути, надо доказать, что количество объектов у тебя не сможет превысить 2^битность твоего беззнакового типа.

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 27 | 3 | 18
Назад Вверх Каталог Обновить

Топ тредов