Skip to content

Programming Language Comparision

August 7, 2009
tags:
Eiffel
Smalltalk
Ruby
Java
C#
C++
Python
Perl
Object-Orientation
Pure
Pure
Pure
Hybrid
Hybrid
Hybrid
Hybrid
Add-On / Hybrid
Static / Dynamic Typing
Static
Dynamic
Dynamic
Static
Static
Static
Dynamic
Dynamic
Generic Classes
Yes
N/A
N/A
No
No
Yes
N/A
N/A
Inheritance
Multiple
Single
Single class, multiple
Single class, multiple interfaces
Single class, multiple interfaces
Multiple
Multiple
Multiple
Method Overloading
No
No
No
Yes
Yes
Yes
No
No
Operator Overloading
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Higher Order Functions
Agents (with version 5)
Blocks
Blocks
No
No
No
Lambda Expressions
Yes
Garbage Collection
Yes
Yes
Yes
Yes
Yes
None
Reference Counting
Reference Counting
Uniform Access
Yes
N/A
Yes
No
No
No
No
No
Class Variables / Methods
No
Yes
Yes
Yes
Yes
Yes
No
No
Reflection
Yes (as of version 5)
Yes
Yes
Yes
Yes
No
Yes
Yes
Access Control
Selective Export
Protected Data, Public Methods
public, protected, private
public, protected, “package”, private
public, protected, private, internal, protected internal
public, protected, private, friend
Name Mangling
None
Multithreading
Implementation- Dependent
Implementation- Dependent
Yes
Yes
Yes
Libraries
Yes
No
Regular Expressions
No
No
Built-in
Standard Library
Standard Library
No
Standard Library
Built-in
Pointer Arithmetic
No
No
No
No
Yes
Yes
No
No
Language Integration
C, C++, Java
C
C, C++, Java
C, some C++
All .NET Languages
C, Assembler
C, C++, Java
C, C++
Built-In Security
No
No
Yes
Yes
Yes
No
No
Yes
Advertisements
No comments yet

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: