Live data from Hacker News

Microsoft takes .NET open source and cross-platform

news.microsoft.com

541–550 of 937 posts

Re: Microsoft takes .NET open source and cross-platform

#541
post #490
post #343

Earlier quoted context omitted.

[SerializableAttribute] [ComVisibleAttribute(false)] public class Dictionary : IDictionary , ICollection >, IDictionary, ICollection, IReadOnlyDictionary , IReadOnlyCollection >, IEnumerable >, IEnumerable, ISerializable, IDeserializationCallback Both languages can be difficult to decipher. I do find that Scala's syntax is much more flexible, which can lead to more stumbling when trying to read code.

It is easier, there is only one concept to understand : generics, with scala you must understand generics, co and contra-variance, implicits.

Good point.

Though implicits I feel are so much simpler than many people fear.

From a Ruby perspective: Just think of them as operating similarly to Refinements, except not completely insane because there is no global scope at compilation. You only have to worry about your own package, imports and inheritance.

Tracking down an implicit generally takes all of 10 seconds, and never more than a few minutes. Even moderately brain-bendy ones like akka.patterns.ask (where does the implicit "?" come from? "ask" is actually an implicit conversion to a class that defines it: https://github.com/akka/akka/blob/master/akka-actor/src/main...).

Re: Microsoft takes .NET open source and cross-platform

#542

Earlier quoted context omitted.

I keep hearing that, as if people are trying to convince themselves. But the fact is that it just doesn't exist out in the wild like its alternatives. What's more, anybody who thinks Microsoft is embracing open source by doing this is kidding themselves. There is only one motivation behind everything Microsoft does, and it isn't bringing open source philosophy to its products. Hint: That philosophy serves to undermin…

> Microsoft is not your friend Nor is google or Oracle. So who is? To put this in perspective you need to look at the alternatives. Getting a free (as in speech) source CLR/BCL/JIT/Compiler and a free (as in beer) IDE is pretty sweet. Sure, you can do python or Node.js, but it's not covering all that you can do now with .NET. Only java/jvm really competes on "everything except high perf" (from enterprise to mobile to…

> So who is?

Linus Torvalds, RMS, Guido van Rossum, and a very long list of other open source contributors who were writing open source code before it was 'hip' or good PR.

Re: Microsoft takes .NET open source and cross-platform

#543
post #342
post #318

Earlier quoted context omitted.

> majority of features in scala and Haskell for that matter are fundamentally misguided I'm interested in the Haskell part. What features do you think are fundamentally misguided ?

I'm much less experienced with Haskell than with Scala, so I might be unfairly painting it with the same brush here. But, for example, https://www.haskell.org/tutorial/io.html . At the end of the day, this is a huge inner-framework anti-pattern over the same procedural syscalls that every other language handles procedurally. I shouldn't have to care what a monad is, and side effects? The whole point of I/O is side ef…

[deleted]

Re: Microsoft takes .NET open source and cross-platform

#544
post #463
post #355

Earlier quoted context omitted.

You know what I also really like about C# is the .net runtime. I know that allot of people dislike it because there's so much leftover stuff from previous versions, however despite this it's one of the most comprehensive runtimes I've every worked with. Want to make a screenshot of the desktop? Got it. Want to post keystrokes to another application? No problem. Ohh I see you want to write a tcp server with asynchrono…

> Ohh I see you want to write a tcp server with asynchronous processing? Here's some generics you can just c&p. So we've come to the point where copy-pasteability is a language feature? Tell me I can use a library or module. Tell me that the language comes with built in features to help me do this or that. But never tell me I can copy-paste generic code. Please.

That's actually one of the features of C#, if something is needed or is hot in another language, it will appear in the core libraries.

They've realised recently this is having a negative effect on open source C# code as so much of the community waits for the "offical" version, but it has its positives too, almost anything you want to do is in the core libraries.

Re: Microsoft takes .NET open source and cross-platform

#545
post #475

Earlier quoted context omitted.

Xamarin.Forms is not supported on Mac.

Nor Windows, nor Linux. I know that. The OP didn't specify a platform.

Still, I should take that million dollars and hold it in escrow for you two.

Re: Microsoft takes .NET open source and cross-platform

#546

Earlier quoted context omitted.

> That was 20 years ago. Fucking get over it. Microsoft sure has. Some stuff from 2014, maybe that will help you to see that Microsoft has definitely not 'gotten over it': https://news.ycombinator.com/item?id=8596869 And that's just a very limited list.

This is a fairly weak and circumstantial list, in my opinion. Also, name a player that isn't equally or more abusive? If you mention Apple, Google, or Amazon, I'm going to disagree.

> This is a fairly weak and circumstantial list, in my opinion.

That's fine by me. I think they should really wise up and start to play nice. If IBM could do it then Microsoft can too.

> Also, name a player that isn't equally or more abusive?

Why, does that excuse them?

> If you mention Apple, Google, or Amazon, I'm going to disagree.

I would agree with that myself, so I won't be naming those.

Re: Microsoft takes .NET open source and cross-platform

#547
post #492

Earlier quoted context omitted.

You intentionally chose code that is hard to read...I could easily do the same with C#. It isn't representative of the vast majority of the code that I use nor write. That being said, when you understand the nuances of type annotations, that code is quite readable in the mathematical notation sense. It is concise and takes more time per byte to understand, but it tells me enough about the code that I rarely have to r…

It is not representative probably because the IDE hide the ugliness.

The official docs do to.

To get the "ugly" signature you have to look at the actual source, or example the method definition in the official docs.

They go out of their way to make sure to present an easy-to-understand version for actual users.

Which is why every actual Scala developer rolls their eyes at someone bringing up CBF. You have to go out of your way to try to be confused about it. And if that digging stops at finding the method signature, well, probably serves you right for being confused. ;-)

Is CBF amazing? Probably not. Is it some sort of confusing eternal battle for most Scala developers? Absolutely not.

I mean just look at the official docs, find out where he got these weird examples from, and then tell me this is a well reasoned argument.

Re: Microsoft takes .NET open source and cross-platform

#548
post #235

Earlier quoted context omitted.

In Scala, there are just too many ways to do things. It's optimized for flexibility and easy writability. C# on the other hand may be a little more verbose, but at least everyone can read everyone elses code.

Actually, the vast amount of features in C# isn't improving readability. But MS can't just throw out the bad half of features, which makes C# practically unimprovable. Scala has a similar problem.

Why not? I just can't see why every language needs to gather cruft rather than evolve elegantly. Imho major versions of compilers should aim to NOT remain backwards compatible, so they can remove or change things in the syntax while they add things.

Re: Microsoft takes .NET open source and cross-platform

#549
post #342
post #318

Earlier quoted context omitted.

> majority of features in scala and Haskell for that matter are fundamentally misguided I'm interested in the Haskell part. What features do you think are fundamentally misguided ?

I'm much less experienced with Haskell than with Scala, so I might be unfairly painting it with the same brush here. But, for example, https://www.haskell.org/tutorial/io.html . At the end of the day, this is a huge inner-framework anti-pattern over the same procedural syscalls that every other language handles procedurally. I shouldn't have to care what a monad is, and side effects? The whole point of I/O is side ef…

Clearly you have no idea what you're talking about. I suggest first learning the language before spreading FUD about it.

Separation of pure and unpure components greatly simplifies the reasoning about the problem domain. Traditional imperative programs are often full of subtle bugs because calling a procedure can have arbitrary effect on your system. For example calling function with the same arguments can return different values based on arbitrary hard-to-track reasons (such as your OS's scheduler). It's just too much details to keep in your head.

But in Haskell pure functions are guaranteed to have same result with same input. It enables the programmer to create logically isolated blocks without messy interdependencies.

It's especially helpful for concurrent programming by freeing you from all the non-deterministic spaghetti.

Haskell has a steep learning curve, but it'll make you a better programmer in the long run.

Re: Microsoft takes .NET open source and cross-platform

#550
post #373

Earlier quoted context omitted.

From: http://www.hanselman.com/blog/AnnouncingNET2015NETAsOpenSour... "There is a new FREE SKU for Visual Studio for open source developers and students called Visual Studio Community. It supports extensions and lots more all in one download. This is not Express. This is basically Pro."

See... I'm neither. I'm a single developer working on mostly closed source projects. As a result, I don't benefit too much from that. Also, I have a Mac and an Ubuntu laptop. So again, not much love from MS. Now I admit this is the early days of their open source push. That's fine. But until they make VS Pro free, across the board, I doubt non-MS shops will really pickup the platform. There isn't much of a win withou…

> See... I'm neither. I'm a single developer working on mostly closed source projects.

From the actual site for VS Community [0]:

> Q: Who can use Visual Studio Community? A: Here’s how individual developers can use Visual Studio Community: Any individual developer can use Visual Studio Community to create their own free or paid apps.

Sounds to me like you do fit in that category for this edition of VS. That being said, .NET development definitely does still seem very VS centric, but things seem to be changing. The experience of using sublime text + omnisharp[1] doesn't look too bad.

[0]: http://www.visualstudio.com/en-us/products/visual-studio-com... [1]: http://www.omnisharp.net/

Post reply on HN