Linked by Thom Holwerda on Sun 12th Jul 2009 21:29 UTC
OSNews, Generic OSes Even though news has been slow the entire week due to the fact that it's summer and people are more interested in vacation than in technology news, we still had a lot of interesting stuff this week. Google obviously captured the headlines with its Chrome OS, but we also talked about Mono, Richard Stallman, and many other things.
Order by: Score:
Mono
by J.R. on Sun 12th Jul 2009 22:14 UTC
J.R.
Member since:
2007-07-25

I am actually still waiting for the "fight" over mono to finish... as a .NET AND Java developer I would really like to see one of these be the default RAD-environment for some desktop-OS; and at the moment we only got Windows ;) For now I just stick to Windows as my default OS until the fight is settled.

Since .NET imho is superior to Java I am cheering for Mono in GNOME. Lets just hope they also manage to make their own standardized framework to _replace_ the forbidden fruit like ADO.NET (one API per database engine kinda sucks).

Edited 2009-07-12 22:24 UTC

Reply Score: 4

RE: Mono
by Delgarde on Sun 12th Jul 2009 22:40 UTC in reply to "Mono"
Delgarde Member since:
2008-08-19

I am actually still waiting for the "fight" over mono to finish... as a .NET AND Java developer I would really like to see one of these be the default RAD-environment for some desktop-OS;


I don't think you'll ever see that. As long as there are Java fans and C# fans (not to mention those preferring Python, or for that matter, Javascript), there's no chance of seeing a *single* platform become the official, favoured platform.

And I think that's right. The open-source world is not (if you'll pardon the pun) a monoculture - developers work in whatever environment they're most comfortable in, be that C/C++, Perl, Python, .NET, Java - whatever. You will never get agreement on one single toolset, because that's just not how people work.

Reply Score: 3

RE: Mono
by kaiwai on Sun 12th Jul 2009 22:45 UTC in reply to "Mono"
kaiwai Member since:
2005-07-06

I am actually still waiting for the "fight" over mono to finish... as a .NET AND Java developer I would really like to see one of these be the default RAD-environment for some desktop-OS; and at the moment we only got Windows ;) For now I just stick to Windows as my default OS until the fight is settled.


One thing I noticed when fiddling around with Mono on Mac is just how easy it is - something that really pulls me towards it after having battled with the idea of trying to understand Java (which seemed to me as being rather overly complex).

Since .NET imho is superior to Java I am cheering for Mono in GNOME. Lets just hope they also manage to make their own standardized framework to _replace_ the forbidden fruit like ADO.NET (one API per database engine kinda sucks).


I'd love to see a comprehensive GNOME framework sitting on top of the ECMA/ISO specifications - I'm sure there are things that the open source can do a lot better than what Microsoft has designed; its also cool how a lot of the UNIX functionality is being exposed through mono frameworks.

The problem I have with Mono is unfortunately there will be those who will demand the non-ECMA components. Even if there is a great stack provided there will be those who will base their applications on the non-ECMA components and thus make tempting these developers to the 'free side' difficult.

Reply Score: 4

RE[2]: Mono
by J.R. on Sun 12th Jul 2009 23:07 UTC in reply to "RE: Mono"
J.R. Member since:
2007-07-25

The problem I have with Mono is unfortunately there will be those who will demand the non-ECMA components. Even if there is a great stack provided there will be those who will base their applications on the non-ECMA components and thus make tempting these developers to the 'free side' difficult.


I agree. That is why Mono need to make something better to replace these parts.

Take ADO.NET as an example...if Mono where to make something equally good or better than ADO.NET (instead of just a database specific API), that even worked on .NET, what would stop both Linux, OSX and even Windows developers to choose this over ADO.NET?

Same goes for ASP.NET. Windows Presentation Foundation is perhaps a bit more difficult, but to be honest, .NET should have some sort of MVC-based cross-platform GUI toolkit that doesn't behave like crap on Windows (which GTK+, despite its superiority on X11, does).

Reply Score: 2

RE[3]: Mono
by jpobst on Sun 12th Jul 2009 23:27 UTC in reply to "RE[2]: Mono"
jpobst Member since:
2006-09-26

