ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Where did you get those outdated statistics? And then the client JVM rather than the 64 bit server that the typical java application of any importance would use. Here is something a little more up to date: http://shootout.alioth.debian.org/u64q/java.php
Do you see the trend hinted at the article from CERN? Each new version of java is faster than the previous one.
Java has superseded C, C++, Fortran, Cobol and the likes in many areas. C is slowly becoming a niche programming language while Java is now amongst the general purpose ones.
Really? How many applications on the average desktop (Linux, Windows, OS X) are written in Java?
Distribution: Solaris 11.4, Oracle Linux, Mint, Debian/WSL
Posts: 9,789
Rep:
You are right, there are not enough Java apps on the desktop yet
Anyway, I believe we are discussing trends in the programming freelance market. In my experience, the larger part of this market is about server side development, not desktop.
There are fanatics of any programming language or even programming concept. At one time Pascal was the king of languages and all other computer languages will be forgotten in only a few years. Yeah - and where's Pascal now?
According to the link given by jay73, post 12 Pascal is 16th and Delphi (based on Pascal) is 8th. Pascal had two great things going for it. A single pass compiler and it was designed to teach good programming principles. Principles adapt to the environment, and hardware gets more powerful, so it is only natural for a language to fall out of vogue but good languages will always remain good languages.
According to the link given by jay73, post 12 Pascal is 16th and Delphi (based on Pascal) is 8th. Pascal had two great things going for it. A single pass compiler and it was designed to teach good programming principles. Principles adapt to the environment, and hardware gets more powerful, so it is only natural for a language to fall out of vogue but good languages will always remain good languages.
Pascal is definitely a good language to start from (not "C").
And there were other good languages by the same author - Modula, Oberon.
Pascal is definitely a good language to start from (not "C").
And there were other good languages by the same author - Modula, Oberon.
I discovered the joys of pointers when I learned Pascal. It was my first really pleasant learning experience after having learned Fortran, VAX/VMS, and dabbled in Basic (I disliked Basic from the get-go and that perception, right or wrong, has persisted).
When I picked up C, the similarities to Pascal made that learning process quite easy. I quickly discovered that I felt C was a more elegant language that it gave me more freedom to express data structures and algorithms with less constraint. The strict type checking in Pascal was largely responsible for that impression, though there are other factors.
All that being said, I'm not quite sure I agree that Pascal is a good starting place for developers today. Pascal isn't dead, but it is circling the drain, in my opinion. Unless one has an unlimited amount of time to go through the same sort of learning curve that I experienced, I think I would recommend C over Pascal as a foundation language.
At various times, I've also needed to use C#, Java, Perl, SQL, PIC/AREV, and most of the various shell and web scripting languages, and more.
My bread and butter continues to be C and to a slightly lesser extent, C++, but both are major components of every project I undertake.
From a simple preference perspective, I get the most satisfaction and enjoyment working with C and C++, and with Bourne type shells. I may well be a dinosaur of sorts, but I'm not worried about extinction.
I'm struggling a bit with C#. The similarities to COM are causing my brain to rebel, and I've had to fight to overcome my own prejudices. My perception may change with more time, I'm not giving up on it quite yet.
I discovered the joys of pointers when I learned Pascal. It was my first really pleasant learning experience after having learned Fortran, VAX/VMS, and dabbled in Basic (I disliked Basic from the get-go and that perception, right or wrong, has persisted).
When I picked up C, the similarities to Pascal made that learning process quite easy. I quickly discovered that I felt C was a more elegant language that it gave me more freedom to express data structures and algorithms with less constraint. The strict type checking in Pascal was largely responsible for that impression, though there are other factors.
All that being said, I'm not quite sure I agree that Pascal is a good starting place for developers today. Pascal isn't dead, but it is circling the drain, in my opinion. Unless one has an unlimited amount of time to go through the same sort of learning curve that I experienced, I think I would recommend C over Pascal as a foundation language.
At various times, I've also needed to use C#, Java, Perl, SQL, PIC/AREV, and most of the various shell and web scripting languages, and more.
My bread and butter continues to be C and to a slightly lesser extent, C++, but both are major components of every project I undertake.
From a simple preference perspective, I get the most satisfaction and enjoyment working with C and C++, and with Bourne type shells. I may well be a dinosaur of sorts, but I'm not worried about extinction.
I'm struggling a bit with C#. The similarities to COM are causing my brain to rebel, and I've had to fight to overcome my own prejudices. My perception may change with more time, I'm not giving up on it quite yet.
Well, I am old enough to have experience in Algol-60, Fortran-IV, Pascal, Modula, C/C++ Perl, Verilog, TCL.
My point was that Pascal gives you decent manners and respect for type strictness, as well as clarity.
In practical terms I mostly work in Perl + C.
I dislike Java because it requires too much writing and because of, again, lack of closures (have heard they are about to introduce them) and poor scoping rules. Also because of poor efficiency, though people are claiming it's been improving lately.
Having taught Pascal, C and Java at various times as a first language to various undergraduate students, my teaching preference is still Pascal. But then again I'm approaching it from a quite different angle, primarily I wanted students to respect their code not make money out of it, believing (maybe idealistically) that once well grounded in their profession the way to make a living will sort itself out.
Having taught Pascal, C and Java at various times as a first language to various undergraduate students, my teaching preference is still Pascal. But then again I'm approaching it from a quite different angle, primarily I wanted students to respect their code not make money out of it, believing (maybe idealistically) that once well grounded in their profession the way to make a living will sort itself out.
Exactly my point - you can also call it "teaching students clean/clear and good coding manners".
Hey, at least you're not one of these guys.
I learned Java first and then C, and I like C a whole lot more than Java. Ever since I learned LC-3 assembly, C makes a whole lot more sense.
I have a different perspective, that of an employer. I live and work in a college town and I've hired a fair amount of freshly-graduated interns, and I've kept some of them.
In this area, the University has stressed Java so much that most of the applicants I interview are surprised to learn that we expect them to know C and, more importantly, the standard C library.
I haven't taught at the University level, I've only coached and educated those interns in a real-world environment. Many a time, I've wished that educators would do the same.
I don't profess to understand the rationale of teaching languages that employers are not looking for, but I do acknowledge the trend.
As for C vs. Pascal as a teaching tool... experience is best, in my opinion. I won't call Pascal a nanny language but C, as people say of the sea, isn't inherently dangerous but quite unforgiving of mistakes. That, too, instills good coding techniques quite rapidly.
Then again, people who don't know what they're doing just shouldn't be programming rather than searching for a "programming language for idiots".
Very good point, but you definitely don't have to be worth anything as a programmer to graduate with a CS degree. Or to be a professor of CS, for that matter.
ta0kira
When teaching you need to squeeze as much as you can into the boundaries of a semester, Pascal works quite well in that regard to get students up and going, experience takes a little longer.
The artificial time limits of the academic year goes a long way to explain why Java is so popular (because so many corners are cut).
The last teaching job I had I was chairing a working group that designed a four year computer science degree. Which language to use as the starting language was probably the most contentious issue. Now I'm trying to make a living with the occasional contract, and when I get a programming job it's typically PHP that helps to support the bank balance the most. For fun I use C++
This is great for a newbie at programming; the whole discussion.
I told my friends that I am staying with C as a first language. Been at it for 2 months and now silently it shows its power.
I'm still taking toddler steps, but somehow I can imagine what may be done with C, all sorts of programs that spring up even though they are like mirages of code that I cannot yet write!
That may be silly but its true to my experience, I'm damn excited.
But, I wonder if you guys can give me examples of problems solved in the real world with C? I'm sort of getting what it can do, but I cannot imagine what problems spring up that are solved in the industry with C other than device drivers and kernel development.
Can anyone offer examples of small client problems solved in C??
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.