Live data from Hacker News

Introducing F# 4.0

infoq.com

21–30 of 73 posts

Re: Introducing F# 4.0

#21
post #19
post #7

Microsoft scares me, for no good reason. Would, say, a Ruby or node.js-oriented web developer find the F#/.NET community lacking, incomplete, unfriendly, uncool? Is there even a community to speak of? What's to stop a young developer from going against the grain and adopting .NET? (Here come the downvotes. Shun the "hipster." But really, I'm looking for a subjective perspective from somebody on "the other side." I do…

If I may, I think you're harvesting downvotes (very light grey as I write this) because your phrasing could read that Microsoft the company is frightening you because they're the Big Evil, etc... this being one of the inevitable (and inevitably tiresome) derailing comments that enters any thread about Microsoft and immediately gets downvotes because Boring. After I re-read your comment it seemed you might be saying M…

That's fair. I say Microsoft "scares" me because it's historically "uncool," which means it's likely that the (open source) developer community is less dynamic and comprehensive. People are rightfully picky about the work they do for free!

Re: Introducing F# 4.0

#22
post #8

While these are nice... Are there no headline features? Macros or something?

The whole article is about features added. The first point is even about improvements to macros.

We must be taking about different things, as F# hasn't had macros and thus cannot get improvements to them.

Quoted code is nice, but it's not a real substitution real macros.

Re: Introducing F# 4.0

#23

Earlier quoted context omitted.

Doesn't seem so. Just a good ol' fashioned incremental update.

Ahh, the benefits of a nice stable language with no breaking changes.

C#'s added tons of stuff without breaking changes, right?

And you could always feature gate them if you needed to have syntax breaks.

Re: Introducing F# 4.0

#24

Earlier quoted context omitted.

Hunh? C# was one of my first professional languages and I used it for five years. It's an excellent language and many people use it. What 'grain' do you think you are going against? The more platforms and languages you get exposed to, the more informed choices you'll be able to make in the future.

Subjective, but I've never met a C# developer and I know approximately zero developers who run Windows.

Not everyone is a web developer or working on mobile apps.

Games and business software are two huge industries which are almost entirely Windows. Everyone using the massively popular Unity engine is a C# developer.

Re: Introducing F# 4.0

#25
post #19

Earlier quoted context omitted.

If I may, I think you're harvesting downvotes (very light grey as I write this) because your phrasing could read that Microsoft the company is frightening you because they're the Big Evil, etc... this being one of the inevitable (and inevitably tiresome) derailing comments that enters any thread about Microsoft and immediately gets downvotes because Boring. After I re-read your comment it seemed you might be saying M…

That's fair. I say Microsoft "scares" me because it's historically "uncool," which means it's likely that the (open source) developer community is less dynamic and comprehensive. People are rightfully picky about the work they do for free!

This is almost an aside, but you should take a look at some of the stuff that comes out of Microsoft Research. They employ some of the biggest names in Haskell (Simon Peyton Jones for one) and have done some really interesting and bleeding edge work.

Re: Introducing F# 4.0

#26
post #7

Microsoft scares me, for no good reason. Would, say, a Ruby or node.js-oriented web developer find the F#/.NET community lacking, incomplete, unfriendly, uncool? Is there even a community to speak of? What's to stop a young developer from going against the grain and adopting .NET? (Here come the downvotes. Shun the "hipster." But really, I'm looking for a subjective perspective from somebody on "the other side." I do…

I've been developing with F# for about 4 years now, and ever since the beginning I've found the F# community to be wonderfully helpful and friendly. The community is, for sure, smaller than the Ruby or node.js communities but I think that's kind of nice since it makes it easier to get to know everyone personally.

If you're interested in F#, or even if you just want to dip your toe in, I recommend checking out your local F# meetup. I've learned a lot there over the years and made some great friends too.

Re: Introducing F# 4.0

#27
post #17
post #12

Earlier quoted context omitted.

There is a lot more details on the MSDN blogs: http://blogs.msdn.com/b/dotnet/archive/2015/04/29/rounding-o... http://blogs.msdn.com/b/fsharpteam/archive/2014/11/12/announ... For me the most welcome change is the vastly improved consistency of the Seq/List/Array APIs.

"The .NET framework supports up to 32-dimensional arrays, but in the past F# only supported use of up to rank-4 arrays. Not only were arrays of rank 5+ not possible to create and manipulate from F# code, the compiler could sometimes fail to consume external libraries which relied on high-dimensional arrays. This is now fixed. Although there is not yet support for creating and manipulating high-rank arrays, the compil…

I contributed the fix for the high-ranking array support.

The main reason for the fix was because F# pre-4.0 can't reference overloaded methods where one or more of the overloads has one or more parameters which is an array of rank 5 or more. I had a 3rd party DLL I wanted to reference, where a class had generic overloads for all of the array ranks, e.g.,:

    MyClass.Foo(T[])
    MyClass.Foo(T[,])
    ...
    MyClass.Foo(T[,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,])
Even though I was only trying to use MyClass.Foo(T[]), the F# compiler's overload resolution failed due to the presence of the higher-ranked array types.

I'm not planning to use such arrays any time soon, but I wanted to make sure that if other code was using these arrays I could reference it from F#.

Re: Introducing F# 4.0

#28
post #7

Microsoft scares me, for no good reason. Would, say, a Ruby or node.js-oriented web developer find the F#/.NET community lacking, incomplete, unfriendly, uncool? Is there even a community to speak of? What's to stop a young developer from going against the grain and adopting .NET? (Here come the downvotes. Shun the "hipster." But really, I'm looking for a subjective perspective from somebody on "the other side." I do…

From my experience thus far the .NET community is not friendly to open-source. Yes, open-source projects do exist, but those are few and far between, being either ports from the Java world, or throwaways that failed as commercial projects. There are also instances of bait and switch, as in projects starting as open-source being closed later (e.g. ServiceStack). Also compare RoboVM.com with Xamarin.com. If you'll dig into the details, you'll see similarities (like comparable pricing), with one important difference ... RoboVM is open-source and you only need a subscription for extra goodies. Same thing with IntelliJ IDEA versus Visual Studio. I find this difference to be the essence of the .NET ecosystem versus the others.

You mentioned NuGet, which is like `gem`. Well, the build tools in .NET land suck really badly. You've got MSBuild, which is like Ant or Make and that's what everybody uses, because development in .NET-land is Visual Studio driven. What you don't have for example is something like Maven (or SBT, or Lein). There's been nothing like it in .NET land. The ASP.NET developers have been building an alternative, in the form of dnvm / dnx / dnu, but it's just getting started, being a work in progress and feeling hack-ish and incomplete. Fingers crossed.

Anyway, in spite of the fact that there are companies that have built their own build tools because the current status quo sucks so badly (and I know more than one), the .NET community is filled with closed-minded folks that will never admit that their tooling sucks and I'm even including Visual Studio itself in this mix, since an IDE that needs extra investments into ReSharper is not that good in my opinion.

And then there's Mono, the current cross-platform implementation and the answer to folks that want to develop and deploy on Linux, OS X, Android or iOS. Except that Mono is and has historically been full of bugs. Like if you want to do server side development and deploy on Mono, just forget about it. And these days Xamarin is focusing only on mobile development and the community is dead.

> Would, say, a Ruby or node.js-oriented web developer find the F#/.NET community lacking, incomplete, unfriendly, uncool? Is there even a community to speak of?

The answer in my opinion is yes. This may change, given recent efforts by Microsoft, however evolution will be slow because the whole ecosystem has to change, not just Microsoft.

Re: Introducing F# 4.0

#29

Earlier quoted context omitted.

Hunh? C# was one of my first professional languages and I used it for five years. It's an excellent language and many people use it. What 'grain' do you think you are going against? The more platforms and languages you get exposed to, the more informed choices you'll be able to make in the future.

Subjective, but I've never met a C# developer and I know approximately zero developers who run Windows.

[deleted]

Re: Introducing F# 4.0

#30
post #8

Earlier quoted context omitted.

The whole article is about features added. The first point is even about improvements to macros.

We must be taking about different things, as F# hasn't had macros and thus cannot get improvements to them. Quoted code is nice, but it's not a real substitution real macros.

Pre-processor macros...
Post reply on HN