What do you think about C#? Does anybody here have any experience with it?
Since I read Slashdot, I got the impression that it was a demon language Microsoft created to choke the entire universe in a sticky net of DRM and fail, but recently I've been looking at it and it actually looks pretty nice.
While Perl, PHP, Python, and Ruby all have no specification, C# has been standardized by Ecma International and ISO/IEC.
C# > Java in my experience, but as with all languages, whether or not it's "good" depends entirely on the problem domain.
I do generally find it easier to get simpler things done more quickly in C# than in C++. I don't find it significantly quicker than C++ for more complicated tasks, though, and working in poorly typed APIs (like legacy code @work) can be more of a pain.
I use it at work about 50% of the time. The rest I spend in Perl.
C# as a language isn't actually that bad. Its about on par with Java in terms of features and such. However, in order to use it you have to strap in with a copy of Visual Studio - the shortbus IDE. Some of the fun I have had with this POS application :
1. The first release of 2005 wants the BIN folder of all webservices under source control. Yes, thats right - you check DLLs into source control. About a year later, Microsoft finally got a service pack out there ... really caring about their customers there ...
2. Refactoring requires building. The IDE doesn't really know how to read the source code in any real degree - it builds the DLLs then relies on the PDB files to figure out where the binary comes from in your code. Lets just say this makes refactoring quite tedious.
3. No CVS support. You are stuck with VSS (kill me), or have to pony up for the ungodly expensive Team Edition Server. The only other options are a handful of partially functional third party plugins, and separate source control plugins.
4. Resource hog. It easily eats up twice as much memory as Eclipse, even when I have multiple languages going. Eating up more memory than a Java app is darn difficult, but Visual Studio manages to do it.
5. Automatic project editing. If visual studio detects that you have a different version of a DLL on your box, it will automatically check out the project and change the reference to that DLL. This might be acceptable if you are working alone, but when you have a large team with each member working on many projects, it basically means you have the IDE always checking crap in and out.
Theres more, but lets just say that the development environment sucks and leave it at that.
Have you tried Visual C# Express Edition, SharpDevelop, or MonoDevelop? I don't know if they're any good, but C# doesn't absolutely *have* to be used with Visual Studio.
I won't argue about VSS being severely broken, but I can say that I've been using VS2k5 extensively since beta, and I haven't had it checking binaries into source control. Was that some webservice-specific bug?
Name:
Anonymous2007-02-15 1:27
>>10
C# express is pretty good. It produces very well-organized and non-confusin output directories ETC... by default.
Yeah - it only affected webservice bin directories. Not exactly sure why, but it could be because microsoft was rolling out some shiny new web development studio right around then ... just maybe ...
The bug was found in Beta 2, and actually made it to production. Can't find the MSDN bug entry for it at the moment, but I have the link hanging around somewhere. Never buy a first cut Microsoft product ...
I have tried the Express versions at home. They are just stripped down versions of the full thing (we run Pro at work) with the same issues, just fewer useful tools. The remaining two I have heard of, but not used. A colleage has used them, and advises us to stay away for the time being. They are reasonably mature, but nowhere near mature enough for a professional setting.
I hear rumors of the JetBrains guys doing a .Net IDE - that would be godly. Their plugin (resharper) helps take the bite off of Visual Studio already.
The VB.NET editor is better. The language itself is made of FAIL and bad syntax. Lack of line terminating characters is annoying. Nearly all languages, programming or not, end their statements with a terminating character. This allows you to put several statements on one line, and also provides a nice mental terminating point.
Name:
Anonymous2007-02-16 4:25
>>9
"No CVS support. You are stuck with VSS (kill me), ..."
I resorted to installing subversion on my XP box.
Even shelling to a command prompt to checkin/out beats Source"Safe"
>>1
I'm just now getting around to learning it since I've spent all my time since 2000 coding Linux-specific stuff.
I haven't done anything major with it yet but it seems a rather nice little language. Surprising considering the source.
Indeed. Totally counter-intuitive when compared with pretty much every other language on the planet. Not just programming languages - real languages too. Human brains read best when ideas are terminated with a character - it just makes sense.
Name:
Anonymous2007-02-20 5:08
>>1
C# is built on Java. It's based on shit. It tries to improve it, but out of shit, you can only get shit. Also, Python is standarized, GvR is the living standard. Also, nobody gives a fuck about standards.
>>19
You haven't got a fucking clue what you're talking about, dickface. Learn more about the subject before you flap your dick beaters on your keyboard again. Fucking dumbass.
Name:
Anonymous2007-02-20 14:46 ID:Wpd6FE2V
Also, nobody gives a fuck about standards.
Without a standard, you can't implement a competing compiler.
If no behavior is declared as undefined, less optimizations are available.
This is of course something users don't like when writing things, but hey.
>>50
Of course, it's just to stick it to >>41 who claimed it wasn't possible.
Name:
Anonymous2007-02-26 17:38 ID:C25Sp8v5
>>48
What language is that? I thought it was JavaScript, but Firefox wouldn't allow it without some parenthesis.
({'Long': function(){ alert(1); },
'Loong': function(){ alert(2); },
'Looong': function(){ alert(3); },
})[status]()
>>56
"out" is a keyword. So is "var". Have fun writing compilers.
Name:
Dschingis Khan2007-03-27 1:35 ID:Y0WD9vb+
>>20
Actually, he's right. That IS how human language works. Try reading something without punctuation coherently (check your spam box. Or /b/, for that matter). >>34
I can tell someone's never done AI work. What's more, it works fairly well as a high-level, portable language for general
application programming.
C# has some interesting ideas, but it's not a place to start, nor is it a place to finish. So yeah, it's a lot like Java, only even fewer people use it (or take it seriously).
Name:
Anonymous2007-03-27 11:06 ID:tuZU6y0C
>>56
Because it doesn't properly support functional programming.
I can tell someone's never done AI work. What's more, it works fairly well as a high-level, portable language for general
application programming.
ok, name one useful application written in common lisp.
and i have done AI work. actual useful AI work (in perl), not the mental masturbation you kids do with lisp.
Name:
Anonymous2007-06-21 13:49 ID:uDTBOywh
Heaven:
EXPERT PROGRAMMER
Name:
Anonymous2007-06-21 14:22 ID:9yDjdQad
>>1 While Perl, PHP, Python, and Ruby all have no specification, C# has been standardized by Ecma International and ISO/IEC.
Lol, somebody has been reading propaganda here. The fact Microsoft paid people who work at ISO/IEC and ECMA and Guido, Larry Wall and the others are poor doesn't mean anything. But contrary to what you think, these languages are standardized as well. For example, Python is standardized by the Python Software Foundation. There's a standard reference describing how any interpreter of Python should behave with all detail.
Being standardized by a famous group is one of the stupidest reasons to ever choose a language.
C# is just Java with less fail and a more or less fixed platform. Dynamic languages such as Python or Ruby feature things C# can only dream of, are truly portable, and are 5 to 8 times more productive when we're talking about real work getting done. They are also more expressive, and more comfortable and fun to use.
>>59 Actually, he's right. That IS how human language works. Try reading something without punctuation coherently (check your spam box. Or /b/, for that matter).
If you wrote no periods but used EOLs instead, it'd be almost as readable, only longer. Since in programming you don't do a; b; c; d; e;, there's no advantage of using statement terminators; EOLs are there anyways.
>>63
Ask Amazon.com or Google; vital parts of their systems are written in Common Lisp.
Reddit was originally written in Common Lisp (but later switched to Python).
Naughty Dog used an internal variant of Lisp to program the Jak and Daxter series. (I know, you asked for examples of Common Lisp usage, but I'm pulling these from the top of my head.)
Emacs is mostly its own variant of Lisp, with a C core for performance. (See above parenthetical.)
>>66
i wonder why reddit switched to python? probably because you can't do anything useful in common lisp.
games are not useful.
emacs is not useful.
scientific applications that suck so bad i end up writing my own instead are not useful.
Name:
Chris Hanssen2007-06-22 3:02 ID:994x7LZg
>>70
NO! You are not call me an python I am not any snake, ok? I has rights you know that? Even on the internets it is unfair that I should be calling an pedophile and fuckin admins are banned you REAL soon, ok? Then you wont be all cock hosey and fuckin real hard and mad and shit becoz you are gone from the sight and band forever.
Name:
Anonymous2007-06-22 4:19 ID:Y7i5+FtD
C# is Java plus some nice syntactic sugar. Plus, you get a much better interface to Win32 stuff vs C++ if that's your thing. Other than that, nothing to see here, move along.
"Emacs is undoubtedly the most powerful programmer's editor in existence."
-- Eric S. Raymond
"If you are a professional writer—i.e., if someone else is getting paid to worry about how your words are formatted and printed—emacs outshines all other editing software in approximately the same way that the noonday sun does the stars. It is not just bigger and brighter; it simply makes everything else vanish."
-- Neal Stephenson
>scientific applications that suck so bad i end up writing my own instead are not useful.
I don't know about that. Maxima is pretty fuckin' cool.
>>73
apparently you, eric s. raymond, and neal stephenson have never used nvi.
i've never used maxima, maybe i'll try it if i ever need to solve a problem that i can't solve with perl in less than 10 seconds.
Bringing /prog/ back to its people
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy