Live data from Hacker News

What's New in F# 4.1? [video]

channel9.msdn.com

61–65 of 65 posts

Re: What's New in F# 4.1? [video]

#61
post #54

Earlier quoted context omitted.

Many people use the exact same argument to dismiss the entire functional programming field.

I'm sorry, but implicit slippery slope arguments are not a means by which one can force every functional language to run the project the way Haskell does. But it's also worth noting that this is not a rejection of the entire concept of lenses, just that right now Haskell's implementations leave a lot to be desired (e.g., abandon all error sanity, ye who enter here). Haskell is as much a research platform as a program…

I mostly agree with this. But nobody is "forcing" anything, one can still use Haskell and avoid the e.g. infamous (and non-idiomatic) lens library. But just as you haven't given up on lenses, I also don't agree with the wholesale rejection of ideas based on imperfect implementations, which is what prompted my comment.

Re: What's New in F# 4.1? [video]

#62
post #54

Earlier quoted context omitted.

Many people use the exact same argument to dismiss the entire functional programming field.

I'm sorry, but implicit slippery slope arguments are not a means by which one can force every functional language to run the project the way Haskell does. But it's also worth noting that this is not a rejection of the entire concept of lenses, just that right now Haskell's implementations leave a lot to be desired (e.g., abandon all error sanity, ye who enter here). Haskell is as much a research platform as a program…

[deleted]

Re: What's New in F# 4.1? [video]

#63
post #37

Earlier quoted context omitted.

Higher kinded types reduce complexity in the same way generics reduce code complexity. If you think one makes things simpler but not the other, I would assume you're not familiar with it? Do you have examples of why it would add significant complexity? I use them constantly and it really simplifies my code a lot! Also, I don't believe 'profunctor optics' is a paper, I think it's just one (interesting) implementation…

The complexity that HKT brings to F# is not just conceptual. It needs to exist in the CLR which will bring implementation tradeoffs. "Cool paper but no thanks" is a saying for when people come to you with an extremely new technique and want you to incorporate it at the language level with very little proofing in the field. "Profunctor optics" is the a description of how profunctors encode lenses and similar structure…

Thanks for replying, yeah I suppose I didn't think about the ramifications of having to deal with reified generics and higher kinded types. I still think they're an amazing productivity boost, and the initial 'weirdness' of learning that particular abstraction pays off a tremendous amount in code readability.

As for the 'cool paper' comment, I wasn't aware of this new jargon, thanks for informing heh. I'm not sure how well it will play outside of haskell, I've done a Scala encoding of them and it's a bit more awkward than other representations.

Re: What's New in F# 4.1? [video]

#65
post #55

Earlier quoted context omitted.

That's fantastic news! I currently use Scala for most of my personal development, but having type classes would make F# attractive enough for me to switch over. I much prefer the cleaner syntax of F#. Losing HKT would be a shame, but that's a trade-off I would be willing to make.

Scala has never properly supported HKTs though. When I last tried it, there were multiple open issues, e.g. the partial application of type parameters. So I really don't buy the argument that Scala scores a point over F# due to HKTs. If you want HKTs, use Haskell.

It scores at least 0.7 points though. That said, it loses points elsewhere (as do all languages).
Post reply on HN