@Fsharp_chat

Страница 188 из 772
Nikolay
01.06.2017
11:29:53
Да читаю пока

Friedrich
01.06.2017
11:30:16
Это хорошая идея.

Nikolay
01.06.2017
11:32:01
orders <<- NewOrder.To.Buy(100 .Shares.Of "IBM") { limitPrice = 300 allOrNone = true valueAs = fun qty unitPrice -> qty * unitPrice - 500 } А это типа как, не пойму? :)

Можно ещё как-то так попробовать :) При условии, что билдеру можно задать обязательные операции Telegram.send message { id 123 text "Some text" parseMode ParseMode.Html }

Google
Nikolay
01.06.2017
11:47:29
А билдеру то можно задать обязательные операции? :)

Roman
01.06.2017
11:47:32
Мне вот такой синтаксис нравится, правда громоздковат получается
Ещё можно хранить все в замыкании. Но сложновата схема получается. С явным каррированием.

Roman
01.06.2017
11:47:54
А билдеру то можно задать обязательные операции? :)
Да, метод build будет только у конкретного типа.

Это как?
Напишу как приеду, но я бы не использовал

Roman
01.06.2017
11:53:36
Эмуляция ООП через функции

Эмуляция ООП через функции
Это мутотень с постоянной проверкой типов.

Max
01.06.2017
12:52:03
+

Vasily
01.06.2017
13:33:07
О, появилось немного времени поразбираться в computation expressions

Google
Vasily
01.06.2017
13:33:48
@Dolfik там в фунограм какими понятиями оперируют?

При отсылке сообщений этц?

Чат, команда, сообщение,

Nikolay
01.06.2017
13:34:26
Всмысле понятиями?

Vasily
01.06.2017
13:34:50
Ну предметная область

Если абстрактно

Nikolay
01.06.2017
13:36:06
Пока у меня тупо обёртка над Http API

Я немного не понимаю, о чём ты :)

Vasily
01.06.2017
13:39:19
Чат, сообщение, команда.. вот это вот все

Aleksander
01.06.2017
13:41:01
сообщение -> команда + аргументы ?

интересно.. может подойдет какой-нибудь существующий command line parser?

Aleksander
01.06.2017
13:45:06
он на DU, так не интересно :)

тут была статья про команды на рекордах, найти бы что-то в этом роде

Vasily
01.06.2017
14:04:00
Коллеги, а у нас ща для http в .net шо модное? HttpClient?

Vasily
01.06.2017
14:04:45
пока есть время, попрактикуюсь в экспрешнах :)

Хммм... получается любопытно

Хмм... чуваки nuget dsl для примера написали http://www.readcopyupdate.com/blog/2014/10/10/edsls-using-custom-operations.html

Очень крутая техника

Google
Roman
01.06.2017
15:21:38
Artemy
01.06.2017
15:31:03
JSON какой-то получается

Только покруче

Vasily
01.06.2017
15:31:50
по факту да. Ща пытаюсь по-быстрому натянуть на заполнение HttpRequestMessage, пока не очень получается

Чет null возвращает

Friedrich
01.06.2017
15:32:16
Кошмар!

Vasily
01.06.2017
15:35:57
Да вот тоже не пойму

type RequestBuilder()= member this.Yield (item:'a):HttpRequestMessage = defaultRequest [<CustomOperation("method")>] member this.Method(request:HttpRequestMessage,method:HttpMethod)= request.Method<-method request [<CustomOperation("header")>] member this.Header(request:HttpRequestMessage,name:string,value:string)= request.Headers.Add(name,value) request

может кто глянуть, где собака порылась?

Roman
01.06.2017
15:36:57
Vasily
01.06.2017
15:37:06
let req =RequestBuilder() let request=req{ method HttpMethod.Get header "Authorization" "Basic" }

Не пойму, откуда null

А не, вроде все норм

Дебаг козлит

Короче, в funogram можно применить

Ну или в обертке над http

вполне себе функциональный стиль получится

Хммм... получилось очешуительно

И я понял, что делает оператор Yield

Надо будет на досуге запилить свою версию FunHttp :)

