General Programming Language Comparison

preview_player
Показать описание
In this video, I compare 13 programming languages in a number of areas. These languages are C, C++, CoffeeScript, Dart, Java, JavaScript, Objective-C, PHP, Python, Ruby, Swift, Go, and C#.

In a past video, I talked specifically about the performance of different languages. That can be viewed here:

Рекомендации по теме
Комментарии
Автор

10:10
C does have function pointers. So you can pass the pointer to another function and have that function execute the function that the pointer is pointing to when that function is complete, or whatever. This the way you can implement plugins in your C programs, by loading a dll, which gives you some function pointers that you can run from your program. They have other uses as well. Yeah it's a bit different than anonymous functions, but in this particular case it accomplishes the same goal.

derstreber
Автор

Amazing comparison and explanations, this is just the video I was looking for.

prim
Автор

You missed some important parameters to compare languages by.

Does a language have first class functions?

Passing by value/reference/etc?

lazy evaluation?

and so on

shacharh
Автор

ARC isn't hard to complain nor weird. It's actually quite easy.
You create a reference, a reference counter goes up. If you don't use the reference anymore, the counter gets decreased. If it's at 0, the reference is destroyed (or the object for that matter).

winfrk
Автор

This video was very educational, keep up the good work!

meganoob
Автор

What is the risk of having your source code stolen if they are interpreted or JIT? If I download one such software, can I somehow reverse engineer the source code?

Realdidizhou
Автор

You're genius
Best video about comparison coding languages

comcom
Автор

Very nice video, I learned a lot

What exactly are the limits to ARC?

kametrixomtikara
Автор

Comparing programming languages is like walking on a minefield. Thank you for sharing your thoughts but there are some things I just can't keep to myself:
1) Grouping C++ and Java or C# together as OOP languages, I think, is misleading. In C++ it's just an extra feature, same as in Python, - you can use classes to make your own data types in an otherwise procedural program. To my knowledge it's not an option in Java where everything is a class.
2) When you spoke about compiled vs. interpreted vs. JIT languages you didn't mention Java's JVM. As far as I know it gives Java considerable overhead. Not just "good from both worlds".
3) Do you really think that semicolons and curly brackets are important. The fact that languages which are picky to indentation like Python require some care with tabs and spaces when switching editors or OSes I personally find more important.

Greamzih
Автор

Thx for the vid and I was just wondering.. I thought JS is oop as well doesn't it?

Eviscerate
Автор

You must add : PHP at RUNTIME EXECUTION SLIDE -
Compiled - PHP (Hip Hop)
JIT - PHP (HHVM)

ajithmoharana
Автор

I understand how languages like Java allocate data to variables based on their type, but I don't understand how that works in a language like php or JavaScript where you don't have to specify a type. How do these languages store variables with variable size?

joshuafishman
Автор

in Python functions are first class objects... so you can pass function to another function as an argument... decorators work this way... while lambdas are useful e.g. for defining functions inside dictionaries, where regular function syntax is not allowed… I think you should study Python more 😉

vxsniffer
Автор

This is brilliant, man. Java it is then. :)

ibarix
Автор

Objective-C could in no way be described as a "strongly typed" language. Its types are purely advisory, completely optional,  and if you coerce the type of an object to the wrong type at compile time, nothing will complain until you get a "selector not understood" error at runtime.

cygil
Автор

10:36 Its spelled 'lambda' (not 'lambas').

slr
Автор

Python is not weak types, am I right?

shin-tcpt
Автор

Procedural BASIC or PASCAL is better than all this "modern" crap....

jasonking
Автор

No Assembly, no SQL. Not a good comparison.

slr
visit shbcf.ru