I agree. That is why Mono need to make something better to replace these parts.


I doubt this will happen, as its not really that dangerous to stick with the ones that are already used by millions of developers.

Any patents that Microsoft (or anyone else) *might* have on ADO.Net, etc, *might* also apply to any frameworks designed by Mono (or anyone else). There's just no way to tell since no one even knows if these patents exist.

The good news is you can't patent a file/assembly, and you can't patent an API, so the most you could probably patent would be an algorithm used by some functions. If a patent move was made against a specific function, it would be relatively easy to recode or work around it. Everything absolutely fundamental to running .Net apps is covered in the ECMA stuff.

(And now you may not even be able to patent an algorithm: http://news.slashdot.org/story/09/07/10/1218231/Judge-Invalidates-S... ) ;)

Reply Score: 2

RE[4]: Mono
by Delgarde on Mon 13th Jul 2009 00:04 UTC in reply to "RE[3]: Mono"
Delgarde Member since:
2008-08-19

Any patents that Microsoft (or anyone else) *might* have on ADO.Net, etc, *might* also apply to any frameworks designed by Mono (or anyone else). There's just no way to tell since no one even knows if these patents exist.


Yeah, that's the thing with patents. A direct re-implementation of something MS built might infringe a patent, but so might any implementation of a similar concept. The direct copy may be a little more at risk, but not much more so.

Reply Score: 4

RE[5]: Mono
by J.R. on Mon 13th Jul 2009 00:15 UTC in reply to "RE[4]: Mono"
J.R. Member since:
2007-07-25

"Any patents that Microsoft (or anyone else) *might* have on ADO.Net, etc, *might* also apply to any frameworks designed by Mono (or anyone else). There's just no way to tell since no one even knows if these patents exist.


Yeah, that's the thing with patents. A direct re-implementation of something MS built might infringe a patent, but so might any implementation of a similar concept. The direct copy may be a little more at risk, but not much more so.
"

Well, that is of course the problem, and the logical conclusion would be that one can either ignore the entire threat or never make anything at all (including the linux kernel).

However, another argument could be that it would be easier for the more paranoid linux users to accept a non-microsoft API despite the exact same patents apply.

Reply Score: 2

RE[4]: Mono
by modmans2ndcoming on Mon 13th Jul 2009 17:00 UTC in reply to "RE[3]: Mono"
modmans2ndcoming Member since:
2005-11-09

If MS decided to attack with patents, most of the Linux ecosystem would fall apart. why is mono so special?

Reply Score: 2

RE[3]: Mono
by memson on Mon 13th Jul 2009 10:11 UTC in reply to "RE[2]: Mono"
memson Member since:
2006-01-01

Take ADO.NET as an example...if Mono where to make something equally good or better than ADO.NET (instead of just a database specific API), that even worked on .NET, what would stop both Linux, OSX and even Windows developers to choose this over ADO.NET


ADO.Net is actually extremely good at what it does - it is just a bad idea. It has one model - data is snapshotted and a local view is taken. This works really well for Webservices and Web, as you really, really should not be directly poking database tables on a web page, but when it comes to desktop, it is clunky. I did far too many years of Delphi to be happy with a non live data access model. ADO.Net skirts the issue by making updates fairly painless, but it is trying to solve the problem of concurrent data access with a sledge hammer like approach. Then again, you need to go with the lowest common feature set if you want to be generic, and this will be why they did it the way they did.

What you find yourself doing is writing your own wrapper and using that everywhere. This is what I did and it has travelled through two separate jobs and countless projects.

Reply Score: 3

RE[2]: Mono
by flynn on Mon 13th Jul 2009 00:23 UTC in reply to "RE: Mono"
flynn Member since:
2009-03-19

One thing I noticed when fiddling around with Mono on Mac is just how easy it is - something that really pulls me towards it after having battled with the idea of trying to understand Java (which seemed to me as being rather overly complex).

When you say "fiddling around with Mono" I assume you mean C#. If that is the case how can you say that C# is easier to understand than Java when the bases of both languages are virtually identical? The differences between them don't start manifesting until you get into the advanced topics.

Also to call Java overly complex in the same paragraph is ridiculous. Java actually has a pretty small feature set by design. C# on the other hand is grab bag containing every feature the designers could think of.

Reply Score: 2

RE[3]: Mono
by kaiwai on Mon 13th Jul 2009 00:40 UTC in reply to "RE[2]: Mono"
kaiwai Member since:
2005-07-06

When you say "fiddling around with Mono" I assume you mean C#. If that is the case how can you say that C# is easier to understand than Java when the bases of both languages are virtually identical? The differences between them don't start manifesting until you get into the advanced topics.

Also to call Java overly complex in the same paragraph is ridiculous. Java actually has a pretty small feature set by design. C# on the other hand is grab bag containing every feature the designers could think of.


Pick up a Java book for beginners then claim that it is an easy language to learn; I spent a good 6 months trying to get my head around object orientated principles - I eventually gave up, it was an exercise in futility.

I'm sticking with C because at least that makes some sense in my mind versus the mess that object orientation looks like.

Reply Score: 3

RE[4]: Mono
by flynn on Mon 13th Jul 2009 00:56 UTC in reply to "RE[3]: Mono"
flynn Member since:
2009-03-19

Pick up a Java book for beginners then claim that it is an easy language to learn; I spent a good 6 months trying to get my head around object orientated principles - I eventually gave up, it was an exercise in futility.

I never claimed it was an easy language, just that it's feature set was much smaller compared to C# and that both have a nearly identical base.

What puzzled me was your claim that fiddling around with Mono is easy while calling Java overly complex. It just doesn't make sense. C# is clearly the more complex language, and to a novice both would seem equally daunting to start with since until you get into advanced topics the languages are nearly identical.

Reply Score: 2

RE[5]: Mono
by kaiwai on Mon 13th Jul 2009 04:00 UTC in reply to "RE[4]: Mono"
kaiwai Member since:
2005-07-06

I never claimed it was an easy language, just that it's feature set was much smaller compared to C# and that both have a nearly identical base.

What puzzled me was your claim that fiddling around with Mono is easy while calling Java overly complex. It just doesn't make sense. C# is clearly the more complex language, and to a novice both would seem equally daunting to start with since until you get into advanced topics the languages are nearly identical.


Try using Swing and claim compare that to C# - then claim that C# is complex. I was fiddling around with it last time, I was able to make a small widget that takes puts, regurgitates them, parsing a file etc. It was as easy as eating a doughnut. What I did was by no stretch of the imagination as complex but it was considerably easier for me to accomplish that with minimal exposure to C# when compared to Java.

Reply Score: 2

RE[6]: Mono
by ahmetaa on Mon 13th Jul 2009 07:10 UTC in reply to "RE[5]: Mono"
ahmetaa Member since:
2005-07-06

i disagree. Java is not Swing. as language, C# is much more complex.

Reply Score: 3

RE[7]: Mono
by vivainio on Mon 13th Jul 2009 07:17 UTC in reply to "RE[6]: Mono"
vivainio Member since:
2008-12-26

i disagree. Java is not Swing. as language, C# is much more complex.


Language complexity is a bit of a strawman. No language is too complex for any give programmer. It's the complexity and scope of the libraries that makes or breaks the platform.

Big win for Python has been that the standard libraries are easy to use - they only use OOP approach if it's needed.

C# is a more complete language than Java - though I don't see why they can't add the missing C# features to Java and get it over with.

Reply Score: 1

RE[7]: Mono
by kaiwai on Tue 14th Jul 2009 01:48 UTC in reply to "RE[6]: Mono"
kaiwai Member since:
2005-07-06

i disagree. Java is not Swing. as language, C# is much more complex.


And the point of that post was what? you take *ONE* component out of a larger paragraph and ignored this:

I was fiddling around with it last time, I was able to make a small widget that takes puts, regurgitates them, parsing a file etc. It was as easy as eating a doughnut.


Which was talking about the ease of use (and unrelated to Swing). Maybe next time you read the WHOLE post and take the WHOLE post as one chunk rather than slicing it up, changing things around to make it say what you want it to.

Reply Score: 2

RE[6]: Mono
by vivainio on Mon 13th Jul 2009 07:13 UTC in reply to "RE[5]: Mono"
vivainio Member since:
2008-12-26


Try using Swing and claim compare that to C# - then claim that C# is complex.


You are talking apples and oranges here. Valid comparison is Swing and Gtk#. Gtk# probably didn't go down the overengineering route as badly as Swing.

If you are not exactly the fan of OOP-for-everything, you may like Qt's approach to gui's as well. Qt doesn't use subclassing for event handling either.

And, if you are waiting for "standard to emerge" between Java and C#, your wait is over. Java is pretty dead for linux desktop app development (I think Eclipse is the only one still standing).

Mono really needs to hash it out against Python and C++, which is a different proposition altogether...

Reply Score: 2

RE[7]: Mono
by YEPHENAS on Mon 13th Jul 2009 08:03 UTC in reply to "RE[6]: Mono"
YEPHENAS Member since:
2008-07-14

Valid comparison is Swing and Gtk#.

No. Valid comparison is java-gnome and Gtk#.
http://java-gnome.sourceforge.net/

Reply Score: 2

RE[7]: Mono
by JAlexoid on Mon 13th Jul 2009 08:18 UTC in reply to "RE[6]: Mono"
JAlexoid Member since:
2009-05-19

So far Python is the best option for Linux desktop app development, IMO.
Even game development is possible on Python, see Civilization IV as proof.

Edited 2009-07-13 08:21 UTC

Reply Score: 1

RE[7]: Mono
by kaiwai on Tue 14th Jul 2009 01:57 UTC in reply to "RE[6]: Mono"
kaiwai Member since:
2005-07-06

You are talking apples and oranges here. Valid comparison is Swing and Gtk#. Gtk# probably didn't go down the overengineering route as badly as Swing.


The example was crude but it still stands; to get something very basic accomplished - take a look at 'Learning Java' from the O'Reilly book series and tell me that a mere mortal like myself could ever get my head around some of the ideas introduced at the beginning; hell, there are programmers of 20 years who have difficulty understanding them, what hope is there fore a mere mortal like me to ever understand it?

The point was to accomplish a very basic task, Java seems to be a hell of alot more complex than it needs to be when compared to C# where I was able to pick up some pretty basic VB skills I acquired 8 years ago and retrofit it to a small C# project I fiddling with at home.

If you are not exactly the fan of OOP-for-everything, you may like Qt's approach to gui's as well. Qt doesn't use subclassing for event handling either.


I've always found that OOP has turned what might be an interesting idea into something overly complex and convoluted - where one spends half ones time wrapping ones head around concepts rather than hitting the ground running.

And, if you are waiting for "standard to emerge" between Java and C#, your wait is over. Java is pretty dead for linux desktop app development (I think Eclipse is the only one still standing).

Mono really needs to hash it out against Python and C++, which is a different proposition altogether...


What I'd like to see is a closer relationship between LLVM, Mono and Python - reading some of the developer mailing lists makes fun reading at night.

Reply Score: 2

RE[6]: Mono
by michi on Mon 13th Jul 2009 12:58 UTC in reply to "RE[5]: Mono"
michi Member since:
2006-02-04

Try using Swing and claim compare that to C# - then claim that C# is complex.


You should really compare Swing to Windows.Forms or WPF. Using a decent IDE like Netbeans or Eclipse it is quite easy to put together a simple form and add some logic. However, try to write a moderately complex GUI application using Swing and Windows.Forms and you will notice that Swing is a relativly well designed GUI toolkit and Windows.Forms is crap. And WPF has quite a steep learning curve, it is quite complex and it totally lacks things like MVC for Lists, Trees and so on.

Reply Score: 1

RE[7]: Mono
by Hiev on Mon 13th Jul 2009 13:09 UTC in reply to "RE[6]: Mono"
Hiev Member since:
2005-09-27

it totally lacks things like MVC for Lists, Trees and so on

It has something better, deletages. the MVC pattern is easily implemented with it, and even more.


Java has no comparition with C#, even if the troll in you insist with the contrary.

Edited 2009-07-13 13:09 UTC

Reply Score: 0

RE[7]: Mono
by ndrw on Mon 13th Jul 2009 20:05 UTC in reply to "RE[6]: Mono"
ndrw Member since:
2009-06-30

In my (a Linux user's) POV it isn't really valid to compare Swing to Windows.Forms or WPF. For that simple reason that there is neither Windows.Forms nor WPF available for Linux and will probably never be, let alone available on a free licence.

Reply Score: 1

RE[4]: Mono
by modmans2ndcoming on Mon 13th Jul 2009 17:03 UTC in reply to "RE[3]: Mono"
modmans2ndcoming Member since:
2005-11-09

Some ideas in OO design can be hard to understand, but it really is a powerful design methodology when you "get it"

Reply Score: 2

RE[4]: Mono
by tuttle on Mon 13th Jul 2009 20:12 UTC in reply to "RE[3]: Mono"
tuttle Member since:
2006-03-01

Pick up a Java book for beginners then claim that it is an easy language to learn; I spent a good 6 months trying to get my head around object orientated principles - I eventually gave up, it was an exercise in futility.

I'm sticking with C because at least that makes some sense in my mind versus the mess that object orientation looks like.


Java is not the best language to learn OO. There are too many non-OO compromises left in the language. For example primitive types and static methods. Things got better with autoboxing in java 1.5, but this is one thing that C# does better than java.

If you are a C programmer, you can learn OO by studying and using object-oriented C frameworks such as GTK+. OO in java and C++ works exactly the same, except that it hides many of the details from you.

Reply Score: 3

Its the libraries man, the libraries.
by Bill Shooter of Bul on Mon 13th Jul 2009 01:12 UTC in reply to "RE[2]: Mono"
Bill Shooter of Bul Member since:
2006-07-14

There are so many ways to do things with the standard base of Java, that its confusing. The differnt Gui Api's, the different Ways to create a web page, the competing IDE's, the Middle ware. Its sort of confusing and counter productive. The relatively nice thing about .net is there usually is one standard of doing something, which is the way Microsoft recommends.

Having said that, I still prefer Java. It just takes more time to research.

Reply Score: 3

RE[3]: Mono
by Slambert666 on Mon 13th Jul 2009 06:45 UTC in reply to "RE[2]: Mono"
Slambert666 Member since:
2008-10-30

When you say "fiddling around with Mono" I assume you mean C#. If that is the case how can you say that C# is easier to understand than Java when the bases of both languages are virtually identical? The differences between them don't start manifesting until you get into the advanced topics.


C# vs Java is not just one language against the other it is also the std libraries of .NET vs JDK and CLR against JVM and the concepts that follow from this.

The .NET libraries are many, many, many times easier to use compared to the JDK libraries. In .NET you have one or two ways of doing a specific thing and you are almost never in doubt what the designers were thinking when they created the API for the given namespace. It is a completely different story for the JDK, it is convoluted, full of surprises and gives you plenty of guidance on how to do the wrong things (and no guidance on how to do it right). Essentially the concept behind the core .NET is POLS (Principle Of Least Surprise) and it is done in an coherent way. JDK on the other hand seems to be made by at least 5 sub groups that does not talk to each other or sometimes actively tries to sabotage each other.

Then there is the component orientation of .NET that is second to none when it comes to system programming. This is the real innovation of .NET is that you roll up your library in one self contained component that contains all you need for development and runtime for different consumer languages and different producer languages (with the DLR now also scripting languages can be producer languages) so .NET advocates complete transparency when making components. This is good for open source in that it very easy to bring in Python, Ruby and C# into the same application domain (you can extend C# classes in Python and extend from that in C# again, try doing that in Java :-)

Also to call Java overly complex in the same paragraph is ridiculous. Java actually has a pretty small feature set by design. C# on the other hand is grab bag containing every feature the designers could think of.


Probably not Java but JDK and JVM are overly complex and should be revised (or Java completely discontinued, nobody loves it anyway).

Reply Score: 1

RE[4]: Mono
by ndrw on Mon 13th Jul 2009 20:28 UTC in reply to "RE[3]: Mono"
ndrw Member since:
2009-06-30

Probably not Java but JDK and JVM are overly complex and should be revised (or Java completely discontinued, nobody loves it anyway).


You call it "overly complex", I call it "robust". If .Net reaches the same level of maturity (although as a Windows only toolkit it may never do) it will also get features, multiple implementations, helper tools etc.

BTW, calling for Java to be discontinued is... funny, to say the least.

Reply Score: 1

RE[4]: Mono
by tuttle on Mon 13th Jul 2009 20:41 UTC in reply to "RE[3]: Mono"
tuttle Member since:
2006-03-01


C# vs Java is not just one language against the other it is also the std libraries of .NET vs JDK and CLR against JVM and the concepts that follow from this.

The .NET libraries are many, many, many times easier to use compared to the JDK libraries. In .NET you have one or two ways of doing a specific thing and you are almost never in doubt what the designers were thinking when they created the API for the given namespace.


You can't be serious. The JDK library is showing its age at some points, but it is fundamentally well-designed. For example, the available collections are reasonably named and also complete. Interfaces are named after concepts, and implementations are named after specific algorithms. For example, you have a Set interface, implemented by a HashSet and TreeSet class.

In .NET there are no interfaces at all for some concepts (for example Set). collection classes are named confusingly (List is an ArrayList, SortedList is not a list at all, but a dictionary where the keys are sorted, etc. ). Thread-safe collections are extremely incomplete.

And don't get me started about the documentation. The MSDN documentation is a complete mess. There are examples in all .net languages, but never more than one paragraph about one topic. For example you have different pages for "type X", "members of type X", etc so you never have a useful amount of information on one page.

Reply Score: 2

RE[3]: Mono
by memson on Mon 13th Jul 2009 10:18 UTC in reply to "RE[2]: Mono"
memson Member since:
2006-01-01


When you say "fiddling around with Mono" I assume you mean C#. If that is the case how can you say that C# is easier to understand than Java when the bases of both languages are virtually identical? The differences between them don't start manifesting until you get into the advanced topics.


They're not the same on a much more basic level than you imply. The Java syntax is very wordy, C# is terse. Java pushes the developer down a very specific route, C# is a lot less interested in protecting the programmer and more interested in getting to the point that the job is done. C# is a lot simpler to come to from C++ that the transition from C++ to Java for example.

Also to call Java overly complex in the same paragraph is ridiculous. Java actually has a pretty small feature set by design. C# on the other hand is grab bag containing every feature the designers could think of.


C# is absolutely the simplest thing in the world if you are a C++ programmer who has also done a lot of Delphi and VCL work. Java wants me to do a lot of work to get the same results. I don't have time for that.

Reply Score: 1

RE[4]: Mono
by tuttle on Mon 13th Jul 2009 13:46 UTC in reply to "RE[3]: Mono"
tuttle Member since:
2006-03-01

Superficially C# is very similar to C++. But many of the things you take for granted in C++ are impossible in C#.

For example there is no mechanism for deterministic deallocation of resources.

There is not a single feature in C# that applies to all other parts of the language. For example, you can not use operators when using interfaces. You can have instance extension methods, but not static extension methods. You can not do any calculations on generic type parameters. The list goes on and on.

C# started as a decent java-inspired language that did some things better than java. But nowadays it is just a horrible pile of nonorthogonal language features.

I will take java any day over C#. A simple language with complete and comprehensive library support is preferable to a kitchen sink language like C# where every new technology fad results in an extension of the language.

If you want a modern JVM based language, take a look at scala.

Edited 2009-07-13 13:52 UTC

Reply Score: 3

RE[5]: Mono
by modmans2ndcoming on Mon 13th Jul 2009 17:25 UTC in reply to "RE[4]: Mono"
modmans2ndcoming Member since:
2005-11-09

non-deterministic resource deallocation? Welcome to garbage collection.

As to your other complaints... welcome to functional programming.

Seriously... you want to add a static method to an instance variable? do you plan to allow the dynamic creation of a new class?

Reply Score: 2

RE[6]: Mono
by flynn on Mon 13th Jul 2009 18:32 UTC in reply to "RE[5]: Mono"
flynn Member since:
2009-03-19

As to your other complaints... welcome to functional programming.

His other complaints had nothing to do with FP.

Seriously... you want to add a static method to an instance variable? do you plan to allow the dynamic creation of a new class?

No, he wanted to add a static method to an existing class without subclassing or recompilation. Currently C# allows you to only add non-static methods to existing classes. Which seems like a pretty artificial limitation.

Reply Score: 1

RE[6]: Mono
by tuttle on Mon 13th Jul 2009 19:09 UTC in reply to "RE[5]: Mono"
tuttle Member since:
2006-03-01

non-deterministic resource deallocation? Welcome to garbage collection.


Garbage collection has nothing to do with it. If an object (like a file or a GDI brush) has some resources associated with it, I want them to be deallocated immediately when the object goes out of scope, and not a few minutes later when the object is garbage collected.

There is the IDisposable interface and the using(...)-Pattern, but there is no way to enforce this. That is why C++ (even managed C++) has destructors that get called immediately. RAII is tremendously useful, but impossible to do safely in C#.

As to your other complaints... welcome to functional programming.


What does that have to do with functional programming? C# is not a functional language. It is just a language that took a few features (closures) from functional programming without understanding the big picture. For example, the biggest property of functional languages is referential transparency. But it is very difficult to ensure immutability in C#. In fact most language patterns (property and array initializer syntax) encourage mutable objects.

Scala has none of the deficiencies I mentioned and is much more functional than C#.

Seriously... you want to add a static method to an instance variable? do you plan to allow the dynamic creation of a new class?


I want to be able to add a static method to a type. To be precise, I do not want any static methods in the first place. I would prefer the scala approach.

But if you have a language feature like static methods or interfaces you should make sure that other language features (operators, extension methods) work together with that feature. Otherwise the language is nonorthogonal, which is just bad design.

Reply Score: 2

RE[7]: Mono
by modmans2ndcoming on Mon 13th Jul 2009 19:29 UTC in reply to "RE[6]: Mono"
modmans2ndcoming Member since:
2005-11-09

Garbage collection has everything to do with it. The garbage collection system takes over responsibility for resource deallocation. you use a language with GC, you accept that. Managed C++ has GC features but that is more a function of being compiled to IL code rather than it being a central feature of the language.

C# is an evolving mixed paradigm language. it is both imperative and adding Functional features to support interesting things in the framework.

As to what you want to do with Static methods, you want it to work in a way you like rather than a way it is meant to work. You want to add static features? you will have to subclass it. It certainly should never be able to be done at run time.

Edited 2009-07-13 19:34 UTC

Reply Score: 2

RE[4]: Mono
by kaiwai on Tue 14th Jul 2009 02:18 UTC in reply to "RE[3]: Mono"
kaiwai Member since:
2005-07-06

They're not the same on a much more basic level than you imply. The Java syntax is very wordy, C# is terse. Java pushes the developer down a very specific route, C# is a lot less interested in protecting the programmer and more interested in getting to the point that the job is done. C# is a lot simpler to come to from C++ that the transition from C++ to Java for example.


I'm going through a guide learning C# (well, actually a book) and it all makes sense; there is no brain contortions needed because it is all understandable even for a person like me who finds picking up programming a difficult thing to do.

I can see why Minguel loves the language; it is easy to hit the ground running and pumping out software.

C# is absolutely the simplest thing in the world if you are a C++ programmer who has also done a lot of Delphi and VCL work. Java wants me to do a lot of work to get the same results. I don't have time for that.


If you're a VB, AmigaBASIC, AMOS or pretty much anything but Java programmer, you'll find it easy.

Reply Score: 2

RE[2]: Mono
by modmans2ndcoming on Mon 13th Jul 2009 16:58 UTC in reply to "RE: Mono"
modmans2ndcoming Member since:
2005-11-09

But that is a decision each developer must make. Making it available and part of any standardized implementation is what is important.

Reply Score: 2

RE: Mono
by modmans2ndcoming on Mon 13th Jul 2009 16:55 UTC in reply to "Mono"
modmans2ndcoming Member since:
2005-11-09

It would be nice if some open source libraries were added to the standard for Databases and web servers.

Reply Score: 2

Summer
by Eddyspeeder on Sun 12th Jul 2009 23:22 UTC
Eddyspeeder
Member since:
2006-05-10

Thank you, Thom, for continuing bringing us news through the summer. At the end of the day (literally), it's great to get a quick update on what's happening in Techville (or in Frisian: Techum).

Reply Score: 3

Google this, google that
by invent00r on Sun 12th Jul 2009 23:54 UTC
invent00r
Member since:
2009-04-27

Yeah, there's so much covering over Google this week that was sickening!

Not blaming Thom who does a great jobs reporting news, but everyone else all the sudden wanting to join in the Google OS hoax! (Tho Chromium Gets Native Theming on Linux was a bit unnecessary too)

Anyways, I hope next week is google-free. ;)

Reply Score: 2

RE: Google this, google that
by Eddyspeeder on Mon 13th Jul 2009 10:57 UTC in reply to "Google this, google that"
Eddyspeeder Member since:
2006-05-10

I first have to admit that I am rather fond of Google and most of their services. So for me, Google news is good news. But I wonder about why people don't like to see news on Google, can't you just ignore it and read the other articles? Granted, not everyone uses Google (maybe Search though), but not everyone uses Linux either. And I can recall weeks filled with Linux news. You don't hear people complain about those weeks!

I'm not surprised Google manage to hit the news (even though I agree, the native theming announcement is a bit over the top indeed). Google deploy new services quite frequently. I'm already looking forward to Waves (which looks quite a bit like IRC mixed with a feature ICQ already had years ago).

Reply Score: 1

Great!
by dylansmrjones on Mon 13th Jul 2009 01:42 UTC
dylansmrjones
Member since:
2005-10-02

I'm definitely looking forward to the AmigaOS/Sam review. Let's up it'll be worth the wait ;)

Reply Score: 3

RMS
by boulabiar on Mon 13th Jul 2009 09:16 UTC
boulabiar
Member since:
2009-04-18

I heard a speech of RMS, in Nantes, France.

He speaks about these virgins, but not as you have said.

Telling us that he was sexist, is really a big lie in front of what he had said.

And please, before someone speak about any person, try to listen to what he has said, by yourself, instead of submitting crazy comments.

We have our minds to value things, we don't need others to do the job for us.

Reply Score: 1

Evony
by Soulbender on Tue 14th Jul 2009 06:08 UTC
Soulbender
Member since:
2005-08-18

How come I get these ads with scantily clad women all the time on OSNews? That's a bit sexist, innit?

Reply Score: 2

RE: Evony
by kaiwai on Wed 15th Jul 2009 02:35 UTC in reply to "Evony"
kaiwai Member since:
2005-07-06

How come I get these ads with scantily clad women all the time on OSNews? That's a bit sexist, innit?


What are you talking about? firstly OSNews.com doesn't choose the advertisements and secondly all I get is an advertisement for a Muslim dating service.

Btw, why is it sexist? its terrible for a female to express their sex and sexuality - talk about a perverted view of freedom; "you're only free when you're wearing a sack, devoid of sex and live like a hermit' sounds your world view of the matter.

Reply Score: 2

RE[2]: Evony
by Soulbender on Wed 15th Jul 2009 02:45 UTC in reply to "RE: Evony"
Soulbender Member since:
2005-08-18

Is your sarcasm detector off today?

Reply Score: 2

RE[3]: Evony
by kaiwai on Wed 15th Jul 2009 03:20 UTC in reply to "RE[2]: Evony"
kaiwai Member since:
2005-07-06

Is your sarcasm detector off today?


It is difficult to detect sarcasm when the original post wasn't even slightly funny.

Reply Score: 2