Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Microsoft Programming IT Technology

C# 2.0 Spec Released 634

An anonymous reader writes "Microsoft released the design specifications document for C# 2.0 (codenamed 'Whidbey') to be released early next year. New features of the language include generics similar to those found in Eiffel and Ada, anonymous methods similar to lambda functions in Lisp, iterators, and partial types."
This discussion has been archived. No new comments can be posted.

C# 2.0 Spec Released

Comments Filter:
  • by wjsteele ( 255130 ) on Saturday October 25, 2003 @10:08PM (#7311452)
    You can already develop in C# for Office with Visual Studio Tools for Office.

    Bill
  • by Pflipp ( 130638 ) on Saturday October 25, 2003 @10:09PM (#7311457)
    OK so I'm in the position of having to write an emergency support application for a M$-based system in a M$-based environment. Stuck in there. Completely. Been requested to make a maintainable, manageable solution. And yes, this is to say "make it for M$, with M$ tools as much as you can".

    I guess even within these circumstances, I'd have refused to open Visual Studio for this project, if it didn't say ".NET" as well. I mean, think of it: previous versions of VS only supported C++ or VB, with APIs to cry for (admittedly, I don't know about MFC, only about Win32).

    I actually happen to dislike C++, but on top of that, it doesn't suit my project, because the low-levelness makes it harder to program without errors (e.g. null pointers, memory leaking). I'd rather have a language at a scripting level -- and NO, that's NOT VB. I hope I don't have to explain why I hate VB if only on very first sight.

    So with .NET, M$ introduced a quite nice API and Java language (come on, where are the real differences) into Visual Studio, which at least saved my day; I had found an acceptable programming environment for within Windows..!

    There's really no need for anybody to pick on C#, long as it's realized that it's just finally a nice programming environment for Windows, and nothing (well, not much) more. (BTW, it's not much different from NeXT (now Apple)'s use/ takeover of Objective C.)
  • by Jeremy Erwin ( 2054 ) on Saturday October 25, 2003 @10:34PM (#7311615) Journal
    I still find it vaguely amusing that Microsoft released a product which cannot be properly displayed in the Latin-1 character set,
    The octothorpe symbol, '#', has slanted vertical strokes. The "sharp" sign has slanted horizontal strokes.
  • by truth_revealed ( 593493 ) on Sunday October 26, 2003 @01:17AM (#7312207)
    From the C# 2.0 spec:

    "When an instance of Stack<int> is created, the native storage of the items array is an int[] rather than object[], providing substantial storage efficiency compared to the non-generic Stack. Likewise, the Push and Pop methods of a Stack<int> operate on int values, making it a compile-time error to push values of other types onto the stack, and eliminating the need to explicitly cast values back to their original type when they're retrieved."

    Java uses Object boxing for built-in types in their generics implementation.
  • by penguin7of9 ( 697383 ) on Sunday October 26, 2003 @01:24AM (#7312240)
    If only it was cross platform from the word go. Mono's nice, but the MSVS IDE is what keeps Microsoft/Windows up and above Linux as far as ease of development goes.

    For some people, perhaps. I find the MS development tools so nauseatingly bad that they are one of the main reasons that I don't do anything with Windows.

    Fortunately, on Linux you get a choice: excellent command line tools and IDEs. On Windows, unfortunately, you don't: Windows command line tools simply are completely useless.
  • by SHEENmaster ( 581283 ) <travis@utk. e d u> on Sunday October 26, 2003 @01:38AM (#7312299) Homepage Journal
    It's Sea Octalthorpe. I would've called it ++C, but that implies that something is actually more advanced than C.

    Honestly why should one bother? It's neither portable nor natively executable. It's neither scalable to embedded systems nor to high-end servers. It has neither legacy code nor a bright future.

    Mono is a good start, but M$ will fight it when it starts to show results. .NET's pupose is not to allow Windows software to run on other platforms, but rather to help M$ capture more platforms. It's doomed from the beginning, and will be another forgotten buzzword within a few years.

    I like Java, I like C, and I like C++. Each of them rock and suck in different ways.
  • Re:booooring (Score:4, Interesting)

    by penguin7of9 ( 697383 ) on Sunday October 26, 2003 @01:40AM (#7312310)
    Java announced Generics months ago. In all, it seems like the java stuff is more exciting, although the lambda-like stuff in C# seems interesting.

    Java generics are broken because they don't guarantee type safety across compilation units. That requires VM changes, changes that Microsoft was willing to make but Sun wasn't.

    Java is more and more turning into an accumulation of evil kludges. Instead of type-safe generics, we got a hack. Instead of lexical closures, we got nested classes. Instead of structs, we got some half-hearted promise of optimization under some nebulous set of circumstances that can't work in general. Instead of multidimensional arrays, we got some classes with a horrendous syntax that, on some theoretical JIT, might actually run faster than a snail.

    I don't know whether C# will grow up into a well-designed general purpose programming language, but it is crystal clear that Java has missed the boat.
  • by pHDNgell ( 410691 ) on Sunday October 26, 2003 @04:33AM (#7312707)
    Not as many third party specifications to learn. I remember having to learn Struts, Ant, Tomcat, and then Sophia after learning JSP - what a pain in the ass.

    You would consider it a feature that there aren't third-party tools to improve development and deployment?

    I have no idea what Sophia is, but I used java for a long time before hearing of struts and ant (you know, you can use Make with java). Struts takes the generic specs and makes things a lot better. They're both optional. Like many other misguided souls, I've written apps completely in jsp as well.

    Third-party options that fit into standards, make things better, but are not required are an advantage, not a disadvantage.
  • by Zo0ok ( 209803 ) on Sunday October 26, 2003 @05:19AM (#7312803) Homepage
    Ok, this is actually a .NET issue, not really a c# issue.

    StandardInput and StandardOutput, in .NET, are text based streams, made up of 16-bit chars. When writing a (16-bit) char to StandardOutput it is converted to something else (UTF-8, maybe).

    Piping binary data from one app to another is a very non-trivial task.

    These are the small "features" that make c# unsuitable for anyone "thinking UNIX". Of course piping through stdout/stdin is not needed: you can use remoting, sockets or whatever - but those make easy things hard.

    Anyone who has written a c# program that uses stdin/stdout for binary data?

    BTW, you definately does not need Visual Studio to program .NET, vim + .NET framework and the online MSDN reference is completely sufficient.
  • by bani ( 467531 ) on Sunday October 26, 2003 @07:33AM (#7313061)
    do you *really* think this design was an accident?

An Ada exception is when a routine gets in trouble and says 'Beam me up, Scotty'.

Working...