@Fsharp_chat

Страница 343 из 772
Igor
06.10.2017
08:09:03
В Scala вот есть разные реализации всей этой функциональности — cats и scalaz. И это очень положительно сказывается на экосистеме, как мне кажется.
И обе они базируются на расширенное системе типов из scala. Да и на последнем scala митапе, слышал что cats это просто “более лучше scalaz”, которая отпочковалась от нее.

Anton
06.10.2017
08:10:55
Кстати да, в .net core вообще хоть планируют тайп провайдеры?

Friedrich
06.10.2017
08:12:51
Кстати да, в .net core вообще хоть планируют тайп провайдеры?
Мы прям при тебе, в этом чате их планируем починить.

Anton
06.10.2017
08:12:53
Mono конечно хорошая вещица, но хочется от него отказаться в конце-концов.

Google
Friedrich
06.10.2017
08:13:01
Когда мы сделаем — тогда и будет.

(ну, или кто-нибудь сделает раньше нас, это тоже отлично)

Anton
06.10.2017
08:14:13
@fvnever а что там с ними не так, почему не могут просто взять и ctrl-c & ctrl-v из .Net ?

Friedrich
06.10.2017
08:17:02
@fvnever а что там с ними не так, почему не могут просто взять и ctrl-c & ctrl-v из .Net ?
Пока что моё (даже близко не полное) видение ситуации таково: - generative type providers используют сохранение динамических сборок для какой-то цели (не факт что принципиально важной) - в .NET Core не запилена эта фича вообще, и в ближайшее время не планируется - сделать Ctrl-C — Ctrl-V на уровне .NET Core нельзя, потому что а) этого кода нет в открытом доступе, это часть проприетарной реализации .NET Framework б) этот код завязан на Windows (как минимум непринципиальные для нас части, типа генерации PDB)

Anton
06.10.2017
08:18:40
Хм, да в .Net Core чот куда не плюнь - фича не запилина. Странно всё это, вроде релизы выходят, а действительно нужный функционал не добавляется.

Friedrich
06.10.2017
08:19:06
На моей памяти это единственный пример действительно нужной вещи, которую не сделали и не планируют. (заметьте, не отказываются, а просто пока что не планируют; чёрт его знает, когда будут делать)

Anton
06.10.2017
08:19:33
Я помню и от Гебба высказывания в сторону EF Core

Friedrich
06.10.2017
08:19:58
Я помню и от Гебба высказывания в сторону EF Core
EF Core и .NET Core — вообще разные вещи, делаются разными командами с разными приоритетами.

Нам вот в F# не очень важен EF Core, к примеру (хотя мы умеем с ним взаимодействовать, я даже сам пробовал).

Anton
06.10.2017
08:21:02
Нам важны тайп провайдеры, а их нет =(

Nikolay
06.10.2017
08:21:07
У нас есть тайп провайдеры, ефкор не нужон.

Anton
06.10.2017
08:21:12
Сижу вот на mono из за них.

Friedrich
06.10.2017
08:21:16
Нам важны тайп провайдеры, а их нет =(
Поэтому нам надо оторвать попу от стула, пойти и сделать!

Google
Nikolay
06.10.2017
08:21:19
Нам важны тайп провайдеры, а их нет =(
SqlProvider вроде Erased, и возможно уже поддерживается в неткоре

Anton
06.10.2017
08:21:33
Friedrich
06.10.2017
08:21:35
SqlProvider вроде Erased, и возможно уже поддерживается в неткоре
Да, какой-то из SQL'ных провайдеров поддерживается.

Evgeniy
06.10.2017
08:21:41
Nikolay
06.10.2017
08:21:43
А вот Rezoom.Sql, который мне больше нравится, он помоему Generative

Но Rezoom.Sql не может в другие БД

Friedrich
06.10.2017
08:22:14
а парням из MS за что деньги платят?
А ты сам-то как думаешь? За то, что они выполняют задачи работодателя. Которые в идеале должны, но могут и не совпадать с задачами, которые интересны лично мне или тебе.

Evgeniy
06.10.2017
08:22:40
Но Rezoom.Sql не может в другие БД
Другие — это какие?

Friedrich
06.10.2017
08:23:08
Пока что я вижу только всеобщую путаницу в сообществе по поводу провайдеров. Никто не видит полной картины, как они сделаны, и поэтому нормальной движухи в сторону их реализации и нет.

Разберёмся, поясним всем, поставим цели, и выполним.

Nikolay
06.10.2017
08:23:17
Другие — это какие?
Всё что не pg, sqlite и sql server

Evgeniy
06.10.2017
08:23:55
Friedrich
06.10.2017
08:24:20
А меня вот не удручает. Мы с @impworks вдвоём работали над компилятором, и даже вдвоём постоянно толкались и конфликтовали в коде. Слишком много разработчиков не нужно.

Nikolay
06.10.2017
08:24:23
Пока что я вижу только всеобщую путаницу в сообществе по поводу провайдеров. Никто не видит полной картины, как они сделаны, и поэтому нормальной движухи в сторону их реализации и нет.
Сайм сказал слишком сложно там всё, и нужно большую работу проделать. Но хз, может он имел ввиду большую работу по фиче сохранения сборок, а на самом деле там без неё можно обойтись

Friedrich
06.10.2017
08:25:15
Сайм сказал слишком сложно там всё, и нужно большую работу проделать. Но хз, может он имел ввиду большую работу по фиче сохранения сборок, а на самом деле там без неё можно обойтись
Да, я вот и хочу разобраться. И либо я дальше соглашусь с Доном (и постараюсь обнародовать внятное пояснение), либо я буду предлагать ему варианты решения.

Friedrich
06.10.2017
08:25:56
Разве конфликтовали? По-моему был только момент с табопробелами :)
Ну, явных конфликтов не было, но было чёткое разделение в зонах ответственности. И, если кто лез в чужой код, то это было сложно :)

Andrew
06.10.2017
08:26:20
Да, такое было

Google
Friedrich
06.10.2017
08:26:20
Весь код Сайма на гитхабе.

Anton
06.10.2017
08:26:31
Friedrich
06.10.2017
08:26:40
.Net Framework
Я не понимаю, что ты спрашиваешь.

Весь код тайппровайдеров выложен на гитхаб.

Friedrich
06.10.2017
08:27:45
Я про это.
При чём тут .NET Framework?

Anton
06.10.2017
08:27:57
Тогда я совсем не понимаю.

Friedrich
06.10.2017
08:28:05
Ещё раз: Сайм показал, как они реализовали тайппровайдеры. Выложил тебе код под открытой лицензией.

Anton
06.10.2017
08:28:09
"Никто не видит полной картины, как они сделаны, и поэтому нормальной движухи в сторону их реализации и нет."

Friedrich
06.10.2017
08:28:21
Тут не Сайма нужно пинать, а себя самого!

Anton
06.10.2017
08:29:06
Аааа, я решил, что во фразе «Никто не видит» сокрыт смысл, что кота нет!

Friedrich
06.10.2017
08:30:16
Не, я не это имел в виду, прошу прощения что ввёл в заблуждение.

Anton
06.10.2017
08:32:22
Тогда наверное стоит начать с этого пункта «- в .NET Core не запилена эта фича вообще, и в ближайшее время не планируется»

А что за фича такая? Есть её кот из "большого" .Net ?

Friedrich
06.10.2017
08:34:31
А что за фича такая? Есть её кот из "большого" .Net ?
Фича — сохранение динамических сборок (AssemblyBuilderAccess.SaveAndRun). Кода нет.

Anton
06.10.2017
08:35:15
Чёрт, а вот это плохо. Тогда только MS имеет шансы на её быструю реализацию.

Friedrich
06.10.2017
08:35:42
Пока что у меня на повестке вопрос — нужна ли нам эта фича для тайп-провайдеров вообще.

Может, и не нужна.

Anton
06.10.2017
08:35:53
Хм

Google
Anton
06.10.2017
08:36:01
И как это узнать?

Friedrich
06.10.2017
08:36:06
Читать код.

Nikolay
06.10.2017
08:36:41
Фича — сохранение динамических сборок (AssemblyBuilderAccess.SaveAndRun). Кода нет.
Всмысле кода нет? Нет исходника реализации в .Net Framework?

Friedrich
06.10.2017
08:37:18
Всмысле кода нет? Нет исходника реализации в .Net Framework?
Насколько я понял jkotas, там завязка на нативную часть, кода которой у нас нет. Всякие там PDB-writers.

Admin
ERROR: S client not available

Friedrich
06.10.2017
08:38:02
https://github.com/dotnet/corefx/issues/4491#issuecomment-189756092 > In particular, the support for emitting debug information depends on unmanaged PDB writer that is very complex Windows-specific component that we have no plans to open source and bring x-plat.

Nikolay
06.10.2017
08:38:39
Поэтому ты и хотел найти Mono.Cecil, и там реализацию посмотреть

Но ты не нашёл где это, да?

Friedrich
06.10.2017
08:40:09
Поэтому ты и хотел найти Mono.Cecil, и там реализацию посмотреть
Это одна из веток плана для дальнейшей проработки.

Если мы решим, что нам действительно нужно сохранение сборок — можно попробовать альтернативные способы их сохранения из тех же билдеров, которые нам готовят тайп-провайдеры.

Friedrich
06.10.2017
08:42:02
Тут надо всем подряд писать и со всеми разговаривать. Обожди, дай я соберусь с мыслями и планами. И потом уже буду всем писать :)

