@Fsharp_chat

Страница 159 из 772
Evgeniy
23.05.2017
21:36:13
jet.com работает нормально.

У них привязка к расположению, видимо, для определения возможности доставки и расчета конечной стоимости.

Если ввести zip code из USA, то поиск работает.

@mostdope ^

Google
Most
23.05.2017
21:42:31
я написал, что уже попробовал)

Evgeniy
23.05.2017
21:43:40
@mostdope Даже аккаунт создавать не нужно, если правильное расположение указано.

Просто по итогам вашего обсуждения Антон в твиттере написал, что сайт Jet не работает. Нехорошо. :(

Most
23.05.2017
21:48:54
Надо исправить на unexpected behavior

Evgeniy
23.05.2017
21:50:30
Да, наверное, им следовало бы повесить плашку о том, что пользователь находится вне U.S.

Вопрос к ребятам, которые там занимаются UX.

Artemy
23.05.2017
21:59:55
Да вроде из Беларуси всё в порядке

Evgeniy
23.05.2017
22:02:42
Artemy Поиск работает, если ты расположен в U.S. или имеешь аккаунт. Их магазин за пределы штатов не осуществляет доставку.

Artemy
23.05.2017
22:02:55
Я в курсе

Но тут же писали ,что категория не выбирается, как я понял

Evgeniy
23.05.2017
22:04:14
Да. У меня без указания zip code пишет: > Sorry, your search did not match any products.

Artemy
23.05.2017
22:06:05
Есть небольшой вопрос. В ходе различных промежуточных операций обработки данных для агрегирования наборов значений эффективнее будет использовать struct-tuple, нежели обычные, так?

Evgeniy
23.05.2017
22:10:25
Artemy Нужно профилировать. Это единственное, что я усвоил из статей про перформанс. :)

Google
Artemy
23.05.2017
22:14:58
Просто теперь, когда есть 2 варианта, я часто стал думать, какой вариант лучше было бы использовать. ?

Friedrich
24.05.2017
05:04:28
Блин, такая печаль. Используешь AppSettingsTypeProvider, а его ConnectionStrings нельзя использовать с SQLProvider =/
Звучит как проблема, которую можно починить. Давай запилим багрепорт и пофиксим :)

Vasily
24.05.2017
05:44:47
Friedrich
24.05.2017
05:45:22
Не получится скорее всего,это же не литералы
Кажется, мы по-разному поняли проблему.

Pawel
24.05.2017
05:46:50
Не получится скорее всего,это же не литералы
получится, если тайппровайдер будет брать нужную сторку оттуда, откуда ему скажут

Friedrich
24.05.2017
05:46:53
Я просто буквально вчера решал похожую задачу, там в три секунды всё решилось. У меня была проблема в том, что в секции connectionStrings эти строки указываются немного в другом формате, и их нельзя потом передать в SQLConnection. Решилось при помощи EntityConnectionStringBuilder — этот класс умеет парсить строки из конфига и отдавать такие строки, которые подходят для SQLConnection.

Я не вижу пока что, чтобы задача вообще была про тайп-провайдеры — просто про совместимость строк :)

@neftedollar когда будешь доступен — расскажи нам!

Vasily
24.05.2017
07:17:32
Тут непонятно, про что задача на самом деле. Обычному провайдеру можно указать имя коннекшн стринга, которое он расчухает при компиляции. Тут же коннекшн стринг будет полем сгенерированного другим тайп провайдером типа. Мне кажется, может и не взлететь.

Evgeniy
24.05.2017
07:20:27
Vasily Должно взлететь, кажется. Я помню, писали, например, специальный провайдер, который считывает файл с диска. Потом его планировалось в SqlClient передавать.

Vasily
24.05.2017
07:21:05
Тайп провайдеру нельзя другой тайп провайдер же передать

Есть такой ишью вроде даже

Evgeniy
24.05.2017
07:21:27
Не провайдер, а литерал (текстовый файл с диска).

Vasily
24.05.2017
07:21:58
Ну проблема в том, как внутри тайп провайдера сформировать литерал

Хотя на generative может и получиться, конечно, но не факт

Evgeniy
24.05.2017
07:22:24
Vasily https://github.com/fsprojects/FSharp.Management/issues/71

https://github.com/fsprojects/FSharp.Management/pull/77

Вот реализация. Странно, что ишшуй не закрыли.

Если не забуду, вечером проверю.

Vasily
24.05.2017
07:27:13
let typedStringReader = erasedType<obj> thisAssembly rootNamespace typeName let content = File.ReadAllText(filePath) let contentField = ProvidedLiteralField("Content", typeof<string>, content) contentField.AddXmlDoc(sprintf "Content of '%s'" filePath) typedStringReader.AddMember contentField typedStringReader

Google
Vasily
24.05.2017
07:27:21
Должно работать, по идее

За счет ProvidedLiteralField

Надо, кстати, попробовать

Хотя тут человек просто содержимое файла как литерал представляет

Если чуток переписать на список файлов в папке, то может быть интересно

Будем посмотреть

Кстати, в чем отличие ProvidedParameter от ProviderStaticParameter?

