Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

How C# Was Made

timothy posted more than 10 years ago | from the magic-dust dept.

Programming 391

prostoalex writes "Bruce Eckel (from the Thinking in C++/Java/Patterns/Enterprise Java fame) and Bill Venners have interviewed programming legend Anders Hejlsberg. After 13 years in Borland and joining Microsoft in 1996, Hejlsberg now leads the development of C# language and talks about the development process, reasons some things exist in C# and some not, as well as future directions."

cancel ×

391 comments

Sorry! There are no comments related to the filter you selected.

C# History Site (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213653)

This is actually a really good C# History Timeline here [csharphistory.gnaa.us] .

Well worth the read if you're interested in the conceptualization and creation of a language.

Re:C# History Site (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213672)

Modded down? Are you mods on crack? That post is completely on-topic!

Re:C# History Site (0)

Anonymous Coward | more than 10 years ago | (#8213681)

Yep, it boggles my mind why people do this crap.

Re:C# History Site (0)

Anonymous Coward | more than 10 years ago | (#8213693)

It's a scat site. Mod it to hell.

Re:C# History Site (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#8213834)

Do you have something against the homosexual lifestyle, you homophobe?

Re:C# History Site (0)

Anonymous Coward | more than 10 years ago | (#8213899)

Holy fuck!!! This the is fucking gross! And the popups on the goddamned site even got past the pop-up blocker on Mozilla Firebird!

"Co-opt Java" (2, Informative)

tealover (187148) | more than 10 years ago | (#8213654)

I believe that was the mandate given Hejlsberg by Gates.

Re:"Co-opt Java" (-1, Flamebait)

irokitt (663593) | more than 10 years ago | (#8213802)

I agree. C# really is just a bastardized version of Java.

Re:"Co-opt Java" (1)

irokitt (663593) | more than 10 years ago | (#8213885)

I'm sorry, I should have made it more clear that I was being sarcastic.

oh, and what's the next release of Java have? (0, Insightful)

tjstork (137384) | more than 10 years ago | (#8213983)


real enumerations, like C#
real attributes and program metadata, like C#
real foreach, like C#
generics, like the next version of C#

Face it, if C# borrows from Java, the next release of Java is a ripoff of C#.

Re:oh, and what's the next release of Java have? (4, Insightful)

Shados (741919) | more than 10 years ago | (#8214136)

Bingo...and in the end, we programmers don't have 1, but -two- improved languages, as they try to improve to each other. MS trying to lock in their customers or not, Sun trying to control java or not...doesn't matter... Now we have 2 languages that try to improve on each other as fast as possible, and we win!

Re:"Co-opt Java" (5, Insightful)

tjmsquared (702422) | more than 10 years ago | (#8213838)

I don't know why Java developers always feel the need to point out that C# took a lot of ideas from Java. I don't see C++ developers always pointing out that Java's mandate was to "co-opt" C++. Of course C# took a lot of ideas from Java (I don't think Microsoft has ever denied this), because Java got a lot of things right. C# also made a lot of improvements (event handling is MUCH improved in C# for example) and is a great language to program in. I think it would be even better if there were a .NET runtime for an OS other than Windows, but the good people on the Mono project are working on that already.

Re:"Co-opt Java" (5, Insightful)

tealover (187148) | more than 10 years ago | (#8213880)

In a sense, Java was designed to co-opt C++. But co-optinging C++ was not made as a business decision to lock in Sun customers, it was made as part of Sun's vision of "The Net is the Computer" (or whatever they called it).

Sun embraced the internet years before Microsoft and looked out into the future and realized that desktop computing and huge, standalone applications were going to be increasingly replaced by device computing and small, internet downloadable applications would be prevalant.

To that end, they tried to design a language that was simple, that had built-in libraries to handle basic internet protocols and to a large extent, their vision was spot-on and Java was hugely successful.

Without Microsoft spending years trying to undercut them it's very conceivable that Java would be the lingua-franca of the internet right now.

Re:"Co-opt Java" (5, Insightful)

yomegaman (516565) | more than 10 years ago | (#8213913)

What are you talking about? Nobody uses java for "internet downloadable applications", or even intranet downloadable ones. Their vision of thin-client computing was shown to be a pipe dream, to everyone except you anyway.

Re:"Co-opt Java" (2, Informative)

tealover (187148) | more than 10 years ago | (#8213929)

I use them on my cell-phone daily. It appears you're still thinking in terms of desktop applications. You better start thinking in the now before you become obsolete.

Wake up and smell the marketing bullshit! (4, Interesting)

Anonymous Coward | more than 10 years ago | (#8213965)

But co-optinging C++ was not made as a business decision to lock in Sun customers, it was made as part of Sun's vision of "The Net is the Computer" (or whatever they called it).

For fucks sake, man! Wake up and smell the marketing bullshit. The most innovative impressive thing about Java was that it was successfully marketed as basically the second coming (more tangibly as the solution to 10 different huge problems), all while just being another platform. Get it? They created their own platform without hardware leverage, OS leverage, app leverage, etc. It's bootstrapping by marketing.

Re:"Co-opt Java" (3, Insightful)

1010011010 (53039) | more than 10 years ago | (#8213946)


That C# takes ideas from java is irrelevant. .Net and C# exist for exactly one reason: Bill Gates wanted to stop Java. Bill likes to have control. He couldn't tolerate Java, because it didn't allow him to have control.

Maybe you like C#, maybe you don't. maybe it's useful for your project, maybe it's not. Those are side issues -- its role as a tool is secondary.

DotNet performs the task for which it was designed very well. That task is, of course, to contain programming talent and effort within the Windows world. That DotNet better than VB and Win32 is fundamentally a testament to how awful VB and Win32 are.

I'm not bagging C# or DotNet on their technical merits. They are not bed in that respect. But C# and DotNet's utility as development tools for Windows are only secondary to their utility as a means for maintaining Microsoft's control of the market.

C# and DotNet are beautiful Gates on the prison of the computing world.

Re:"Co-opt Java" (4, Insightful)

malakai (136531) | more than 10 years ago | (#8214138)

Those are side issues -- its role as a tool is secondary

Your comment is a fascinating insight into a fanatical mind. You may not yet be as bad as the guy that lives on the corner of my block, with the foil under his NY Yankees basball cap, but the distinction is small.

You've esentially said C# and .Net may be a great language and framework, may make a developers life easier, may generate better application for our clients (internal and external)... but you don't like Bill Gates and therefore any and all points are moot.

Wonderfull logic.

Your prison/Gates metaphor-pun is wonderfully melodramatic as well.

Thanks for play,

Re:"Co-opt Java" (1)

Lord Omlette (124579) | more than 10 years ago | (#8213978)

I quote: "the cheddar breed jealousy 'specially if that man fucked up, get your ass stuck up."

Re:"Co-opt Java" (5, Insightful)

kyz (225372) | more than 10 years ago | (#8213982)

Java was designed to co-opt Smalltalk, or at least Sun brand it and bring it up to date.

Think about it... Smalltalk's main points were the single root object heirarchy, the bytecode compilation, and the large runtime library including full GUI. Did C++ have this? No. It was more "object oriented concepts ported to C" - lean and mean, machine dependant and no standard GUI. The C++ generics and the STL weren't standard when Java arrived.

Re:"Co-opt Java" (4, Insightful)

matchlight (609707) | more than 10 years ago | (#8214009)

But people DO say that Java was co-opted C++, including you and now .. me. Languages naturally progress from those that already exists like every other technology. Why reinvent the wheel and find out that squares don't work... over and over.

Java is taking ideas from C# as well, just take a look at 1.5 with enums, yes I know they existed before C# but I think their existence in C# prompted the move.

I just find it funny that pro-MS people often don't like to hear that C# could even possibly be an evolutionary step off of Java. And unlike older languages, Java itself is still evolving. The .NET runtime concept that works so much better than Java on a Windows machine is something that could exist for Java some day. C# might actually have a legitimately supported OS other that Windows, and although the Mono project is great, it ain't by MS.
I've used both and the both work and they'll both change... for a while ... then another will come along.

I wounldn't try to find religion in a programming language, they come and go too quickly.

Re:"Co-opt Java" (0)

Anonymous Coward | more than 10 years ago | (#8213844)

"yawn"

Wake me up when the nerds find something interesting to talk about, k?

I'll be in your mom's bedroom, dead tired.

Re:"Co-opt Java" (4, Insightful)

prockcore (543967) | more than 10 years ago | (#8213881)

Fine with me. A java-like language that doesn't gobble ram like no tomorrow? Sounds good.

As a bonus, Gtk# has the best API I've ever used in a gui toolkit.

Re:"Co-opt Java" (0)

Anonymous Coward | more than 10 years ago | (#8213972)

Guess you've never used QT then.

You are not logged in (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#8213656)

You are not logged in. You can log in now using the convenient form below, or Create an Account, or post as Anonymous Coward.

Nick
You are not logged in. You can log in now using the convenient form below, or Create an Account, or post as Anonymous Coward. You are not logged in. You can log in now using the convenient form below, or Create an Account, or post as Anonymous Coward. You are not logged in. You can log in now using the convenient form below, or Create an Account, or post as Anonymous You are not logged in. You can log in now using the convenient form below, or Create an Account, or post as Anonymous Coward. You are not logged in. You can log in now using the convenient form below, or Create an Account, or post as Anonymous Coward. You are not logged in. You can log in now using the convenient form below, or Create an Account, or post as Anonymous Coward.

Nick

Nick

Nick Login
Why Login?
Why Subscribe?

Sections
Main
Apache
Apple
1 more
Askslashdot
10 more
Books
BSD
Developers
Games
14 more
Interviews
Science
4 more
YRO
Coward.

Nick

Nick

Nick

obligatory Magnolia quote: (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#8213671)

RespeCt the C++k! And tame the C#nt!

haha (-1, Offtopic)

gobblez (659715) | more than 10 years ago | (#8213673)

Programming Legend... that just sounds funny :P

Interesting Hejlsberg article (5, Informative)

Anonymous Coward | more than 10 years ago | (#8213676)

There a great interview [sys-con.com] with The father of C# here too,

Re:Interesting Hejlsberg article (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213716)

Another good interview here [lake-district.com]

Re:Interesting Hejlsberg article (-1, Troll)

MasterSLATE (638125) | more than 10 years ago | (#8213761)

its a tubgirl link FYI

MOD PARENT DOWN (0)

Anonymous Coward | more than 10 years ago | (#8213815)

parent is a troll that calls anything insightful a link to goatse or tubgirl

So, uh (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#8213682)

is microsoft cool now?

Re:So, uh (0)

Anonymous Coward | more than 10 years ago | (#8213796)

no, not yet. check back.. oh, never.

OT: SCO reveals files and line #s of "copied" code (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#8213684)

How come there hasn't been a story about the fact that SCO has now revealed the allegedly copied source files in linux including line numbers. More info here:

http://www.groklaw.net/article.php?story=200402070 22922296 [groklaw.net]

Re:OT: SCO reveals files and line #s of "copied" c (0)

Anonymous Coward | more than 10 years ago | (#8213830)

It's a pretty long document, so it will take a while to read and put the proper spin on the story. Give it another hour or two.

Interview on the .NET Show (5, Informative)

enkafan (604078) | more than 10 years ago | (#8213688)

There is a pretty good interview [microsoft.com] on the .NET show on MSDN with Anders too. It runs about one hour, so get a comfy chair.

WARNING: tubgirl-link (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213852)

GODDAMMIT! Yet another link that fills your screen with tubgirl windows. Mod the fucker down and fast!

How and Why C# Was Made (-1, Flamebait)

1010011010 (53039) | more than 10 years ago | (#8213689)

  1. Sun invents Java
  2. Java turns out to be popular for writing applications, and is portable to boot.
  3. Microsoft hates this
  4. Microsoft tries to co-opt Java
  5. Microsoft gets hat handed to them
  6. Microsoft hates this
  7. Microsoft decides to clone Java
  8. Microsoft starts "project C.O.O.L." to develop their own "C Object Oriented Langauge" and runtime *cough*java
  9. Microsoft hires away yet more Borland developers to do this for them
  10. Microsoft rolls out .Not, their immature Windows-only java environment clone, to great fawning by the trade press and, especially, Paul Thurrott, MSFT lapdog and footstool.
  11. Microsoft's marketing machine fucks up, calling anything and everything Something.Net
  12. Microsoft starts trying to tell people that "OO is soo... yeasterday. You want Indigo."


*sigh*

Control freaks.

Re:How and Why C# Was Made (0, Flamebait)

JamesP (688957) | more than 10 years ago | (#8213721)

Sorry to disagree...

Java is the worse crap SUN could have pulled. The whole of it, extending interfaces, illogic class naming, having to call a trillion classes to do something. .NET is usable, but Java is something horrific.

C# is much more like Python than Java...

Re:How and Why C# Was Made (2, Insightful)

thasmudyan (460603) | more than 10 years ago | (#8214119)

.NET is usable, but Java is something horrific.

I wonder why .NET-bashers never get modded down but anyone who dislikes Java goes to karma hell, LOL...

Re:How and Why C# Was Made (5, Interesting)

atlasheavy (169115) | more than 10 years ago | (#8213750)

Microsoft starts trying to tell people that "OO is soo... yeasterday. You want Indigo."

You're referring to Don Box [gotdotnet.com] , specifically, right? I don't think it's so much that Don is pooh-pooh'ing OOP in general, it's that he feels that a service-oriented architecture is better suited to the kind of problems we face today than DCOM or CORBA. His point is that trying to use an OOP metaphor for enormous, architecturally sound remote object invocation/data transfer systems is a terribly complex task.

Also, keep in mind that Don wrote *the* book on Microsoft's COM technology; OOP has its place, but CORBA and DCOM are not really the place.

Re:How and Why C# Was Made (1)

irokitt (663593) | more than 10 years ago | (#8213846)

Unfortunately, I know that many instructors have also been confused into thinking that Microsoft is moving away from OOP. The result? "Oh, we'll only skim over the object-oriented portions of C++ in this class. Most of you will program for Windows, and Windows is moving away from Object-Oriented Programming."
*sigh*

Re:How and Why C# Was Made (2, Funny)

AndroidCat (229562) | more than 10 years ago | (#8214035)

Don wrote *the* book on Microsoft's COM technology

Another one? But I haven't finished Brockschmidt yet! :)

Re:How and Why C# Was Made (0)

ergo98 (9391) | more than 10 years ago | (#8213927)

I think you missed a couple of fairly critical points in your timeline.

-2. C++ is invented, adding a usable OOP layer onto Java.

-1. Dozens of interpreted, or semi-compiled languages (such as Visual Basic, which preceded Java) exist. Many of them are cross platform.

0. No one writes software for Sun, so they think up a plan to let people write software for Windows, while still allowing it to run on Sun. Java is the obvious result, and is basically the merging of -1 and -2, though Java fanboys will forever imagine that it was a wonderfully unique idea that appeared out of nowhere.

Also

4.5 Microsoft's implementation of Java absolutely stomps Sun's on the Microsoft platform. Microsoft implements additional platform specific extensions, as is allowed under the Java spec, to make it more usable on the Windows platform. Seeing point 0, this really pisses off Sun who yoinks their license back.

Re:How and Why C# Was Made (0)

Anonymous Coward | more than 10 years ago | (#8213971)

C++ is invented, adding a usable OOP layer onto Java.

Uh, yeah.

Visual Basic, which preceded Java

You mean "ruby"

they think up a plan to let people write software for Windows, while still allowing it to run on Sun

Java, which was called Oak originally, was created for small and embedded systems, such as set-top boxes. ... Idiot. Fanboy.

Re:How and Why C# Was Made (-1, Flamebait)

Anonymous Coward | more than 10 years ago | (#8214017)

Java, which was called Oak originally, was created for small and embedded systems, such as set-top boxes. ... Idiot. Fanboy.

While you're licking your lips and imagining your hot night of gay sex with Bill Joy, you might want to read up on the history of Java a bit fuckhead. The "Oak" project stumbled along for two years (with no results) until they happened to hear of some interactive TV trials and decided to shoehorn their abortion onto it. Saying that it was created for it is a flight of fantasy.

Re:How and Why C# Was Made (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#8214031)

hot night of gay sex with Bill Joy

We really don't want to hear about your personal life, ergo98.

Re:How and Why C# Was Made (1)

ergo98 (9391) | more than 10 years ago | (#8214075)

Uh, yeah.

I apologize profusely for that typo, though it was fairly obvious.

You mean "ruby"

Err, no I mean exactly what I said, which is that there was dozens of interpreted or quazi-compiled languages before Java. It's a neat concept and a good implementation, but it certainly wasn't revolutionary.

Java, which was called Oak originally, was created for small and embedded systems, such as set-top boxes. ... Idiot. Fanboy.

Obviously I was being a bit facetious given the original flamebait troll. There is no doubt whatsoever that .NET "borrows" many ideas from Java, but it's absurd to paint Java as an amazing new development that invented these concepts (just as it's equally absurd to claim that Macs invented the GUI, though that's an entirely different debate).

Re:How and Why C# Was Made (1)

ergo98 (9391) | more than 10 years ago | (#8213981)

Oh, mother of...

Preview, damnit, preview!

"C++ is invented, adding a usable OOP layer onto C."

Re:How and Why C# Was Made (2, Insightful)

rdean400 (322321) | more than 10 years ago | (#8214064)

Your 4.5 is wrong, and even in a world in which it made sense, it'd still be wrong. Sun's whole marketing mantra around Java was "Write Once. Run Anywhere." Allowing platform-specific extensions would break that, so it's an obvious non-starter. Sun's reaction wasn't correct, but it was an allowable one.

Re:How and Why C# Was Made (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213980)

Oh fucking wahh. No matter how much you cry about MS's ruthless behaviour, in the end more programmers will make more money using C# than Java. They rush out crap products in a hurry, but in the end they often work very nicely.

A good example is DirectX. I used it when it was still RenderMorphics. MS bought it, made it junk for about 3 versions and now it's the best out there. Lots more people making a healthy living using DirectX than OpenGL now.

Re:How and Why C# Was Made (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213993)

Yes, yes, exactly. Might makes right. Fuck everyone else!

Re:How and Why C# Was Made (2, Funny)

cybermace5 (446439) | more than 10 years ago | (#8214018)

I think the old adage needs to be updated: If you want to eat sausage, obey the laws, and use C#, you should never watch them being made.

C#, C++, VBscript, C Nasm, Tasm etc etc (-1, Troll)

ratfynk (456467) | more than 10 years ago | (#8213695)

C#, (personal opinions) is simply another attempt to modify, obscure and exclude, if it becomes processor code than tuck your head between your legs all you Linux C coders!

More about Anders Hejlsburg (4, Informative)

atlasheavy (169115) | more than 10 years ago | (#8213697)

Joel Spolsky published a great article [joelonsoftware.com] a while back on .Net, his company's strategy for the platform, and why Anders so damn cool. Also, just in case you're curious as to how his last name is pronounced, it's pronounced hells-burg.

Re:More about Anders Hejlsburg (5, Informative)

The_DOD_player (640135) | more than 10 years ago | (#8213820)

Also, just in case you're curious as to how his last name is pronounced, it's pronounced hells-burg.

No, it most certainly is not!
First its Hejlsberg, not Hejlsburg. "Hejl" is pronounced just like "Heil", as a german would in a WW2 movie :). "berg", the "g" is more or less mute, so it pronounced more like "bear".
So its "Heils-bear"

Here's a direct link to the Artima articles... (5, Informative)

tcopeland (32225) | more than 10 years ago | (#8213719)

...right here [artima.com] to save you a click thru the MSDN page.

Re:Here's a direct link to the Artima articles... (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213757)

A little OT, but Artima also has a really good article [artima.com] about the development of new features in Java.

Re:Here's a direct link to the Artima articles... (1)

phxhawke (35260) | more than 10 years ago | (#8213763)

Which is what I was about to post as well. It just
took me too long to get find damn it!

How C# was made (4, Funny)

moronga (323123) | more than 10 years ago | (#8213794)

They hit the black key to the right of C.

Re:How C# was made (1)

irokitt (663593) | more than 10 years ago | (#8213821)

Your keyboard is different from mine. I have to simultaneously hold down the third key over from C and hit the key centered above the W and E.

It was a piano joke. (1, Informative)

Anonymous Coward | more than 10 years ago | (#8213904)

NT

Re:How C# was made (5, Funny)

chromatic (9471) | more than 10 years ago | (#8213967)

I thought my amplifier was cool for going up to 11, but it can't compete with a piano that goes up to W!

Re:How C# was made (0)

Anonymous Coward | more than 10 years ago | (#8213977)

I have to press the lower of the two keys to the left of my Return key. British keyboards are much more convenient for any language which uses # for comments...

Re:How C# was made (0)

Anonymous Coward | more than 10 years ago | (#8213843)

what are you talking about.... I always thought that was Bb

Bb is to the left. (0)

Anonymous Coward | more than 10 years ago | (#8213922)

Bb is to the left.

Re:How C# was made (0)

Anonymous Coward | more than 10 years ago | (#8213988)

Db, dude... Bb is a completely different thing.

Re:How C# was made (2, Funny)

jhines (82154) | more than 10 years ago | (#8213879)

It sounds better than D-Flat, at least to the marketing droids.

I guess I was wrong (-1, Offtopic)

1000101 (584896) | more than 10 years ago | (#8213806)

So C# wasn't made by witches using:

1/4 cup lard
1/2 tsp clove oil
1 tsp ash
1/4 tsp. dried cinquefoil
1/4 tsp. dried mugwort
1/4 tsp. dried thistle
1/4 dried vervain
1/2 tsp. benzoin tincture

Back of the bus (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213824)

Old ladies just wanna get around town
They don't want to sit next to something brown
You're vile, disgusting, revolting and black
So keep walking, nigger, and get in the back

Back of the bus, back of the bus - we don't want you to sit near us

That stupid fucking chimp Rosa Parks was a cunt
That brain-damaged monkey tried to sit in the front
She forgot that she was from an inferior class
If she was here now I'd kick her primate ass

Back of the bus, back of the bus - we don't want you to sit near us

You stupid fucking ugly nigger piece of shit
You'd better find yourself another place to sit
When you get on the bus you'd better walk by
'Cause if you sit in the front you're gonna die

Back of the bus, back of the bus - we don't want you to sit near us

Way to go brother... white power (and anal sex)! (-1, Offtopic)

Anonymous Coward | more than 10 years ago | (#8213882)

I'm generally not attracted to men, but my God something about Hitler just drives me absolutely batty! That dramatic sweep of hair across his brow, like he just tossed his head and there it fell, a cascade of black like the velvet curtain of night. I want him to take me on the hood of a King Tiger, its 1400 horsepower engine revving as he violates the virginal secrets of my Eagle's Nest.

I picture it like those glorious mass rallies the Nazis used to have. There he is lovingly pounding away at my second front while legions of goose-stepping Aryans march past and salute our union. Just as Hitler is about to empty his tiny ubermenschen into the expanse of my Liebe-raum a wing of Stukas will fly overhead, their sirens howling in synchronicity with the primal cries of pleasure from Der Fuehrer.

My god, what a man!

C# got made? (1)

October_30th (531777) | more than 10 years ago | (#8213832)

So what exactly did C# to get made?

does c# matter to any one (0, Troll)

earthstar (748263) | more than 10 years ago | (#8213836)

so whats the big deal about c# ,huh? is it really useful for anything at all?

Re:does c# matter to any one (3, Interesting)

Sabalon (1684) | more than 10 years ago | (#8213905)

C# may not be that great compared to C++ or Java. But what .net provides is pretty nice.

My officemate wrote a function in vb.net on a Windows box, running via ASP.NET/IIS/Win2k. I wrote a small little C# program on my Linux box that calls the procedure on the windows box. It looks something like this:
result=addup(2,5);
with 7 being put in result. Nice and simple. Could have easily been something to add a user to a box...or I could reimplement the same function on my Linux box to add a user there and he could call it from an vb script.

It does a great job of providing cross platform calls without adding tons of overhead or a lengthy API...the libraries do all the setup/teardown instead of the programmer, and it is a lot cleaner than parsing html output.

It may not be perfect, but I'm just sporting a woody because I finally somewhat understand what the hell the nebulous .net is partially supposed to be...all thanks to Mono.

Re:does c# matter to any one (1)

aled (228417) | more than 10 years ago | (#8214000)

I fail to see why is your example so great. It could be easily implemented in Java before .Net existed.

Sun Should Embrace and Extend (5, Insightful)

gurustu (542259) | more than 10 years ago | (#8213876)

It's very easy for Java devs (and I'm one) to sneer at C# as just another MS ploy to lure people away from quality, but I think that there's no question that C# has some language features that should be migrated into Java.

It's well known that the C# designers paid a lot of attention to Java, but more importantly, it's also quite clear that they also spent a lot of time paying attention to the experience of developing in Java.

So while I might not entirely agree with the uncaught exceptions or the way methods aren't virtual by default, I do think it would be a good idea for Sun to take the lesson from MS, and take what is best about C# and move it into Java.

Re:Sun Should Embrace and Extend (3, Informative)

JohnnyCannuk (19863) | more than 10 years ago | (#8213966)

...uhmm

Go here [sun.com] and when you done, go here [sun.com] and get it.

When you are done playing, come back and see if your post makes sense.

Re:Sun Should Embrace and Extend (5, Insightful)

gurustu (542259) | more than 10 years ago | (#8214047)

I've been following the 1.5 release pretty closely for a while now, and it has some excellent additions. I'm especially pleased with the generics, the enumerated constants, the ability to define a method as accepting an undefined number of parameters, and the improved monitoring. The amount of code I'll be able to remove from my codebase will be large.

However, that doesn't invalidate what I said initially. 1.5 isn't a response to C# (well, maybe the enumerated types are), but seems to be kind of orthogonal to C#. It is a distinct improvement to the language, but that isn't the same thing as "embrace and extend". Those improvements don't give Java evangelists the ability to say "The C# language has no good feature that Java doesn't."

I'm also making an argument about intellectual honesty. Java (like any other piece of software) will never flower into its full potential unless the people who believe in it are willing to acknowledge the strengths of its competitors, and then adopt those strengths where it can.

It isn't a sign of weakness to do that, but a sign of strength.

Re:Sun Should Embrace and Extend (0)

Anonymous Coward | more than 10 years ago | (#8214080)

Oh boy, one more VM for me to tell the developers that NO, they can't use it to develop, because we're still shipping the application under 1.4.1_p2.

Re:Sun Should Embrace and Extend (2, Interesting)

aled (228417) | more than 10 years ago | (#8214020)

Of all the features that C# has the only I would like to see in Java is explicit override. Fortunately there is a proposal for incorporating that with the metadata support in 1.5. The other features I want off of my projects.

Re:Sun Should Embrace and Extend (0)

Anonymous Coward | more than 10 years ago | (#8214042)

"but I think that there's no question that C# has some language features that should be migrated into Java"

Ummm, *cough* foreach statements, Java 1.5 *cough*

well? (0)

Anonymous Coward | more than 10 years ago | (#8213888)

C#. What's it all about? Is it good or is it whack?

Why do big companies want pseudo-compiled langs? (3, Insightful)

Futurepower(R) (558542) | more than 10 years ago | (#8213898)


It seems to me that big companies like Sun and Microsoft like pseudo-compiled languages like Java and those in .NET like C# for two reasons:

1) Pseudo-compiled languages are easily decompiled. If a small competitor writes an especially useful program, it is easy to see the logic by just decompiling the source code. In business programming, the business systems logic can be EXTREMELY complicated. It's easier to copy it from a competitor who has proven success. See these links for information about decompilation. Of course, the best methods of decompilation are not made public:

.NET Decompilers [program-tr...mation.org]

Java Decompilers [program-tr...mation.org]

A friend wrote this:

"I regularly use decompilers for Java classes. The last library I decompiled is TupleSpace from IBM, a library for network communication (useful if doing clustering). The result was of a shocking clarity. :) Thank you IBM.

"That was especially easy because the code had few local variables (in the bytecode, local variables have an identifier that is a number) and no obfuscation."

2) Pseudo-compiled languages are slower. That raises the cost of hardware. Sun makes most of its money from selling hardware. Slower software requires more expensive hardware. Microsoft makes most of its money selling operating systems. The customers most important to Microsoft are not you and I. Microsoft's important customers are the systems builders like Dell and HP. Systems builders want slow software so they can sell more hardware. Microsoft wants slow software so people buy more systems and therefore more operating systems licenses.

Because pseudo-compiled languages are better.. (2, Insightful)

leerpm (570963) | more than 10 years ago | (#8213986)

In many cases, pseudo-compiled languages, or languages that use a VM are a better choice. No worrying about memory management, buffer overflows, etc.

There will always be a place for C and C++ in places where you *NEED* low-level control over things like memory management, or where performance is very critical. But for most applications, this is simply not the case. You want a language that can do all you need it to do, and you don't want to worry about the rest of the details. Java and C#/.Net are the next big thing in commercial programming. But they certainly won't be the last. There will be another language that is better in 10 years from now. But right now it is a good thing that we have two choices, instead of one. Competition is a *good* thing.

Re:Why do big companies want pseudo-compiled langs (2, Insightful)

sik0fewl (561285) | more than 10 years ago | (#8214001)

Well, pseudo-compiled languages is hardly a "big company" thing. Look at Python for instance. It's all over the place (in the open source world).

Re:Why do big companies want pseudo-compiled langs (2, Insightful)

tcopeland (32225) | more than 10 years ago | (#8214037)

> it is easy to see the logic by just
> decompiling the source code.

You mean bytecode, probably.

> the business systems logic can be
> EXTREMELY complicated

If it's that complicated, having a bunch of decompiled source code is not going to be that useful. You're better off programming it yourself so you understand it and can change it when you need to.

> Pseudo-compiled languages are slower.

But not _much_ slower. A $3K dual CPU Linux server can serve up a lot of Tomcat hits. Need more? Buy a load-balancer and a few more servers. Not a big deal.

Re:Why do big companies want pseudo-compiled langs (2, Interesting)

aled (228417) | more than 10 years ago | (#8214046)

That's the biggest FUD I have seem so far. Your talking about "pseudocompiled" makes me think you don't know how either language really works.
OTOH I agree that both are relative simple to decompile.
The speed will depend of your particular use, but in some cases programs in Java are faster than C programs.

Re:Why do big companies want pseudo-compiled langs (0)

Anonymous Coward | more than 10 years ago | (#8214113)

And yet, open source is even EASIER to read, and MS isn't real keen on that. If they're going to do something somewhat unethical, you'd figure they'd like to get comments along with it.

And gee, yes, Pseudo-compiled languages are generally slower, and yet often less prone to memory problems, and more portable, and oh wait, I'm responding to dork conspiracy nut who got modded up to +3 by a bunch of other people who the more and more I read about their anger with MS, the more I think it has a good deal to do with jealousy that they didn't get to apply the screws first and make the big billions.

Anders leaving Borland - a blessing in disguise ? (2, Interesting)

gmania (687303) | more than 10 years ago | (#8213907)

Having used TP and DelpiI was kind of disappointed to see Anders join Microsoft a few years back. But now behold .... Delphi 8 adopts quite nicely to .net and is actually giving Borland a new lease on life and delivering where Kylix couldn't.

Having used both java and delphi I allways missed some sort of generics. I found Anders thoughts [artima.com] to be quite interesting. Question: is it possible to change the java generics-implementation in such a way that it would loose the limitations mentioned (and changing the JVM in the process offcourse)?

Re:Anders leaving Borland - a blessing in disguise (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213953)

Perhaps you should read this [artima.com] article. It just might change your mind.

Re:Anders leaving Borland - a blessing in disguise (1, Offtopic)

superangrybrit (600375) | more than 10 years ago | (#8213974)

The status bar foils your plot to get users to the tubgirl pic. Better luck next time. ;)

Facinating! (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213916)

A clone of the industry standard server-side language Java designed to lock you into the products of an aging monopoly.

Yeah, that's what I want to spend my Saturday reading about...

VB for C programmers (-1, Troll)

Anonymous Coward | more than 10 years ago | (#8213942)

C# is VB for C progammers who won't do VB. The only thing C like about C# is the fact that it is called C#.

Checked Exceptions (4, Informative)

po8 (187055) | more than 10 years ago | (#8213951)

Actually, Java supports both checked and unchecked throwables: the latter with the class Error. My programming style is to make throws that I don't expect to be "routinely" caught throw Errors rather than Exceptions. An Error can still be caught, but since you don't expect it, you needn't declare it.

The checked exceptions are still useful for the case where it would probably be a bug not to handle the exception, e.g. "search found no element" or "file not found". The reason for the two kinds of throwables is exactly this: you don't want to declare that every method doing division throws DivideByZero. Unfortunately, the Java library designers don't seem to have gotten it, and so there's a bunch of things like IOException that IMHO should have been Errors.

Re:Checked Exceptions (2, Interesting)

AndyS (655) | more than 10 years ago | (#8214127)

I think you probably want RuntimeException rather than Error - error is meant to be things like 'OutOfMemory' or 'LinkingError'

NullPointerException is a runtime exception for example, and so is ClassCastException.

If you want to squash IOExceptions then just wrap them in RuntimeExceptions - ie

try {
blah;
} catch(IOException ioe) { throw new RuntimeException(ioe); }

- but I'd wager that there might well be some remedial action you can take other than this.

There are cases that go the other way - for example, Integer.parseInt() raises a RuntimeException when it should actually be a checked exception. I think there's a fairly pitched battle about this at Sun.

They stole it from SCO (0)

Anonymous Coward | more than 10 years ago | (#8213963)

Just wait. SCO is going to add this to their suit also. In not less than a week.

(Yes, I know, the suit is against IBM. Please don't tell SCO...)

I'm sorry (-1, Flamebait)

geekoid (135745) | more than 10 years ago | (#8213969)

but any language that allows the goto statement is crap. Plus I can't just drop into the next item in a case statement.

It's like the made c++ for dummies. only more proprietary.

recipe (0)

Anonymous Coward | more than 10 years ago | (#8214041)

4 bats
2 mole eyes
25 spider eggs
6 left arms from virgins
1 ripped of letter from another language

Nice language, bad motives (2, Insightful)

E.S Taog (594473) | more than 10 years ago | (#8214062)

why trust your development to a language designed to lock you in to Windows? C#, for all its niceities is just a way of getting you to buy more Windows 2003 Server licenses.

C#? (0)

Anonymous Coward | more than 10 years ago | (#8214097)

What's this now? OSNews?

Talk about slow days...
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>