J
Jon Harrop
If Microsoft turn F# into a product and place it alongside C# and VB, will
many people migrate from C# to F#?
many people migrate from C# to F#?
If Microsoft turn F# into a product and place it alongside C# and VB, will
many people migrate from C# to F#?
Jon said:If Microsoft turn F# into a product and place it alongside C# and VB, will
many people migrate from C# to F#?
Tom said:I agree with Jon Skeet, I don't see a mass switch to a new language. I
now have a heavy investment in C#, which meets the needs of the types of
programs that I write (also holds true for the company that I work for).
I could see adding F# to our library and using it where it makes
sense, but I don't see a complete switch to writing everything new
exclusively in F#.
I could see adding F# to our library and using it where it makes
Yes, that's pretty much what I would predict. Legacy code written in C# will
almost certainly linger indefinitely but C# itself has so much momentum
that people will continue to program in it regardless of what else comes
out. I believe all mainstream languages have shown this to be true, often
to a surprising extent (e.g. Fortran).
On a related note, is there much cross-over between C# programmers and VB
programmers? Is C# displacing VB or vice-versa?
Jon said:If Microsoft turn F# into a product and place it alongside C# and VB, will
many people migrate from C# to F#?
Jon said:Even if users don't migrate their code from C# to a new language they might
still learn a new language and write at least some of their code in it.
On a related note, is there much cross-over between C# programmers and VB
programmers? Is C# displacing VB or vice-versa?
Arne said:I can not imagine ML suddenly becoming popular (outside
of computer science classes).
Arne said:Very few companies will be interested in developing some of their
stuff in a rare language.
It needs very good justification.
My impression:
- not many switching from VB.NET to C# or the other way around
- about 2/3 of VB6/VBS people switching to C# and only 1/3 switching
to VB.NET
Jon said:These are the same companies that moved to the fledgling C# language?
Yes. What justified a migration to C# when it was first released?
Interesting, thanks. May I ask a different but related question: what
proportion of C#/VB programs interoperate with VB/C# programs? i.e. how
much is the common language run-time actually leveraged?
I find the CLR an interesting idea because there is no equivalent for the
other major platforms. My personal opinion is that its main benefit is in
making it easier for Microsoft to implement new languages for their
platform, rather than to ease the interoperability between different
languages that sit on top of the CLR (which is how it is often portrayed).
Jon said:Well, we have specialized in the industrial use of ML for the past three
years. Our client database shows customers in 32 countries spanning 6
continents, from startups to bluechip companies using ML for everything
from cancer research to aerospace engineering. So I can give a lot of hard
evidence to the contrary:
Microsoft already use ML to handle advertising on live.com (a billion dollar
market), for XBox player analysis, for driver verification and for many
internal projects. All of these projects are now either using or migrating
to F#. Intel already use ML for hardware verification. Several other major
players are among our customers, including Canon, Apple, Boeing, Philips,
Nokia, Lockheed-Martin and Sun Microsystems.
There are also many medium-size companies using it, like Wolfram Research
(the creators of Mathematica), MathWorks (the creators of Matlab) and
XenSource (recently sold for $500M).
But ML is particularly common among startups composed of talented
programmers because choosing a modern language gives them an edge over the
competition. Dozens of startups are among our customers.
While C# looks common, its use in industry extends little beyond web
programming. So I would say that use of ML is already far more widespread
and F# can only broaden its use.
Arne said:Go to dice.com or another big job site and search for languages.
Dice.com now:
C# 7888 jobs
F# 1 job (OCAML finds 2, ML finds 50 but most of them are not this ML)
And belive me C# is used a lot beyond web apps.
Jon said:There are a dozen OCaml jobs within a mile of where I'm sitting, so that
clearly reflects upon "big job sites" and says nothing of how domain
specific C# currently is.
Not according to the page you just cited:
C# jobs in last 30 days: 7481 hits
web xml asp: 5680 hits
sql ado: 5401 hits
So 72% web- and 68% database-related job offers.
This concurs with Google hits:
C#: 67M hits
C# web OR xml OR asp: 50M hits
C# sql OR ado: 12M hits
That's 75% web- and 18% database-related information.
So C# is clearly not in widespread use.
The lack of libraries for C# outside web/database programming is a vicious
circle because people are highly unlikely to start using a language if they
must write everything from scratch themselves. So technical users will
choose languages that provide at least a basic level of functionality, like
a complex number implementation. C and OCaml are among the languages with
complex number implementations in their standard libraries.
Noone claims that a job site has all jobs, but I see no reason to
why the C#/OCAML ratio should be different in th etotal than at a
big job site.
????
Neither ASP or ADO has anything to do with .NET.
ASP.NET and ADO.NET has something to do with .NET.
And there may be lots of ASP.NET and ADO.NET jobs
that does not involve C#.
So it seems as if you have searched on the wrong terms
and applied false logic on the irrelevant numbers.
More or less the same as above applies.
I repeat: C# is widely used outside of ASP.NET.
And I don't think the complex support in C is that good.
Arne
Arne said:Noone claims that a job site has all jobs, but I see no reason to
why the C#/OCAML ratio should be different in th etotal than at a
big job site.
????
Neither ASP or ADO has anything to do with .NET.
ASP.NET and ADO.NET has something to do with .NET.
And there may be lots of ASP.NET and ADO.NET jobs
that does not involve C#.
So it seems as if you have searched on the wrong terms
and applied false logic on the irrelevant numbers.
More or less the same as above applies.
I repeat: C# is widely used outside of ASP.NET.
And I don't think the complex support in C is that good.
While C# looks common, its use in industry extends little beyond web
programming. So I would say that use of ML is already far more widespread
and F# can only broaden its use.
Jon said:Just to clarify, are you seriously contending that there is more ML
development going on than C# development?
Jon Harrop said:My hypothesis is that C#'s use is very domain specific whereas ML is not. I
know that ML is not because I've been involved with such a broad range of
applications written in ML. I don't know about C# but everything I find
suggests that its use is web programming first, database programming second
and windows application programming a distant third with very little else.
That is not a surprising result because Microsoft would have identified
those domains as lucrative and built C# (well, the whole of .NET) to make
money from them.
Perhaps this is an unfair comparison because C# is a new language but ML is
a family of languages with a legacy dating back over 30 years. Even OCaml
is 11 years old now.
I'm certainly interested in the prospect of using .NET languages like C# for
technical computing but C# is currently the obscure language in that arena.
However, I think Microsoft would have to do relatively little work to make
C# much more attractive for technical users.
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.