View this PageEdit this Page (locked)Attachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Manini Patel

Just Testing. More to come....
Call me Mani.

Discussion 1

Programming Language Comparison
by Jason Voegele

Jason starts his discussion with “pure” Object-Oriented languages and main 6 qualitites OO language should have. 1.Encapsulation 2.Inheritance 3.Polymorphism 4.All predefined types are objects 5.All operations are performed by sending messages to Objects 6.All user-defined types are objects. Eiffel, Smalltalk, and Ruby are all pure Object-Oriented languages. Java claims to be a pure Object-Oriented language, C++ is considered to be a multi-paradigm language, of which one paradigm it supports is Object-Orientation. Python is often heralded as an Object-Oriented language.

Static Vs. Dynamic Typing
Class Variables/Methods

Smalltalk and Ruby support the most advanced notion of class variables and methods, due to their use of meta-classes and the fact that even classes are objects in these languages. Java and C++ provide "static" members which are effectively the samething, yet more limited since they cannot be inherited. Python does not support class methods or variables, but its advanced notion of a module allows workarounds for this limitation. Eiffel also does not provide direct support for class variables or methods, but it does provide similar, but limited, functionality in the form of "once" functions.

One of the distinctive features of Smalltalk (versus, say, Java) is that it does not require type specifications for variables and arguments. If you look at a typical Java or C++ program listing, you'll see that a great deal of space is taken up by type definitions, and related stuff such as casting (which is required, for example, to use Java collection classes).

So far how does any programming language affect people, is really depending on the programmer. Every programming language has some advantages and disadvantages. It is not a right statement to make that this programming language is better than some other language. Programmer can check out these differences and pick the language that will help him/her most in the particular project they are working on.

I agree with Matias Paulez that being a student of GA Tech we should and we will know what we need. I read Kalpit Patel’s discussion and I thought the point he had made might back up my answer of the second question. He is saying Java is slower than C or C++ when we compare them by running processing time. So it is really upto the programmer to chose the language.

Link to this Page