Evgeniy
24.05.2017
07:51:40
Vasily ProvidedParameter нужен для определения аргументов методов и конструкторов.

А ProviderStaticParameter — для параметров самого провайдера.

И статических методов, соответственно.

Vasily
24.05.2017
07:55:12
Пока застрял, как мне вернуть множество провайдед типов

Т.е. на каждый файл свой

Anton
24.05.2017
07:55:48
Отошел в работу с ушами на пару дней и + 600 сообщений.

Что там с книгами решили по F# ?

MrErsh
24.05.2017
07:57:48
Anton
24.05.2017
07:58:08
MrErsh спасибо большое

Кстати, а может кто подсказать, какие аргументы можно вставить на работе, что бы разрешили писать на F#, вместо C#. А то я такой человек, что пока писать на языке не начну что-то серьёзное, то он в голове не задерживается, а писать на F# хочется =)

Домашние поделки аля laba011 не дают понимания языка.

Vasily
24.05.2017
08:05:23
Мда, жалко, что TypeProvider надо через type определять

С одной стороны логично

Google
Vasily
24.05.2017
08:05:40
С другой стороны в цикле не переопределяешь

Аргументы - строгая типизация, размер кодовой базы, жесткая структура файлов, скорость разработки

Из минусов - нет жестких устоявшихся правил кодирования

Мало тулинга

Vasily
24.05.2017
08:07:58
Чтобы была совместимость с c#, надо приседать

Anton
24.05.2017
08:08:20
Хм

Anton
24.05.2017
08:08:52
Открыл эту F# 4 expert, и там меня удивило, с каких пор Swift в списке ФП ?



Admin
ERROR: S client not available

Anton
24.05.2017
08:09:27
Я что-то пропустил в этой жизни?

Igor
24.05.2017
08:11:30
Открыл эту F# 4 expert, и там меня удивило, с каких пор Swift в списке ФП ?
Ну если там есть Scala, то почему нет (она то точно мульти-парадгменная, это прям заложено в архитектуру)

Anton
24.05.2017
08:11:56
Scala сюда вписывается, а вот каким боком тут Swift?

Pawel
24.05.2017
08:12:27
а почему он не должен там быть и чем он хуже других?

Igor
24.05.2017
08:12:44
Anton
24.05.2017
08:13:09
"Typed functional lang-s"

Swift ФП ?

Evgeniy
24.05.2017
08:13:37
@the_RAMZAY Это можно выяснить в чате про Swift.

Дед Пегас
24.05.2017
08:13:46
Swift вполне себе ФП

Google
Anton
24.05.2017
08:13:46
но это пишут в книге по F#

Igor
24.05.2017
08:13:54
"Typed functional lang-s"
Ну ок ? (какой-то дурацки спор)

Anton
24.05.2017
08:15:06
Просто ну, из приведённого списка, все языки ФП кроме Swift. Либо Swift ФП, а я и не знал 0_о

Pawel
24.05.2017
08:15:20
Всё же зачем надо приседать в F# чтобы была совместимость с c#? Ничего подобного не обнаружил

Anton
24.05.2017
08:17:07
А разве не для интеропа с C# ввели Struct аттрибут в F# ?

Friedrich
24.05.2017
08:17:20
Всё же зачем надо приседать в F# чтобы была совместимость с c#? Ничего подобного не обнаружил
+ Большинство моих F#-проектов нацелены на интероп с C#, и я себя не ощущаю ущемлённым. Да, нужно некоторые практики соблюдать (другой стиль именования, избегание Option или Async в публичных сигнатурах, запрет на inline), но это и правда не очень сложно.

Roman
24.05.2017
08:29:18
Но в итоге в issue нашёл регент. Можно в рантайме переопределять строку подключения, так что все ок

Friedrich
24.05.2017
08:29:58
this
Ок, можешь не пояснять, я понял проблему.

Roman
24.05.2017
08:33:17
Я не вижу пока что, чтобы задача вообще была про тайп-провайдеры — просто про совместимость строк :)
Там два тайп провайдера. Один читает из конфигов , другой лезет в бд. Прочитать с помощью тацппровпйдера строку подключения и впихнуть Ее в коннекшнстринг другого тайппровайдера не получается.

Friedrich
24.05.2017
08:33:32
Ок :)

Evgeniy
24.05.2017
08:35:50
@fvnever @neftedollar Но это можно исправить.

С помощью ProvidedLiteralField.

@fvnever Кстати, ты прочитал мое вчерашнее замечание про warnaserror?

Friedrich
24.05.2017
08:37:46
С помощью ProvidedLiteralField.
Это уже существующая фича или proposal?

@fvnever Кстати, ты прочитал мое вчерашнее замечание про warnaserror?
Да, прочитал и согласен, что это решение.

Evgeniy
24.05.2017
08:38:01
@fvnever Существующая же. Выше с Vasily обсуждали.

Roman
24.05.2017
08:38:15
С помощью ProvidedLiteralField.
Надо почитать про ProvidesLiteralField

Friedrich
24.05.2017
08:38:19
@fvnever Существующая же. Выше с Vasily обсуждали.
А чего они тогда не заюзают у себя в провайдере?

Evgeniy
24.05.2017
08:38:28
Кто их знает?

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