Python vs Ruby
There are many differences and similarities between Python and Ruby programming language.
Ruby is a dynamic, open source, object-oriented and reflective programming language. Ruby is considered similar to Perl and Smalltalk programming languages.
Python is a simple, easy to learn, powerful, high level and object-oriented programming language. It is an interpreted scripting language also.
Similarities:
1. They both are high-level language.
2. They both are a server-side scripting language.
3. Both are used for web applications.
4. Both work on multiple platforms.
5. Both have clean syntax and are easily readable.
6. Both use an interactive prompt called IRB.
7. Objects are strongly and dynamically typed.
8. Both use embedded doc tools.
9. A GNU Debugger(gdb) style is available for each language.
10.Both languages are supported by Emacs modes.
Differences:
TERMS | PYTHON | RUBY |
---|---|---|
Definition | Python is a high level programming language. | Ruby is a general purpose programming language. |
Object Oriented | Not fully object oriented programming language. | Fully object oriented programming language. |
Developing Environment | Many IDEs are supported. | Eclipse IDE is supported. |
Mixins | Mixins can’t be used. | Mixins are used. |
Web frameworks | Django | Ruby on Rails |
Libraries | Has larger range of libraries. | It has smaller library than Python. |
elseif | elif | elseif |
Anonymous functions | Support only lambdas. | Support blocks, procs and lambdas. |
lambda functions | It support only single line lambda function. | Its lambda functions are larger. |
Functions | It has functions. | It Doesn’t have functions. |
Community | Focussed in academia and Linux. | Mainly focused on web. |
switch/case statement | It doesn’t support switch/case statement. | It support switch/case statement. |
yield keyword | It returns execution to the scope outside the function’s invocation. External code is responsible for resuming the function. | It will execute another function that has been passed as the final argument, then immediately resume. |
Built-in classes | Built-in classes can’t be modified | Built-in classes can be modified |
Inheritance | Support multiple inheritance. | Support single inheritance. |
Tuples | It support tuples. | It doesn’t support tuples. |
Usage | Google, Dropbox, Instagram, Mozilla, Yahoo, Venom, You Tubes | Apple, GitHub, Twitter, Hulu, ZenDesk, Urban Dictionary |
0 Comments