On Fri, Aug 26, 2022 at 11:58:17PM +0200, Makarius wrote: > > Thanks. From your explanations, I have learned many things about F# and > dotnet. > > Can you also say what your applications are?
Hard to summarize in a few sentences. My original interest (way back in 2007, when fiddling with mono was still required on Linux) was driven by the need to interact, from Isabelle generated code, with Microsoft APIs for which nice packages were only available on dotnet. Access to Microsoft tooling and APIs is still a big motivation. England, at least the South West, seems to be in a strong grip by Microsoft, i.e., the Uni IT and also local project partners (mostly SMEs, which is likely also a contributing factor) essentially require that one can interact with dotnet for joint projects. Positively, there is also a quite strong community of F# developers/companies (e.g., using the SAFE stack https://safe-stack.github.io/ that allows developing web applications type-safe in F#) in England ... Personally, it's more the "I can program in ML and have easy access to all the shiny frameworks (via https://www.nuget.org/), a reasonable well working package manager/build systems, and IDE support (e.g., Ionice in VSCode)" that makes it an attractive platform. A lot of the problems I solve with F# these days are "mid-size" data processing/conversions tasks (that other people might solve in Python). The combination of having a strongly typed programming language with pattern matches and also having access to databases, type providers for web scraping, and parser/validators for many formats available as libraries is a nice sweet spot. Overall, very similar to Scala on the Java platform. Also very similar to Scala, F# also has the "dualism" of larger compiled programs and scripts that can directly be executed. While there are good web-stacks for F# (that essentially require nearly no JavaScript programming), good cross-platform UIs for desktop apps did essentially not exists (respectively, the ones that did exist were mostly generating Node.js/Electron applications). This seems to change right now - also Microsoft seems to see a need for a cross-platform UI framework for dotnet. > Dotnet was once positioned as the next big thing, but recently we have seen > more excitement elsewhere (even by Microsoft): e.g. Node.js/Electron. It's clearly not as hyped as node.js/Electron. On the other hand, upgrades of project across major versions of the underlying framework have been less painless for F# than for the few node.js projects I am involved with ;-). Cheers, Achim _______________________________________________ isabelle-dev mailing list [email protected] https://mailman46.in.tum.de/mailman/listinfo/isabelle-dev
