GeneralThis forum is for non-technical general discussion which can include both Linux and non-Linux topics. Have fun!
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.
Distribution: OpenSuse 10.2, Slackware 11, Solaris 10
Posts: 415
Rep:
What's the most productive language?
Hi,
Now this may seem to a strange questions, as many people consider that whatever can be done in one language can be done in another. Well that is true, however the speed in doing it matters a lot.
Their are research papers out there which state the programmers write the same number of lines code nomatter what language they use, thus it makes most sense to use the language whihc is the most expressive. (the most high level).
Paul Graham, in his essays often states that LISP is the most productive language and it the language whihc enabled him to write code for his startup way faster then their competitors where able to in C++/C.
Currently Python is considered to be the modern language closest to Lisp, is it really expressive? can you write code in python which does more in a same code size, as does an equivalent program in say Java/C# or C++? Or is there another language more expressive then Python?
Languages are simply tools, and comparing their "productivity" isn't really something that can be done. To use an analogy - which is more productive: a shovel or a hammer? There's no meaningful way to compare the two.
If you are asking about measuring productivity though, the question really ends up being more of a reflection of the person doing the programming than of the language itself. To say it another way, a motivated, highly skilled programmer in <language A> will be much more productive than a bored, marginal programmer in <language B>, regardless of what you assign to either A or B. I think maybe the question you are asking is "which language is the most versatile?"
probably theres another way of looking at this "productivity" problem which is how much will we need to learn that language in-order to complement the "first" or "major" language that we had already known however imperfectly it was understood ... do we need to relearn everything or all we need to do is just start coding(whatever it means) after a few hours of glancing and reading of this new language ... if the second scenario is true then probably it is a rather productive language to use , usually they are little scripting languages ...
ofcause by saying that it doesnt means that we will be very good at this new language that we are trying to learn because those who had choosen this language as their major(kind of) language in the first place definately could go much much deeper than us and infact if you are a real world programmer , sooner or later you will eventually be very fluent in that too ...
very unlike some of those(not all) "unreal" hobbyists where you could almost read clumsiness and much repetitions and redundancies in their codes and by saying that it pretty much descibing what i am actually ...
python is a very good all round language ... for me it reads more like a major language to start off very seriously while tcl/tk is really idiot-proof(kind of) and simplistic(kind of) and hence faster for me and pearl is also very good but i need a "mathematical" mindset in order to use it naturally but if its your job to learn it then you have to or must learn it seriously , just like java(another major heavy weight language i think) , php and the rest of those commonly used web or admin languages , whether its scripting or not ...
yup ... as what someone had said ... motivations(probably an early one) are also very important in whether you will learn anything in-depth and usefull for your future(or present) career ...
just my opinion and i could be wrong with all that ...
First I have to disagree with: "whatever can be done in one language can be done in another." I can no more write a device driver in SQL than you can write a web page in C.
Second I have to disagre with: "research papers out there.. state.. programmers write the same number of lines code nomatter what language they use." That *might* be true for general-purpose languages. Domain-specific languages will ALWAYS be more efficient at the tasks they were designed for, however... and they'll ALWAYS be less efficient than a general purpose language at tasks they weren't designed for too.
Distribution: OpenSuse 10.2, Slackware 11, Solaris 10
Posts: 415
Original Poster
Rep:
@Crito
Quote:
I can no more write a device driver in SQL than you can write a web page in C.
Yes you can't, since SQL is not a programming language, it's a database query language, and you can write a web page in C, a lot of people do it via CGI, and create dynamic HTML pages on the fly.
Yes you can't, since SQL is not a programming language, it's a database query language, and you can write a web page in C, a lot of people do it via CGI, and create dynamic HTML pages on the fly.
Guess you got it all figured out then. End of discussion (with me.)
Crito, I think sarcasm aside, he's trying to compare general purpose languages. Not domain specific ones.
As to that it's easily answered. The underlying ideologies are the real issues: procedural vs. OOP, bottom-up vs. top down, structured vs. unstructured, platform independent vs. platform specific, low level vs. high level, high performance vs. ease of use. The list goes on... The philosophy of the language is what determines its design and orientation and hence, its usage and acceptance.
The most productive language is therefore what best fits into your own experience and knowledge as well as orientation.
Last edited by vharishankar; 12-17-2005 at 08:02 AM.
yup ... actually i found out that irfanhab's writings about his stuffs in his blog are good and interesting for general public awareness in computering stuffs ...
Distribution: OpenSuse 10.2, Slackware 11, Solaris 10
Posts: 415
Original Poster
Rep:
Well yes, as people have pointed out in this thread that I meant "General purpose languages",as special purpose or domain specific languages are a lot more productive in THEIR domain only. like Matlab is an awesome tool and provide perhaps the best scripting language only for those concerned with mathematical simulation/modelling,statistical analysis etc..
So I guess that no one seems to have a conclusive answer as to which language is the most productive general language, Paul Graham seems to think it's LISP and it's modern relative Python. Just wanted to know fomr other developers if they agree, or if they know any better alternatives.
Python is quite a good language. Not sure about the more productive/less productive part. To a large extent programming is subjective and depends a lot on the person doing the development.
And let me add, the level of productivity often seems to depend on the quality of documentation provided for the language. A well documented language will be easy to pick up faster and hence will lead to quicker results and greater productivity.
Where the quality of documentation is poor or is missing, I find it very hard to learn that language.
>> So I guess that no one seems to have a conclusive answer as to which language is the most productive general language, Paul Graham seems to think it's LISP and it's modern relative Python. Just wanted to know fomr other developers if they agree, or if they know any better alternatives ...
probably MatLOS ?? a dialect which you could strike rich with in your career ??
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.