С мест сообщают, что обновление до VS 17.7 может ломать интелисенс в F# для зависимостей от C#-ых проектов. Возможно, дело касается только проектов в старом стиле. С подтверждениями или контрпримерами можно в комменты.
UPD: Компиляторные боги говорят, что кара постигла все старые проекты, не только C#.
UPD: Компиляторные боги говорят, что кара постигла все старые проекты, не только C#.
https://github.com/dotnet/fsharp/discussions/16231
Discussion: FSharp.Core breaking/incompatible changes
Please, write your thoughts🙏
Discussion: FSharp.Core breaking/incompatible changes
Please, write your thoughts
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
`Discussion`: `FSharp.Core` breaking/incompatible changes · dotnet/fsharp · Discussion #16231
Would like to start this discussion for how should/shouldn't we be introducing breaking changes to core library. Why: Things like the issue below, are reasonable and benefitial for average code...
Сервер Юк. Заставляем Yandex Cloud Functions работать на F#
Простая статья по скрещиванию F# и Yandex Cloud Functions. Писалась с прицелом на начинающих разрабов (, а также, видимо, татар).
Первая половина посвящена процессу впихивания F# в облако, которая завершается фиксацией минимального канона. Вторую половину статьи заполнил полусинтетический (из-за явной неполноты) пример.
Простая статья по скрещиванию F# и Yandex Cloud Functions. Писалась с прицелом на начинающих разрабов (, а также, видимо, татар).
Первая половина посвящена процессу впихивания F# в облако, которая завершается фиксацией минимального канона. Вторую половину статьи заполнил полусинтетический (из-за явной неполноты) пример.
Хабр
Сервер Юк. Заставляем Yandex Cloud Functions работать на F#
В этой статье я расскажу, как засунуть F# в Yandex Cloud Functions. Навыка работы с Serverless у меня нет, так что это будет не компиляция моего опыта, а отчет о вполне успешном эксперименте. Судя по...
Большой код. Учимся генерировать F#-исходники с помощью Fantomas. Часть 1. Знакомимся с содержимым синтаксического древа
Начинаем предположительно большой цикл статей по кодогенерации. Тема эта сложная в основном из-за ошеломляющего объёма новой информации на начальном этапе. Именно с этой проблемой будут разбираться первые две статьи.
В первой части мы сначала слегка пробежимся по Мириаду, чтобы понять, что в большинстве кодогенераторов он нам не нужен. Потом заглянем внутрь AST, ужаснёмся его размерам и узнаем, как подготовленный "частичный взгляд" на него может дать очень хороший результат в умелых руках.
Следующая часть выйдет ровно через неделю. В ней мы напишем свой первый крохотный кодогенератор, для чего перед этим познакомимся с инфраструктурой AST.
Начинаем предположительно большой цикл статей по кодогенерации. Тема эта сложная в основном из-за ошеломляющего объёма новой информации на начальном этапе. Именно с этой проблемой будут разбираться первые две статьи.
В первой части мы сначала слегка пробежимся по Мириаду, чтобы понять, что в большинстве кодогенераторов он нам не нужен. Потом заглянем внутрь AST, ужаснёмся его размерам и узнаем, как подготовленный "частичный взгляд" на него может дать очень хороший результат в умелых руках.
Следующая часть выйдет ровно через неделю. В ней мы напишем свой первый крохотный кодогенератор, для чего перед этим познакомимся с инфраструктурой AST.
Хабр
Большой код. Учимся генерировать F#-исходники с помощью Fantomas. Часть 1. Знакомимся с содержимым синтаксического древа
В этом многословном, но сравнительно простом цикле я дам введение в генерацию F#-кода. Как правило, для этих целей в сообществе рекомендуют использовать Myriad , что, по-моему, не совсем правильно, но...
Announcing F# 8
# F# language changes
- _.Property shorthand for (fun x -> x.Property)
- Nested record field copy and update
- while!
- Extended string interpolation syntax
- Use and compose string literals for printf and related functions
- Arithmetic operators in literals
- Type constraint intersection syntax
- Extended fixed bindings
- Easier [<Extension>] method definition
# Making F# more uniform
- Static members in interfaces
- Static let in discriminated unions, records, structs, and types without primary constructors
- try-with within seq{},[] and [||] collection expressions
# New diagnostics
- TailCall attribute
- Diagnostics on static classes
- Diagnostics on [<Obsolete>] usage
- Optional warning when obj is inferred
- Optional warning when copy and update changes all fields
# Quality of life improvements
# Compiler performance
# Enhancements to the FSharp.Core standard library Inlining
# F# language changes
- _.Property shorthand for (fun x -> x.Property)
- Nested record field copy and update
- while!
- Extended string interpolation syntax
- Use and compose string literals for printf and related functions
- Arithmetic operators in literals
- Type constraint intersection syntax
- Extended fixed bindings
- Easier [<Extension>] method definition
# Making F# more uniform
- Static members in interfaces
- Static let in discriminated unions, records, structs, and types without primary constructors
- try-with within seq{},[] and [||] collection expressions
# New diagnostics
- TailCall attribute
- Diagnostics on static classes
- Diagnostics on [<Obsolete>] usage
- Optional warning when obj is inferred
- Optional warning when copy and update changes all fields
# Quality of life improvements
# Compiler performance
# Enhancements to the FSharp.Core standard library Inlining
Microsoft News
Announcing F# 8
Read what is new in F# 8 - the language, compiler tooling and FSharp.Core standard library
Большой код. Учимся генерировать F#-исходники с помощью Fantomas. Часть 2. Собираем AST
Сначала изучим способы ускорения сборки AST. Узнаем, как это делалипредки до выхода
По итогу, хотелось бы донести идею, что с нужным инструментом генерация кода больше всего напоминает генерацию статичного UI, и уровень сложности данных задач мало чем отличается.
Сначала изучим способы ускорения сборки AST. Узнаем, как это делали
Fantomas.AST
, и как эту проблему можно решить сейчас. Потом научимся конвертировать AST в код и напишем первый микро генератор.По итогу, хотелось бы донести идею, что с нужным инструментом генерация кода больше всего напоминает генерацию статичного UI, и уровень сложности данных задач мало чем отличается.
Хабр
Большой код. Учимся генерировать F#-исходники с помощью Fantomas. Часть 2. Собираем AST
В прошлой части мы познакомились с Abstract Syntax Tree ( AST ). В этой займёмся его сборкой в полезных объёмах и генерации конечного кода. Проклятье ствола Бориса Хрестоматийная цитата про тяжесть от...