F# сообщество - Популярные вопросы | Страница 1

F# сообщество

Вопросов: 215

Ответов: 1411

Популярные вопросы

Аноним
11/25/2020, 3:38:45 PM
Ответов: 21
Здравствуйте, дали задание в универ реализовать твиттеро-подобный движок с таким функционалом: -

Register account - Send tweet. Tweets can have hashtags e.g. #COP5615isgreat and mentions @bestuser - Subscribe to user's tweets - Re-tweets so that your subscribers get an interesting tweet you got by other means - Allow querying tweets subscribed to, tweets with specific hashtags, tweets in which the user is mentioned my mentions - If the user is connected, deliver the above types of tweets live without querying - Implement a tester/simulator to test the above - Simulate as many users as you can - Simulate periods of live connection and disconnection for users - Simulate a Zipf distribution on the number of subscribers. For accounts with a lot of subscribers, increase the number of tweets. Make some of these messages re-tweets Other considerations: - The client part send/receive tweets and the engine distribute tweets have to be in separate processes. Preferably, you use multiple independent client processes that simulate thousands of clients and a single engine process - You need to measure various aspects of your simulator and report performance - More detail in lecture as the project progresses. - You need to submit your code, instructions how to run it and a report with performance numbers. Я планирую брать Akkling, это все что мне нужно для этой цели ? Или может еще что-то. И в принципе если не сложно если вы уже видите какие-то детали реализации / паттерны которые мне надо будет предупредить, сообщите об этом - я в акторах относительный новичок

jeydo6
6/30/2021, 9:23:47 PM
Ответов: 15
Всем привет! Хочу изучить F# для расширения кругозора. Можете порекомендовать какие-нибудь книги

или другие ресурсы с информацией о F#? Спасибо!

VaasMontenegro
9/19/2021, 3:31:28 PM
Ответов: 13
Есть телеграм-бот. Он может отправить пользователю сообщение: 1 по расписанию заданное пользователем

2 через отложенное время заданное пользователем Как это реализовать?

Flame_Killer
8/19/2021, 6:11:33 PM
Ответов: 13
Парни, подскажите плиз. Вот если в фшарп типы иммутабельны, то допустим имеем

коллекцию в миллион строк. Добавили или удалили одну. Коллекция то будет новая. Перформанс не просядет? Ведь таких порождений может быть много и нагрузка на GC большая . Или я ничего не понимаю и это как то хитро сделано ?

Аноним
5/19/2021, 7:41:15 AM
Ответов: 13
Если я ставлю "?" перед параметром, то его тип выводится как option<X>

где Х - это его тип до того, как я поставил "?" Но при этом если я передаю None как аргумент, то мне пишет ошибку, что тип должен быть unit. Как такое может быть? Вот изменение, которое я сделал и которое вызывает ошибку. https://github.com/borseno/HardhatResetBug/compare/issue-unit-vs-option

SusI1k
11/23/2020, 2:05:38 PM
Ответов: 12
ребят, возникла такая проблема: пишу XML парсер соответственно в fsx файле, но

у меня есть еще UI на Авалонии, и я не понимаю как их можно связать: парсер в fs файле использовать не представляется возможным, а Авалония не работает в fsx файлах может посоветуете что-то?

londonguy2011
4/13/2021, 8:04:16 AM
Ответов: 12
В связи с чем дополнительный вопрос - как в Fable проще всего

фигачить формы? Руками пожно, понятно, но хотелось бы чего-то более продвинутого. Нашёл вот это - но пакет не обновлялся с 2019 года. https://thoth-org.github.io/Thoth.Elmish.FormBuilder/

sskostyaev
8/26/2021, 5:49:31 PM
Ответов: 11
А есть адекватные статьи, чтоб хорошо понять srtp? Офф доки не до

конца прояснили картину. Или только читать исходники какого-нибудь fsharpplus ?

TiraelSedai
8/19/2021, 4:56:12 PM
Ответов: 11
Почему кстати через use когда пишешь, мягко требует new? Я не оч

понял из описания ворнинга

Аноним
5/28/2021, 5:50:56 PM
Ответов: 11
Ребят, а есть что-то готовое чтоб запустить пачку асинков в паралель но

с ограничением кол-ва одновременно работающих? или надо колхозить?...

gsomix
1/10/2021, 1:41:50 PM
Ответов: 11
Как прокинуть туда зависимости, необходимые для исполнения сайд-эффекта?
dzmitry_lahoda
10/10/2020, 9:37:15 AM
Ответов: 11
Добрый день. Долгое время на проекте на могли распилить монолитики на микросервисы

пока не перешил на tf+k8s. Как перешли уже можем. Мы не пишем юнит тесты вовсе, поэтому я топил за систему типов. Весь код на C# написан пока что. И я топил чтобы писать новые сервисы при распиле на F# чтобы не писать тесты вовсе и далее: Пока моя позиция была сильна против много более сильной позиции тех лидаон давно на проекте который топил за Rust. Потому что не было azure sdk for Rust. Но тут как то неожиданно случился полуофициальный релиз azure sdk for rust. Ну не ясно какие мои будут аргументы за F#? Аргумент типа корректность и лучшая многопоточность отпали. Количество кода тоже я потрогал Rust и он по вербосити хуже F# но много лучше C#. Какие неочевидные аргументы я могу еще применить? Кода на С# у нас мало шареного мало, но есть с одной стороныесли F# то можно реюзать. С другой стороны часть проекта писана на C++по тому с той стороны за Rust. Сравнения в гугле Rust vs F# ниочем.

itkerry
8/21/2021, 1:30:33 PM
Ответов: 11
здраствуйте у меня есть тайп-алиас на string вида type A1 =

private A1 of string и таких алиасов у меня будет много. хочу сделать функцию которая умеет создавать их через дженерик, как-то вот так let private create<'a> str lenght = if String.IsNullOrEmptystr then None elif String.length str > lenght then None else Some 'a str но проблема в том что так делать нельзя 'a str может подскажете как такое реализовать?

EatsFullLemons
3/31/2021, 6:38:14 PM
Ответов: 11
как называть даты С и ПО если в begin-end, бегин занято ключевым

слово а в from-to, ту занято ключевым словом? 🤔

stas_seregin
11/13/2020, 3:03:24 PM
Ответов: 11
Привет! А как такое можно записать получше? игнорируя глупость самой логики let

format input: string = match fun a b -> input.StartsWith a && input.EndsWith b with | f when f "{" "}" -> "JSON" | f when f "[" "]" -> "JSON" | f when f "<" ">" -> "XML" | _ -> "PlainText"

TheDelneg
12/2/2020, 12:17:13 PM
Ответов: 11
Зачем electron ? Лучше вон замарин или авалонию
freilin
9/20/2021, 7:02:57 PM
Ответов: 10
Господа, добрый вечер Случайно есть тут кто-то из Киева, работающий в SimCorp?

Они вроде хотят f#, хотелось бы что-то о них узнать

atsapura
11/25/2020, 6:16:58 PM
Ответов: 23
А никого не интересует, как данные хранить? Вы поиск по данным как

будете делать?

Prunkles
7/10/2021, 12:40:27 AM
Ответов: 10
Говорят, что Giraffe был вдохновлён концептами из Suave. Посмотрел я на сурсы

второго, и что-то не понял где именно там схожесть. В жирафе всё строится на этой троице: type HttpFuncResult = Task<HttpContext option> type HttpFunc = HttpContext -> HttpFuncResult type HttpHandler = HttpFunc -> HttpContext -> HttpFuncResult Что, в целом, практически аналогично асповским миддлварям. Тогда как в суаве или как это правильно читается, как я понял, в основе лежит это: type WebPart<'a> = 'a -> Async<'a option> type WebPart = WebPart<HttpContext> Но ведь это же жирафовский HttpFunc! Не HttpHandler. Получается, у них нет next, у них всё на этом работает. Как так? И вот эту разницу не могу понять. В чём плюсы и минусы обоих подходов?

nigurrath
4/6/2021, 12:58:47 PM
Ответов: 10
Влад наверное объяснит подробнее, но по тексту выходит, что наличие а не

автогенерация ускоряет, т.к. для автогенерации код надо распарсить сначала, неужели генерация байткода настолько зависит от сигнатур?

vilinski
10/18/2020, 7:21:31 AM
Ответов: 10
кстати в тему, вот тут же cpu тоже какой-то CpuBuilder, или как

это делается? config { cpu { min 0.5 max 0.5 } ram GB 2.5 }

Lanayx
11/12/2020, 1:48:40 PM
Ответов: 10
Привет! Нужна идея, как такое может быть https://github.com/fsharplang-ru/pulsar-client-dotnet/blob/develop/src/Pulsar.Client/Internal/MultiTopicsConsumerImpl.fs#L373-L386 Вылетает An attempt was

made to transition a task to a final state when it had already completed. на 386 строчке, как такой может произойти?

Vabka
12/22/2020, 12:33:46 PM
Ответов: 9
как в ionide включить индексацию через ^ ?
m0rphed
12/2/2020, 4:15:04 PM
Ответов: 9
Пытаюсь написать свою версию дженерик array2d в качестве упражнения на основе этой:

https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/arrays#array-slicing-and-multidimensional-arrays Не получается правильно имплементировать оператор умножения 'T на SimpleMatrix<'T> static member *k: 'T, matrix: SimpleMatrix<'T> = let resRow, resColumn = matrix.Dim let newMatrix = SimpleMatrix<'T>resRow, resColumn for x in 0 .. resRow - 1 do for y in 0 .. resColumn - 1 do let m = matrix.[x,y] newMatrix.[x, y] <- k * m newMatrix Как тут написать type constraint, чтобы оно ожило? Или так дженериковую матрицу люди не пишут?

D3N15T0R
3/15/2021, 9:31:55 AM
Ответов: 29
Какой бест практис хоронить DU в бд реляционной?