Friday, June 16, 2006

Java Rules-Part 1.

Hi folks,
Sorry for the procrastinated effort of mine to techo-nize my blog!!

Let me start with a basic comparision of languages..This has nothing to do with Java,but just a vision of a programmer.

Eiffel Smalltalk Ruby Java C# C++
Object-Orientation Pure Pure Pure Hybrid Hybrid Hybrid / Multi-Paradigm
Static / Dynamic Typing Static Dynamic Dynamic Static Static Static
Generic Classes Yes N/A N/A No No Yes
Inheritance Multiple Single Single class, multiple "mixins" Single class, multiple interfaces Single class, multiple interfaces Multiple
Feature Renaming Yes No Yes No No No
Method Overloading No No No Yes Yes Yes
Operator Overloading Yes Yes? Yes No Yes Yes
Higher Order Functions Agents (with version 5) Blocks Blocks No No No
Lexical Closures Yes (inline agents) Yes (blocks) Yes (blocks) No No No
Garbage Collection Mark and Sweep or Generational Mark and Sweep or Generational Mark and Sweep Mark and Sweep or Generational Mark and Sweep or Generational None
Uniform Access Yes N/A Yes No No No
Class Variables / Methods No Yes Yes Yes Yes Yes
Reflection Yes (as of version 5) Yes Yes Yes Yes No
Access Control Selective Export Protected Data, Public Methods public, protected, private public, protected, "package", private public, protected, private, internal, protected internal public, protected, private, "friends"
Design by Contract Yes No Add-on No No No
Multithreading Implementation- Dependent Implementation- Dependent Yes Yes Yes Libraries
Regular Expressions No No Built-in Standard Library Standard Library No
Pointer Arithmetic No No No No Yes Yes
Language Integration C, C++, Java C C, C++, Java C, some C++ All .NET Languages C, Assembler
Built-In Security No No? Yes Yes Yes No







Till you evaluate the languages,I shall prepare the next articel for this tech session..bbye..

1 comment:

Anonymous said...

Kudos for putting up the effort. Must have taken a lot of time in making that 20 x 7 table. It would be interesting to have some discussion in regards to built in security and speed.