You are not logged in.

#1 2005-10-16 16:27:05

Gullible Jones
Member
Registered: 2004-12-29
Posts: 4,863

Why Mono?

Why the hell is the OSS community so fast to embrace C#? Seriously, why not use GCJ, Java-Gnome, etc.? There's already at least one C# virus out there already, and no Java viruses. Java's already well established as a safe high-level language. C#, on the other hand, comes from a company infamous for caring nothing at all about security or stability. Seriously, which one do you think should be used?

And while we're at it, I might as well as add that programs written using using C# and Mono are sloooowwwww...

[/rant]

Offline

#2 2005-10-16 16:56:54

Dusty
Schwag Merchant
From: Medicine Hat, Alberta, Canada
Registered: 2004-01-18
Posts: 5,986
Website

Re: Why Mono?

*shrugs*

Microsoft is a powerful company with a lot of users and pseudo-developers (real devs don't use MS, of course). A lot of people are learning C# and dot net right now. These people will never switch to Linux if their development environment isn't supported. Then there's the users who might want to port dot net apps to linux.

Its kind of like asking why part of the OSS community supports Java, what's wrong with GCC or Python? There's a lot of Java devs out there.

Having said that, what makes you say the OSS community is embracing C#? I don't know of any Linux apps coded in C#. I'd personally never use one, but that's preference. I don't install Gnome apps as a general rule either.

I'm curious about this statement that there are no Java viruses.  I've never thought about it before, but it would be a wonderful way to create a cross platform virus.... wonder how it would work, attack the interpreter, or attack an actual Java application... hmm.

Dusty

Offline

#3 2005-10-16 17:13:50

Gullible Jones
Member
Registered: 2004-12-29
Posts: 4,863

Re: Why Mono?

Dusty wrote:

Having said that, what makes you say the OSS community is embracing C#? I don't know of any Linux apps coded in C#. I'd personally never use one, but that's preference. I don't install Gnome apps as a general rule either.

Beagle, Cowbell (I think that's the name anyway - it's an ID3 tagger), Muine, Blam, iFolder, F-Spot, Tomboy, Banshee - all written in C#. There's even a live CD dedicated to Mono-based apps.

Offline

#4 2005-10-16 18:55:31

arooaroo
Member
From: London, UK
Registered: 2005-01-13
Posts: 1,268
Website

Re: Why Mono?

You can write a virus in most languages. Just because there haven't been any (that we know if) in Java doesn't mean it *can't* happen.

I don't know why it's gaining popularity. I expect that like Java, the C# class library is very rich and therefore it can make writing large programs relatively easily. Mono has done a great job of creating an open implementation.

Maybe it's because MS did a good job in designing C#? I don't know, I've never learnt it properly. At the end of the day, as a programmer, you often what to get the task implemented in the most suitable language for that task. Ideology can become a luxary when spare time is scarce.

Offline

#5 2005-10-17 01:06:55

Cam
Member
From: Brisbane, Aus
Registered: 2004-12-21
Posts: 658
Website

Re: Why Mono?

I spent some time learning C# before I switched to linux, even spent a bit of time porting some of it's basic objects to PHP tongue It's actually a very nice language, huge class library, good community and it's not too difficult to learn.

C#, on the other hand, comes from a company infamous for caring nothing at all about security or stability

If that was true then they wouldn't be implementing a new permissions system in Vista and for most 2000 and XP are just as stable as my current linux install. Microsoft-bashing is becoming boring, do you have any better arguments?

Offline

#6 2005-10-17 02:04:44

shadowhand
Member
From: MN, USA
Registered: 2004-02-19
Posts: 1,142
Website

Re: Why Mono?

Mono should be embraced because it allows use to "stick it to Microsoft" in one more way. Look at it this way: now the Linux community can say to C# devs: "You know, Linux has excellent support for C# through a program called Mono, so there's no need to have Windows".

On the other side of the fence, in a round about way, Mono is supporting Microsoft by extending C# to Linux. It's a two-edged sword I'm afraid, and there aren't any good answers yet.


·¬»· i am shadowhand, powered by webfaction

Offline

#7 2005-10-17 02:42:40

keevn7
Member
From: Lancaster, OH, US
Registered: 2005-06-09
Posts: 206
Website

Re: Why Mono?

Well see, the difference is that people often like to have some free RAM that is not actively in use, and Java is very detrimental to free RAM. C#'s syntax is stupid(too anal with the caps and such), but if it works without slaughtering RAM and people make good stuff with it then who should care?

Offline

#8 2005-10-17 04:40:19

cactus
Taco Eater
From: t͈̫̹ͨa͖͕͎̱͈ͨ͆ć̥̖̝o̫̫̼s͈̭̱̞͍̃!̰
Registered: 2004-05-25
Posts: 4,622
Website

Re: Why Mono?

Mono is of 'questionable' legality. It could be possible for MS to 'bring the hammer down' on *some* aspects of the C# implementation. C# is an open spec, but like many of MS's 'open specs' parts of it are heavily patented..with a "we will be nice and not sue right now" type lisence.

At least, that is what was told to me a while back. I did some mono devel for web apps (mono c#.net). It is just another language.. I personally dont care for it. But I don't like java anymore either. wink


"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍

Offline

#9 2005-10-17 16:06:27

Dusty
Schwag Merchant
From: Medicine Hat, Alberta, Canada
Registered: 2004-01-18
Posts: 5,986
Website

Re: Why Mono?

cactus wrote:

I personally dont care for it. But I don't like java anymore either. wink

Dynamic languages have that effect on people.  8)

Dusty

Offline

#10 2005-10-17 16:32:13

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: Why Mono?

I agree - way too many people are digging into the C# world.  I work in the .NET platform, and have done so for about 5-6 years now (I was working in it  while 1.0 was still beta).  Personally, I feel it is too restrictive, and a bit clunky.  I really don't like certain things, like delegates, for instance, but that's mainly due to the fact that, at heart, I'm a C++ guy, and the "delegate" issue is solved so much more elegantly in C++ with generic programming:

template <typename DelegateType>
void call_delegate(DelegateType& delegate)
{
   delegate(12,"hello",2.3); //calls DelegateType(int,const char*, float);
}

Now of course I've neglected some code as this isn't a real delegate, but I wanted to illustrate a point - use a template, you can pass anything you want to "call_delegate", including a class instance, or a function pointer.  The compiler will attempt to compile the (12,"hello",2.3) call however it can and if the function params are off, or the class does not support the proper operator()(int,const char*,double) call, compilation fails.

But I'm running around the point here - I think most people latch on to C# for the following reasons:
Many people in the linux world have had touch-and-go C/C++ experience, and have seen gcc errors, and have looked at patches, and seen the source.  However, not having experience in something like that, it is hard to pick up.  There's alot of nuances to these two which you don't get elsewhere (null references, dangling points, seg faults, memory leaks, etc).  When one of these people comes across C#, they see similar syntax to what they're used to, along with none of the "flaws" (I'll hold my tounge here....).  Admittedly, Java is the same.  However, I seriously think that having "C" in the name draws people to it, along with the fact that, about 5 years ago, java was considered "slow" (it is not slow anymore, but the VM still uses alot of RAM, but then again, python eats up more ram than X for me).

HIJACK!

cactus wrote:

No matter how much you polish a turd, it's still a turd

I personally like:
"You don't have to eat the whole turd to know it's not a crab cake" - Orson Scott Card, Ender's Shadow

Offline

#11 2005-10-17 19:28:07

Gullible Jones
Member
Registered: 2004-12-29
Posts: 4,863

Re: Why Mono?

phrakture wrote:

about 5 years ago, java was considered "slow" (it is not slow anymore, but the VM still uses alot of RAM, but then again, python eats up more ram than X for me).

The JVM is a RAM hog - Sun needs to slim it down a bit, IMHO. I'm not sure how GCJ compares, but the tgz file is 10 megs smaller, so I'm guessing it's probably a bit less of a pig.

(The problem is that GCJ doesn't come with a Mozilla plugin. Not that there's any reason it couldn't, AFAIK.)

BTW, do you guys think there's a dynamic language out there that could replace Java for things like embedded applets on web pages?

Offline

#12 2005-10-17 19:43:28

cactus
Taco Eater
From: t͈̫̹ͨa͖͕͎̱͈ͨ͆ć̥̖̝o̫̫̼s͈̭̱̞͍̃!̰
Registered: 2004-05-25
Posts: 4,622
Website

Re: Why Mono?

Do we want to replace those? I dont think there is much to be gained from the use of embedded applets. Most applets I have ever seen were for relatively silly things like making webpages look like they have water ripples on them, image mouseover effects, and so forth. Much of that can be easily done in flash these days..

And with the impending advent of svg (which can be programattically updated with javascript, i believe), flash will have some native competition.

I really don't see why applets and activeX were such great things in the first place. If you need an app to interface with an update service (like windows update), then write one!


"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍

Offline

#13 2005-10-23 21:40:40

neri
Forum Fellow
From: Victoria, Canada
Registered: 2003-05-04
Posts: 553

Re: Why Mono?

cactus wrote:

Do we want to replace those? I dont think there is much to be gained from the use of embedded applets.

Yes, I like to replace anykind of a plugin that beats mozillas RAM usage hands down tongue

cactus wrote:

Most applets I have ever seen were for relatively silly things like making webpages look like they have water ripples on them, image mouseover effects, and so forth. Much of that can be easily done in flash these days..

There are really useful JAVA-Applications in Websites, which come close to
a real application(rather than an applet) eg. http://www.uk.map24.com/
While I must say, Gmaps implementation with JavaScript is also nice.

cactus wrote:

And with the impending advent of svg (which can be programattically updated with javascript, i believe), flash will have some native competition.

Lately, I was toying around with mtasc and swfmill. This still uses the
proprietary Flash format, but the flexibility is just great! Flash's
performance is imho the biggest advantage when compared with SVG
(speaking of arguments for production issues and not of the fact that Open
Source should be preferred)

-neri

Offline

#14 2005-10-23 22:55:09

clarence
Member
From: fremantle.au
Registered: 2005-10-12
Posts: 294

Re: Why Mono?

If your like me and are too lazy for C C++ then C# is a good cheap thrill.


fck art, lets dance.

Offline

#15 2005-10-24 00:04:33

Dusty
Schwag Merchant
From: Medicine Hat, Alberta, Canada
Registered: 2004-01-18
Posts: 5,986
Website

Re: Why Mono?

neri wrote:

[
There are really useful JAVA-Applications in Websites, which come close to
a real application

here's one:
http://online.thinkfree.com/learnmore/index.jsp

I suspect Java webstart will eventually put the need for applet-like applications to the software museum.

Dusty

Offline

#16 2005-10-28 15:58:33

ecoffey
Member
Registered: 2005-06-24
Posts: 14

Re: Why Mono?

My personal experience has been that a Gtk# app is alot quicker then a Java Swing app.

Also, I do believe C# was originally designed by some random startup that Microsoft bought.  The C# language is standardized and open.  The legal fog is around Windows Forms: The C# wrapper of GDI (or whatever C api windows uses for drawing).

So if microsoft decided to start getting all protective about WinForms, it wouldn't affect apps written in strict C# and Gtk# or whatever.

Also, C# slaps Java around all silly like.  C# alows implicit boxing so you can store an int inside an object type and pass it around all happy like.  Java you have to cast EVERYTHING.  That and the jvm really is slow and clunky.

Just my two cents.

Offline

#17 2005-10-28 19:36:01

Gullible Jones
Member
Registered: 2004-12-29
Posts: 4,863

Re: Why Mono?

JVM is a bloody pig, but there are alternate implimentations... Like, for example, GCJ, which Fedora Core uses.

As for startup times - even Muine takes as long to start up as Azureus. Seriously, something needs to be done about these startup times.

Also, let me echo... Why not use Python? Why not use Ruby? Why not use something else, for God's sake?

Offline

#18 2005-10-28 20:25:44

Dusty
Schwag Merchant
From: Medicine Hat, Alberta, Canada
Registered: 2004-01-18
Posts: 5,986
Website

Re: Why Mono?

ecoffey wrote:

Also, C# slaps Java around all silly like.  C# alows implicit boxing so you can store an int inside an object type and pass it around all happy like.  Java you have to cast EVERYTHING.

That's not true.

dusty:~ $ cat test.java 
public class test {


        public static void main(String[] args) {
                int i = new Integer(5);
                Integer I = 6;
                System.out.println("i = " + i + "I = " + I);
        }
}
dusty:~ $ javac test.java
dusty:~ $ java test
i = 5I = 6

Guess you don't really know much about Java and your 2 cents are worthless.

But Python's better, you don't have to cast anything. ever.

Dusty

Offline

#19 2005-10-28 22:09:14

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: Why Mono?

Dusty wrote:
ecoffey wrote:

Also, C# slaps Java around all silly like.  C# alows implicit boxing so you can store an int inside an object type and pass it around all happy like.  Java you have to cast EVERYTHING.

That's not true.

It's also not the right terminology - "boxing" is the MSDN term for "casting" - and, come on, if they had to invent a new term for it, it's bad.

boxing:

System.Something.MyBaseType mbt = ((System.Something.MyBaseType)myDerivedThing);

Offline

#20 2005-10-28 22:49:25

clarence
Member
From: fremantle.au
Registered: 2005-10-12
Posts: 294

Re: Why Mono?

phrakture wrote:

It's also not the right terminology - "boxing" is the MSDN term for "casting" - and, come on, if they had to invent a new term for it

Then they can claim they invented it wink


fck art, lets dance.

Offline

#21 2005-11-03 15:54:23

High|ander
Member
From: Skövde, Sweden
Registered: 2005-10-28
Posts: 188
Website

Re: Why Mono?

I'm a programmer, and i have tried C# for some time, and i think it is nice when you do gui-programs like Beagle or something...

But for programs that are using C-libraries it doesn't feel right for me...

So i'm a little sceptic about mono


When death smiles at you, all you can do is smile back!
Blog

Offline

#22 2005-11-03 18:05:43

neri
Forum Fellow
From: Victoria, Canada
Registered: 2003-05-04
Posts: 553

Re: Why Mono?

High|ander wrote:

I'm a programmer, and i have tried C# for some time, and i think it is nice when you do gui-programs like Beagle or something...

But for programs that are using C-libraries it doesn't feel right for me...

So i'm a little sceptic about mono

Well ther is a project out there which tries to combine thos two:
mono for the GUI and gstreamer for the operations, It's called diva iirc.

(i havn't tried it, yet)
-neri

Offline

#23 2005-11-03 20:07:25

High|ander
Member
From: Skövde, Sweden
Registered: 2005-10-28
Posts: 188
Website

Re: Why Mono?

Okay, looked nice...

Is it hard to embed C libs in C# ?


When death smiles at you, all you can do is smile back!
Blog

Offline

#24 2005-11-04 01:04:51

awalk
Member
From: Perth, Western Australia
Registered: 2005-02-14
Posts: 40

Re: Why Mono?

phrakture wrote:

It's also not the right terminology - "boxing" is the MSDN term for "casting" - and, come on, if they had to invent a new term for it, it's bad.

Boxing refers to the storing of a primitive data type within an object. Not just casting. Autoboxing hides this from the developer.

ecoffey wrote:

Also, I do believe C# was originally designed by some random startup that Microsoft bought.

Really? I was always under the impression that Anders Hejlsberg designed it.

Offline

#25 2005-11-04 01:46:41

cactus
Taco Eater
From: t͈̫̹ͨa͖͕͎̱͈ͨ͆ć̥̖̝o̫̫̼s͈̭̱̞͍̃!̰
Registered: 2004-05-25
Posts: 4,622
Website

Re: Why Mono?

phrakture wrote:

It's also not the right terminology - "boxing" is the MSDN term for "casting" - and, come on, if they had to invent a new term for it, it's bad.

*cough* in python arrays are called lists *coughs*
*cough* in python hashes are called dictionaries *coughs*


"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍

Offline

Board footer

Powered by FluxBB