Re: Whats the best language to learn...

"gremnebulin" <peterdjones@xxxxxxxxx> wrote in message
On 18 Aug, 20:55, p...@xxxxxxxxxxxxxxxxx (Pascal J. Bourguignon)

For CS professionnaly, I'd advise scheme as a teaching language and
Common Lisp as a industry strong programming language.

What for everything? Database access? GUis? Device drivers?

personally, though CL is interesting, I would not consider it that general
purpose of a language.

so, I think for most industry uses, C or C++ is probably best (industry I
think is more leaning towards C++, wheras the Open-Source / Linux side of
things is much more biased towards C in general).

for some cases or industries (portable app development, ...), Java may be a
good option.

on many higher-end embedded platforms, Java is a much better option than C
or C++ given mostly the variety of differing architectures and OS's, where
Java apps can be ported with little effort, but C or C++ may require special
compilers and the use of proprietary APIs for each platform, and also given
that many of these platforms are natively targetted in Java anyways (C or
C++ being used primarily as a system language).

for low-level development (kernels, drivers, ...), or lower-end embedded
systems, often C is about the only real practical option (well, that and

C#, although an interesting language, I don't really think is all that
practical at this point (apart from maybe developing apps on Windows or the
XBox), although as a personal bias, I would much rather use C# than Java
(but, if writing a compiler, would rather write one for Java given that it
is a simpler language). Mono and .GNU do, however, leave open the
possibility that C# will be a much more important language later on (maybe
competing to some extent with Java).

languages like Python and friends I doubt are good options for "industrial
strength" programming.

my personal ranking (in terms of likely greatest industrial utility):
C++, C, Java, C#
C++, Java, C, C#

or, in terms of personal preference:
C, C++, C#, Java

but, in terms of personal use:
C, C++, Java, C# (I have done minimal Java development and no C# that I can