Вопросы с тегом «f#»

59
Каковы самые большие различия между F # и Scala?

F # и Scala являются языками функционального программирования, которые не заставляют разработчика использовать только неизменяемые типы данных. Они оба поддерживают объекты, могут использовать библиотеки, написанные на других языках, и работать на виртуальной машине. Оба языка основаны на ML....

46
Почему анемичная модель предметной области считается плохой в C # / OOP, но очень важной в F # / FP?

В сообщении в блоге на F # для развлечения и выгоды говорится: В функциональном дизайне очень важно отделить поведение от данных. Типы данных просты и «тупы». И затем отдельно у вас есть ряд функций, которые действуют на эти типы данных. Это полная противоположность объектно-ориентированному...

37
Реальные подводные камни внедрения F # в большую кодовую базу и команду инженеров [закрыто]

Я технический директор программной фирмы с большой существующей кодовой базой (все на C #) и значительной командой инженеров. Я вижу, как некоторые части кода будет гораздо проще писать на F #, что приведет к более быстрому времени разработки, меньшему количеству ошибок, более легким параллельным...

32
Почему F # имеет интерактивный режим, а не C #?

F # выходит из коробки с интерактивным REPL. C # не имеет ничего подобного, и на самом деле довольно сложно поиграть без настройки полноценного проекта (хотя LINQpad работает и его также можно сделать с помощью powershell). Есть ли в языках что-то принципиально иное, что позволяет F # иметь...

28
Почему ключевое слово rec необходимо в F #?

В F # необходимо использовать recключевое слово. В Haskell нет необходимости явно указывать, является ли данная функция рекурсивной или нет. Учитывая роль рекурсии в функциональном программировании, дизайн F # кажется мне довольно странным. Это хорошее решение для разработки языка или оно...

28
Почему бы не аннотировать параметры функции?

Чтобы сделать этот вопрос ответственным, давайте предположим, что цена неоднозначности в уме программиста намного дороже, чем несколько дополнительных нажатий клавиш. Учитывая , что, почему бы я , чтобы мои товарищи по команде , чтобы уйти с не аннотирования их параметры функции? Возьмем следующий...

20
Y комбинатор и оптимизация хвостовых вызовов

Определение Y комбинатора в F # let rec y f x = f (y f) x В качестве первого аргумента f ожидает продолжения рекурсивных подзадач. Используя yf в качестве продолжения, мы видим, что f будет применяться к последовательным вызовам, поскольку мы можем развить let y f x = f (y f) x = f (f (y f)) x = f...

19
Производительность F # против производительности Erlang, есть ли доказательства, что виртуальная машина Erlang работает быстрее?

Я потратил время на изучение функционального программирования и пришел к той части, где я хочу начать писать проект, а не просто копаться в уроках / примерах. Проводя свои исследования, я обнаружил, что Erlang кажется довольно мощным, когда речь идет о написании параллельного программного...

18
Предлагает ли F # что-нибудь особенно полезное для веб-разработки на основе баз данных?

Моя организация наконец-то обновилась до MS Visual Studio 2010 в этом году. Одна из больших новых функций, предлагаемых Visual Studio 2010, - это язык программирования F #. Я понимаю, что F # предлагает функциональную парадигму программирования, похожую на Lisp. В отличие от Lisp, F # компилируется...

18
Совпадение шаблонов с типами идиоматическое или плохой дизайн?

Кажется, что код F # часто сопоставляется с типами. Конечно match opt with | Some val -> Something(val) | None -> Different() кажется обычным. Но с точки зрения ООП это выглядит очень похоже на поток управления, основанный на проверке типа во время выполнения, которая обычно вызывает...

18
Самый быстрый функциональный язык

Недавно я углубился в функциональное программирование, особенно в Haskell и F #, а тем более в предыдущую. После некоторых поисков я не смог найти сравнительного сравнения наиболее известных функциональных языков (Scala, F # и т. Д.). Я знаю, что это не обязательно справедливо по отношению к...

16
Если вы используете C # и F # вместе

Я знаю, что вы можете использовать C # и F # вместе в одном проекте, но я не уверен, что это хорошая идея. Мне кажется, что смешивание двух очень разных стилей кодирования (функциональный и ООП) может привести к отсутствию согласованности в дизайне. Это...

14
Как кто-то привык к ФП мышления читать императивный код?

Я закончил университет около пяти месяцев назад и проработал в местном стартапе последние четыре месяца. В университете я изучал Haskell, F # и т. Д. Самостоятельно. В университете нас учили Java, но я очень скоро познакомился с функциональным программированием и провел с ним гораздо больше...

13
Каковы некоторые хорошие практики при обучении декларативному программированию императивных программистов?

Я предложил немного потренироваться в F # в моей компании, и они, казалось, проявили некоторый интерес. Как правило, они программисты на VB6 и C #, которые не слишком увлечены программированием. При этом я чувствую, что легче написать правильный код, если подумать о функциональности, поэтому они...

12
Функциональное программирование - неизменность

Я пытаюсь понять, как работать с неизменяемыми данными в FP (особенно в F #, но с другими FP тоже все в порядке) и сломать старую привычку полного состояния мышления (стиль ООП). Часть выбранного ответа на вопрос здесь повторила свой поиск любых написать окна вокруг проблем, которые решаются с...

11
Почему F # Core определяет универсальные типы массивов?

Я только что заметил, что пространство имен FSharp.Core включает в себя универсальные типы массивов до 4 измерений, то есть Core. [] <'T> , Core. [,] <' T> и т. Д. C # и VB, кажется, работают очень хорошо с System.Array - хотя мне не ясно, как им удается поддерживать строго...

11
Как мне подойти к серьезному проекту F # без знания C #?

Итак, по сути, проект, который я хочу осуществить, - это редактор SVG. Я бы предпочел использовать WPF, потому что тогда я могу использовать XAML для своего макета приложения (этот дизайнер такой изящный). К сожалению, я использую .NET Framework всего несколько месяцев и до сих пор незнаком с...

11
Дизайн на «смешанных» языках: объектно-ориентированный дизайн или функциональное программирование?

В последние несколько лет языки, которые я люблю использовать, становятся все более и более «функциональными». Сейчас я использую языки, которые являются своего рода «гибридом»: C #, F #, Scala. Мне нравится разрабатывать свое приложение, используя классы, которые соответствуют объектам домена, и...

10
Аргументы для функционального программирования [закрыто]

Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 6 лет назад . Недавно я изучал F # для удовольствия (я -...