Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

When I am learning a new language, I often don't need much more then simple comparison to languages I already know. For example each language uses its own Scope rules and Dynamic vs Static typing etc... Is there a good way to keep track of it? Are there good organized resources for finding out this information?

I find that going through 500 pages of a book when 10 pages would suffice is very inefficient.

share|improve this question
    
Which languages, do you want to compare? –  Abimaran Kugathasan Jan 21 '11 at 15:52
    
Javascript, Php, C++, Java, Ruby, Python. –  zhenka Jan 21 '11 at 15:53
    
Scheme, Clojure, Scala, Common Lisp. –  zhenka Jan 21 '11 at 15:54
add comment

3 Answers

One broad comparison is available on wikipedia : http://en.wikipedia.org/wiki/Comparison_of_programming_languages

But before comparing language, you should first understand their characteristics, like static or dynamic types, RAII or not, etc.

So you will really be able to understand such comparison table only once you understand each possible implementation of each possible feature and paradigms of languages, understand what is not compatible and what implies what.

share|improve this answer
    
It's not very good I already checked it out. I was looking for more detailed elaborate comparison aimed at learning a new language. –  zhenka Jan 21 '11 at 16:03
    
You get better at it as life goes on. You could also make the comparison yourself, and make it available to others online. –  Michael K Jan 21 '11 at 16:05
    
Yeah I will probably do that because it looks like there is no such thing for what I have in mind. –  zhenka Jan 21 '11 at 16:10
    
If you're looking for specific features, try to ask on this website what languages could match what you want to achieve. Lot of experimented programmers around touched a lot of languages and know the tools available. –  Klaim Jan 21 '11 at 21:54
add comment

You can't compare every language with other. There are language, we can compare and easily memorize the difference, like Java and C#. And, some languages are there, comparing those don't make sense at all. And, from the Wikipedia, you can see, there are only some features can be compared such type checking, etc.


Compare related languages, and we can't compare every language with other, it's meaning less.

share|improve this answer
    
Well if I show you a function definition from one language and another. That is a good reference in itself. Add to it meaningful education examples and it is a great way to learn. In terms of not all languages can be compared. I can only think of functional vs C type languages which can't be compared. In each general category in my experience they are comparable enough. –  zhenka Jan 21 '11 at 16:12
add comment

If I need to understand how scoping works in C++ compared to JavaScript I would just google "C++ scoping" and read the results.

share|improve this answer
    
Yeah, but what if you want to learn a language through the differences. Googling everything would take forever. –  zhenka Jan 21 '11 at 16:03
    
So you want a site that automatically understands the differences and shows them to you? Non sense. –  Luca Matteis Jan 21 '11 at 16:05
1  
@Eugene: Learning through differences doesn't seem the best way to go, IMO. Learn the language as a language. Often a new language has new ways of doing things. Learning a new language in terms of "Like LangX but do things this way" only seems to confuse people and prevent them from learning new techniques that take advantage of the new language (from what I've seen). Once you have actually learnt it, you'll be able to make the comparisons yourself. –  FrustratedWithFormsDesigner Jan 21 '11 at 16:08
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.