Google
Vasily
01.06.2017
16:10:33
@Dolfik, как тебе такой синтакс? let request=req { method HttpMethod.Get url "http://lenta.ru" header "Authorization" "Basic" header "MyHeader" "MyValue" }

Nikolay
01.06.2017
16:24:58
Можно сделать post, put, get, delete, etc :)

Http.post { ...

Может как-то так

Vasily
01.06.2017
16:35:48
Ну можно и так.Фишка в том,что хедеры все равно накидывать придется, билдер контента тоже

Т.е. лучше более низкоуровневую хрень

Friedrich
01.06.2017
17:12:05
Нашёл смешной баг: https://github.com/fsprojects/Foq/issues/19

Igor
01.06.2017
17:33:16
Народ, а эти няшные библиотеки по построению графиков прямо из repl работают на macos (mono/coreclr)?

Igor
01.06.2017
17:35:26
работают в VSCode
В core? Можно название пакета самой простой?

Evgeniy
01.06.2017
17:36:22
Мне кажется, в Core ничего не работает.

Roman
01.06.2017
17:36:38
https://tahahachana.github.io/XPlot/ эта может в Core заработать(не спрашивай, интуиция))

Evgeniy
01.06.2017
17:36:42
FSharp.Charting и xplot обновлялись сто лет назад.

Igor
01.06.2017
17:38:58
Ещё непонятно как использовать vscode, ведь у "dotnet new" вообще убрали поддержку mono на macOS.

Igor
01.06.2017
17:42:27
а ставить mono и потом делать dotnet msbuild ?
Mono 5.2 стоит уже (ставил с Xamarin). Хотя я в общем понял, ведь REPL в VSCode всё ещё на mono работает.

Roman
01.06.2017
17:42:53
с Expecto одни проблемы! Создал свеженький expecto проект в VSCode и он не компилится =(



Google
Roman
01.06.2017
17:43:54
Все везде прописано, ссылки есть. А Expecto is not defined

Nikolay
01.06.2017
17:44:17
О, тоже светлую тему используешь?)

Roman
01.06.2017
17:44:30
О, тоже светлую тему используешь?)
стандартную, мистер флудер xD

Nikolay
01.06.2017
17:45:40
стандартную, мистер флудер xD
Стандартная тема тёмная

Я по делу спросить хотел, а ты флудером обзываешься :(

У меня со светлой темой консоль чудит



Artemy
01.06.2017
17:46:36
А то такое issue есть: https://github.com/haf/expecto/issues/151

Так что нужен .NET 4.6.1 +

Roman
01.06.2017
17:50:57
Было один раз. Да

Так что нужен .NET 4.6.1 +
Спасибо! Он оказывается по умолчанию 4.5 создает.

Nikolay
01.06.2017
17:51:31
Было один раз. Да
У меня постоянно. Зарепортить надо что-ли

Roman
01.06.2017
17:52:31
У меня постоянно. Зарепортить надо что-ли
да. Стоит зарепортить. Или консоль смени

Artemy
01.06.2017
17:52:32
Спасибо! Он оказывается по умолчанию 4.5 создает.
Рад помочь.) Просто у самого проблема была недавно.

Roman
01.06.2017
17:52:38
Artemy
01.06.2017
17:53:43
Спасибо! Он оказывается по умолчанию 4.5 создает.
А в Ionide проекты через Forge создаются, так?

Artemy
01.06.2017
17:54:13
Тогда можно создать issue на Гитхабе Forge'а о том, что для Expecto нужно создавать проект под .NET 4.6.1

Nikolay
01.06.2017
17:54:41
О, кстати я так и сделал.
terminal.integrated.shell.windows менял?

Roman
01.06.2017
17:54:54
Тогда можно создать issue на Гитхабе Forge'а о том, что для Expecto нужно создавать проект под .NET 4.6.1
если проверить частоту вхождений, то issue будет очень популярным )

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