@Fsharp_chat

Страница 73 из 772
Nikolay
25.04.2017
19:28:32
"123" :> int не будет работать

Evgeniy
25.04.2017
19:28:35
@Dolfik inline

Nikolay
25.04.2017
19:29:23
@Dolfik inline
Спасибо, работает

По крайней мере ошибки не показывает

Google
Evgeniy
25.04.2017
19:30:10
Option.map (fun i -> i |> string) Option.map string

Nikolay
25.04.2017
19:31:00
Блин, это уже слишком круто

Artemko
25.04.2017
19:32:50
Option.fold string String.empty

Evgeniy
25.04.2017
19:39:41
@catlion Как это работает?

Artemko
25.04.2017
19:40:45
Как обычный фолд. Если буритто пустое, на выходе default value со входа

Evgeniy
25.04.2017
19:41:53
Меня смущает, что string -- это функция одной переменной.

Или я где-то прокололся, как в прошлый раз?

Artemko
25.04.2017
19:42:36
Наверное я

Nikolay
25.04.2017
19:42:57
Проверил, fold не работает

Artemko
25.04.2017
19:43:20
Но точно помню что что-то было, скорее всего в fsharpx

Nikolay
25.04.2017
19:43:23
Type mismatch. Expecting a ''a -> 'b -> 'a' but given a ''a -> string' The type ''a -> 'b' does not match the type 'string

Evgeniy
25.04.2017
19:48:02
Мне fold всегда голову ломает.

Хоть на секунду, но ломает.

Google
Pavel
25.04.2017
19:49:54
Есть Option.fill, Option.iter, всё в ExtCore

Artemko
25.04.2017
20:01:15
А я ищу в fsharpx

Nikolay
25.04.2017
20:14:33
А если в качестве аргумента функции указан тип ?offset: int64, я не могу получается передать в эту функцию тип ?offset: int64?

https://gist.github.com/Dolfik1/080f7020e68603f8fa10252f8ab8b02f

Вот на такое ругается

Хочет чтобы я ему не option передавал, а просто int

Nikolay
25.04.2017
20:32:03


Такой вариант норм?

Roman
25.04.2017
20:33:24
Ты хочешь передавать туда Option<int> ?

Nikolay
25.04.2017
20:33:45
Угу

Но при этом, чтобы он был не обязательный

Roman
25.04.2017
20:34:25
А, helpers toString принимает option?

Nikolay
25.04.2017
20:34:42
Да

Roman
25.04.2017
20:35:15
Я б залез в msdn

Nikolay
25.04.2017
20:36:15
Ок, посмотрю. Тут ещё есть вопрос, в F# нельзя указать в качестве типа аргумента два типа?



Integer or String

Igor
25.04.2017
20:37:34
Integer or String
по моему можно юзать всегда string, телеграм понимает

Nikolay
25.04.2017
20:38:05
Ну да, конечно понимает, но не удобно будет людям, использующим библиотеку

Google
Nikolay
25.04.2017
20:38:29
Придётся писать код: Telegram.SendMessage(message.Chat.Id.ToString()

Если возможности нет такой, сделаю тогда перегрузку

Igor
25.04.2017
20:40:23
Ну да, конечно понимает, но не удобно будет людям, использующим библиотеку
Ну тогда надо конечно: type ChatId = NumberId of int | StringId of string и паттерн матчинг ?

Nikolay
25.04.2017
20:41:10
Не, лучше перегрузку сделаю :D

Летучая
25.04.2017
20:54:24
Ты делаешь обёртку для какой-то готовой либы? Или с 0 пишешь свою?

Nikolay
25.04.2017
20:54:32
Свою пишу

Но подсматриваю)

Летучая
25.04.2017
20:55:01
Для ботов? Или для всего API, включая авторизацию по MTProto?

Nikolay
25.04.2017
20:55:09
Не, конечно для ботов)

Под MTProto даже для C# годной либы нету

Летучая
25.04.2017
20:55:44
Надо написать будет. Хотя если МС действительно забило на увп, то не надо.

А у F# есть библиотеки для vk.com? А то можно хайпануть, написав обёртку.

Nikolay
25.04.2017
20:58:41
Я пишу свою, чтобы использовать всякие Option

А так конечно можно было бы использовать готовую

Ну и в целом не изменяемые типы

Igor
25.04.2017
21:01:10
Ну и в целом не изменяемые типы
а почему у тебя static member, они что ли не топ-модуль функции?

Nikolay
25.04.2017
21:02:10
Я писал сначала модуль

Но функции в модуле не поддерживают не обязательные параметры

Google
Nikolay
25.04.2017
21:02:51
+ нельзя делать перегрузки

Igor
25.04.2017
21:03:12
+ нельзя делать перегрузки
ну в haskell тоже и норм, такое ощущение что тебя ни как не отпустит C#

Nikolay
25.04.2017
21:03:52
Просто уродливо получается в таком случае

sendMessage 123 "Some text" None None None None None

Летучая
25.04.2017
21:05:06
Интересно оч, может ли помочь функциональщина красиво обрабатывать цепочки запросов, например. И вообще так ли нужны обёртки над .NET библиотеками, какого профита с ними можно добиться.

Nikolay
25.04.2017
21:06:02
Как-то так)

@angmarr есть предложения как лучше сделать?

Ну и ещё аргумент за использование static member был тот, что он используется в FSharp.Data Http Utilities

Igor
25.04.2017
21:11:47
Там вроде ; не нужны когда на разных строчках

@angmarr есть предложения как лучше сделать?
Надо подумать, скинь ссылочки на метод где у тебя много option параметров

Nikolay
25.04.2017
21:13:54
https://gist.github.com/Dolfik1/9eab7d542a1195b76b256a9924a2b75b#file-fs-fs

Лол, подсветка в гитхабе сломалась

Вот сам метод в доках: https://core.telegram.org/bots/api#sendmessage

Artemko
25.04.2017
21:21:19
у меня есть вот такое

https://gist.github.com/catlion/db1b932d30eba2c2b9b20bc2d29a15a5

оно умеет читать и отправлять, но я давно забил на него

Google
Roman
25.04.2017
21:23:50
@Worldbeater а replit разве не поддерживает cors ?

Летучая
25.04.2017
21:28:36
@Worldbeater а replit разве не поддерживает cors ?
доподлинно неизвестно, не тестил

мб можно попробовать

Но есть отличная с# либа которая обходит ограничения API
И есть ещё другая, которая может в абсолютно все методы последней версии апи ?

Летучая
25.04.2017
21:32:29
Может мы об одной и той же?)
? Не, я шутки про свою либу с напарсенными из js-схемы классами шучу. Её пока даже в нугете нет :(

Igor
25.04.2017
21:41:51
Кто нибудь может сказать источник на который ссылается спикер, говоря что "это метод можно не тестировать"? https://youtu.be/Ux5wUSOsEfc?t=56m55s

Nikolay
25.04.2017
21:50:19
И не забудь мою либу FunHttp ?

Igor
25.04.2017
22:26:34
Тест будет повторять тело метода, что там тестировать?
Я и не спорю, мой вопрос был вообще не об этом. Марк говорит о каком-то Джират Мосаро, кто это, где он говорил о тестах?

Artemko
25.04.2017
22:40:22
http://xunitpatterns.com/index.html

Автор

Pavel
26.04.2017
04:06:11
sendMessage 123 "Some text" None None None None None
Пишется рекорд со всеми параметрами, и его дефолтный вариант

`sendMessage { message with ... }`

Nikolay
26.04.2017
05:14:26
Пишется рекорд со всеми параметрами, и его дефолтный вариант
Думал, не удобно, каррирование не получится сделать

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