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

Reply via email to