Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Scala, Clojure, and Kotlin are much more taken care of than F# will ever be.

In tooling, books, conferences, critical applications used in large scale across the industry.

Meanwhile Microsoft keeps behaving as if it was a management mistake to have added it to VS 2010.



Kotlin? For sure, it's the Android language after all, so it is looked after, sure. Does it integrate better? That's up to debate. For example, F# 9 integrates C# NRTs in the form of T | null unions, which is elegant and idiomatic approach that brings together nullness knowledge between the two. For now, this is not the case with Kotlin.

I encourage you to look at the state of Clojure and its usability within larger Java ecosystem. Quantity of material, as usual, is not everything.

> Meanwhile Microsoft keeps behaving as if it was a management mistake to have added it to VS 2010.

Do you have anything to back up this assumption with?


Clojure Datatomic powers Nubank business, just for one example.

Scala still powers a lot of big data and distributed computing frameworks in Java ecosystem. In .NET, the counterparts which only exist for Akka really, are written in C#.

.NET has hardly any big product that is relevant for big data folks, and the ones that exist are equally written in C#.

The only well known flagship product was JET.com, meanwhile acquired by Walmart, which by now was rewriten most of it.

The lack of exposure in .NET ecosystem, not keeping to the story how to sell F#, first companion class libraries, then Web development, maybe type provideders with the World Bank example demoed to exhaustion, maybe machine learning (while Microsoft actually hires Guido and alongside Facebook brings performance improvements and JIT support), only C# and VB are default for Windows desktop workloads, nowadays in what concerns .NET 9, who knows what the theme is.

In Visual Studio 2024 full installation, how many C# workloads also support F# as an option?

It is basically CLI, class libraries, and those old Web projects from the "F# is great for Web" marketing phase.


Do IntelliJ Idea or Eclipse offer Clojure and Scala templates for popular web frameworks out of box? How about multi-platform GUI applications in something that isn't Kotlin multiplatform? Not going to ask about convenient CLI since it just doesn't exist in Java land.

There are other companies which use F# in the area of logistics, pharma and I know of at least one company that has services in it in a bit less reputable industry.

I feel like this kind of perception is highly biased, or, at least, unhelpful.


InteliJ does when you get Ultimate.

Swing is the box, what is the Microsoft in the box solution? MAUI still doesn't do Linux, and is focused on C#.

3rd party stepping in for Microsoft doesn't count in this discussion.

What matters is public perception, and people applying for jobs.

By now I don't expect another fate, other than joining VB and C++/CLI teams, in bug fixing, minor interop improvements to keep up with C# features, as little as possible, and that is it.


> 3rd party stepping in for Microsoft doesn't count in this discussion.

This completely misses the point of having rich ecosystem nor has any relevance whatsoever from practical standpoint for organizations that have competent leadership.

For all intents and purposes, this would completely disqualify Clojure and Scala themselves since they don’t come from Oracle, and Kotlin if Google/JetBrains don’t count either.

You can’t be serious.

The crybegginng attitude that expects everything to come from first party is extremely damaging to .NET ecosystem because it hinders evolution and innovation, and further expansion of it. Luckily it’s slowly going away but your reply is a good demonstration why it is bad.

Even the current state is too first-party leaning - too many features that have no business being in extension packages let alone CoreLib (e.g. “please fix obsolete System.Drawing on Linux because our legal is incompetent enough to not allow SkiaSharp”)

> VB and C++/CLI

C++/CLI only works on Windows. In no uncertain terms, it is deprecated and effectively dead. You must not write new code with it and existing code must be ported to C# if possible. VB.NET is supported but does not receive new features.

The only possible way for you to compare this to F# is to completely ignore all devblog posts and releases concerning its continuing development. If you did read them, you would also know about the high-effort changes it adopts to stay up to date with the rest of the ecosystem when it introduces new way of doing something. In which case, it is reasonable to ask where do you even pull these assumption from then?


I basically expect a bit of ABK acquisition budget to provide the same across all development teams.

Just like Common Language Runtime was announced in 2001, where all Microsoft languages used to be on equal tooling level. Unfortunately to those languages, CLR now means C# Language Runtime.

Microsoft isn't a poor startup trying to make it over the next month, as shown not only by ABK, their whole profit and market valuation.

By the way, C++/CLI was recently updated to C++20, as of last year, and is a critical component of WPF, remade official GUI framework at BUILD 2024.

No use to keep discussing this, lets see how much F# is there in .NET 9 and VS 2024 update when November comes.


> I encourage you to look at the state of Clojure and its usability within larger Java ecosystem. Quantity of material, as usual, is not everything.

For what it's worth, I have been a newcomer to both languages the past few years. Clojure has been way more usable than F# and it's not even close.

Clojure is firmly in the quality not quantity category. Good books, novel libraries, a very active slack. Things usually "just work."

F#? Broken type providers, scaffolding that doesn't work past .NET 6.0, a genuine lack of books. Sometimes things work great, they often don't, and the typed nature makes a lot of these things hurt more.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: