@Fsharp_chat

Страница 236 из 772
Anton
19.07.2017
12:21:44
А так можно?

Evgeniy
19.07.2017
12:22:11
А так можно?
https://github.com/BlueMountainCapital/FSharpRProvider/tree/gh-pages

Anton
19.07.2017
12:22:26
Нужно будет пометить вечерком

Evgeniy
19.07.2017
17:13:26
http://fable.io/fableconf/#speakers

Google
Evgeniy
19.07.2017
17:13:52
Надеюсь, видео будет. // когда их смотреть только

Adam
19.07.2017
17:26:06
Всем привет! Почему данная функция некорректна в f#? let hypot a b = let adj = a ** 2 let opp = b ** 2 sqrt <| adj + opp

Adam
19.07.2017
17:28:21
2 не float.
спасибо!

Всем привет! Почему данная функция некорректна в f#? let hypot a b = let adj = a ** 2 let opp = b ** 2 sqrt <| adj + opp
Можно этот пример записать в одну строку как-нибудь, не выделяя дополнительных функций?

Klei
19.07.2017
17:42:32
let inline hypot a b = sqrt (a*a + b*b)
Может не надо сразу inline-ами в новичков кидаться?)

Adam
19.07.2017
17:43:09
Может не надо сразу inline-ами в новичков кидаться?)
//const hypot = (a, b) => Math.sqrt(x ** 2 + y ** 2) - вот что я хотел изобразить. Но двойка была int

Klei
19.07.2017
17:45:25
//const hypot = (a, b) => Math.sqrt(x ** 2 + y ** 2) - вот что я хотел изобразить. Но двойка была int
Не понял, цель получить функцию от интов? И функция от тупла не сможет в каррирование, тупл точно необходим?

Adam
19.07.2017
17:45:57
псевдокод, в общем

Кстати, range-синстаксис [1..10] не является ленивым списком и служит просто сахаром над созданием оного? То есть все эти значения будут тут же вычислены на месте, а не только во время итерации, например?

Google
Adam
19.07.2017
18:10:29
В чём отличие выведенной сигнатуры в скобках от такой же без скобок? Вот пример (типы последних двух функций - combined и combined2): let increment x = x + 1 let logger x = printfn "%A" x let finish (x: Unit) = logger "Happy End!" let combined = increment » logger » finish let combined2 x = finish(logger(increment x)) Я так понял, что это как-то на карринг указывает: будет дальше каррироваться, или нет. Хотя та, что в скобках, тоже аргумент принимает. В чём отличие, и где про это почитать?

Adam
20.07.2017
14:30:33
Evgeniy
20.07.2017
14:32:27
спасибо, почитаю!
Раздел в спеке, на который ссылаются в ответе, полностью называется "11.2.1.1 Arity Conformance for Functions and Values".

Отлично, запустил локальную версию IfSharp. И предпросмотр XPlot работает, и R.NET. Кажется, что-то они в своем Azure Notebooks делают не так.

https://medium.com/@edgarsanchezg/accessing-a-relational-db-with-f-type-providers-7263d88aa640

Утро.

Пацаны, смотрите, стрим! https://www.youtube.com/watch?v=K-13gtMevxc

От самого Krzysztof Cieślak.

Adam
21.07.2017
11:03:13
Пример из книги не работает: let someSeq = seq { for i in 1..10 do yield i } Что не так?

Adam
21.07.2017
11:03:58
error FS0708: Конструкция данного элемента управления может использоваться только в том случае, если построитель вычислительного выражения определяет метод "For"

она была раньше предупреждением, я погуглил. Но почему не работает, так и не понял

Vasily
21.07.2017
11:04:46
А под какой F# собираешь?

Adam
21.07.2017
11:05:53
А под какой F# собираешь?
а хрен его знает, плагин для Microsoft Visual Studio 2015.

Vasily
21.07.2017
11:06:25
Ну посмотри в свойствах проекта

Ну и код покажи полный

Google
Adam
21.07.2017
11:07:26
Ну посмотри в свойствах проекта
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> - оно?

Evgeniy
21.07.2017
11:11:32
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> - оно?
Дело странное. У тебя из стандартной библиотеки что-нибудь работает?

Evgeniy
21.07.2017
11:12:08
Да, что угодно.

Adam
21.07.2017
11:12:20
Да, что угодно.
работало, сейчас перепроверю

Перезапустил F# interactive - и пример заработал

Evgeniy
21.07.2017
11:13:47
Такое ощущение, что он стандартную библиотеку не подцепил сразу.

Adam
21.07.2017
11:35:56
the ошибка только в *.fsx появлялась

Evgeniy
21.07.2017
11:36:28
the ошибка только в *.fsx появлялась
Какая-то магия, сложно понять, в чем проблема.

Oleg
21.07.2017
12:32:51
Всем привет! @gsomix , спасибо за PR

Adam
21.07.2017
12:33:23
Evgeniy
21.07.2017
12:34:28
Всем привет! @gsomix , спасибо за PR
Не за что, мелочь же. :)

Oleg
21.07.2017
12:35:21
:) нужен фидбек по проекту, который, по моим меркам, готов http://tiny.cc/xake

От самого Krzysztof Cieślak.
Не знаешь, как по-русски имя звучит?

Oleg
21.07.2017
12:41:36
На Нант слишком похож. Императивщина :)

Кшиштоф!
Числак?

Evgeniy
21.07.2017
12:42:26
Числак?
Чишлак.

Oleg
21.07.2017
12:42:28
А чем FAKE не устроил?
Причина всегда одна – проще самому написать, чем в чужом разобраться :)

Google
Vasily
21.07.2017
12:44:39
Выглядит довольно костыльно в плане того, что не использует msbuild, похоже

На проекте где-нить так тыщ из полутора файлов будет интересно, чую

Oleg
21.07.2017
12:46:47
Выглядит довольно костыльно в плане того, что не использует msbuild, похоже
Так он вместо msbuild и написан, хочу попробовать транслировать msbuild проект в make-alike описание с целью добиться большего параллелизма

Vasily
21.07.2017
12:47:07
В msbuild и так можно параллельно билдить проекты

Короче, без обид, но похоже на велосипед

Ну и make древний, в общем-то, как гавно мамонта

Oleg
21.07.2017
12:48:27
На проекте где-нить так тыщ из полутора файлов будет интересно, чую
У меня есть сценарий для тестов производительности, которые более суток работают. Это решение дало хорошую инкрементальность. То есть делает самый минимум необходимой работы

Oleg
21.07.2017
12:50:15
В msbuild и так можно параллельно билдить проекты
В мсбилд трекинг зависимостей очень примитивен. В этом направлении make интереснее

Так, отлучаюсь на пару часов

Vasily
21.07.2017
12:51:02
Тут стоит учитывать, что время компиляции .net проектов в разы меньше

Чем с++

Evgeniy
21.07.2017
12:51:51
Тут стоит учитывать, что время компиляции .net проектов в разы меньше
В контексте F#, например, я бы не стал так утверждать, все таки компилятор довольно медленный.

Vasily
21.07.2017
12:52:12
Ну быстрее с++

Friedrich
21.07.2017
12:52:58
Evgeniy
21.07.2017
12:53:03
Ну быстрее с++
Нужны бенчмарки. :) Ничего не могу сказать.

Vasily
21.07.2017
12:53:24
Просто с моей точки зрения проект хорош как велосипед, но с промышленной точки зрения не очень

Friedrich
21.07.2017
12:54:15
Расскажи, а в инкрементальную сборку умеет?
А, там прям в инструкции написано, что умеет. Вот это интересно!

Vasily
21.07.2017
12:54:16
В силу некоторых причин

Google
Friedrich
21.07.2017
12:54:51
Как правило, все эти «няшные» проекты типа Cake, FAKE, Psake и пр. совершенно не умеют делать инкрементальную сборку, как умел make.

Вот вам, собственно, и первое преимущество.

Vasily
21.07.2017
12:55:31
Это еще разобраться надо!
Обосную позицию: 1. MSBuild есть кроссплатформенный 2. Инкрементальные билды были придуманы для сокращения времени компиляции

Самые большие проекты на .net, которые я видел, билдились максимум 2-3 минуты

Friedrich
21.07.2017
12:56:22
У меня был на 10 минут.

Vasily
21.07.2017
12:56:29
3. MSBuild умеет в пересборку только реально изменившихся проектов

У меня был на 10 минут.
Скорее всего была кодогенерация/что-то еще

Friedrich
21.07.2017
12:56:53
Да нет, просто кода дофига %)

Vasily
21.07.2017
12:57:38
Да нет, просто кода дофига %)
Ну на плюсах бы билдилось часа 4 :)

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