Nikolay
06.10.2017
08:42:11
Оке)

Friedrich
06.10.2017
08:42:26
Потом мы у 7sharp9 ещё спросим, какие у него были задумки.

Nikolay
06.10.2017
08:42:30
Я просто пинаю тебя, ради великого дела :)

Anton
06.10.2017
08:43:02
Вообще... Было бы хорошо всех этих ребят собрать тут в чати.

Что бы не бегать по гитхабам.

Nikolay
06.10.2017
08:43:42
Лучше в отдельном чате тогда уж, Gitter, например

Friedrich
06.10.2017
08:43:52
Мне без разницы, как с кем коммуницировать. Сначала в любом случае нужно всё обдумать и самому разобраться — или хотя б составить список вопросов.

Google
Friedrich
06.10.2017
08:44:12
А просто так собирать людей в чате — глупости (уж поверьте, у меня по работе куча таких чатов и митингов).

Лучше в отдельном чате тогда уж, Gitter, например
Правильное место для обсуждения — это канал #compiler в F# Slack.

Но в правильное место приходят с правильными вопросами.

Я приходил туда раньше с очень общими вопросами а-ля «как работают тайп-провайдеры», и это было совсем не продуктивно.

Vasily
06.10.2017
08:46:16
чтобы задать правильный вопрос - надо знать большую часть ответа :)

Evgeniy
06.10.2017
09:01:40
Я бы хотел разобраться, мешает ли что-нибудь портировать TypeShape на .NET Core.

Это хорошая библиотека, правда, пока не получившая широкого применения.

Friedrich
06.10.2017
09:05:26
Давайте разберёмся.

Вернее, давайте возьмём да скомпиляем. Похоже, оно просто возьмёт и начнёт работать.

Изменения в Reflection API — та ещё заноза. Но чуваки могли с самого начала взять пакетик с полифиллом, и всё, скорее всего, заработало бы ещё на .NET Standard 1.6. Жаль, что Эйрик был не в курсе про полифилл.

Friedrich
06.10.2017
09:08:16
Я тоже не в курсе!
https://github.com/agileobjects/NetStandardPolyfills

Судя по количеству звёздочек на гитхабе (две) — вообще никто не в курсе :)

Страница 343 из 772