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

Russell Myers' Discussion 1

http://colinwhitehouse.com/papers/SmalltalkvsJava.pdf

This article details the differences, and more importantly, the similarities between Java and SmallTalk. Generally, SmallTalk and Java both are interpreted languages, they're both less efficient when compared to compiled languages, neither language supports operator overloads, both are generally simple to understand, and the two languages share many other features. Both SmallTalk and Java contain many features (such as Garbage Collection) that may come off as either an irritation or awesome feature when compared to other, somewhat different and older languages such as C++. As with an language, features may suit a particular application or hinder its development in one or many ways.

Conversely, SmallTalk does not support looping (ie. while, for, etc.) while Java does. Additionally, all actions (methods) in SmallTalk are done so by Objects – everything is an object and inherits directly from that class (even the primative types). Also, SmallTalk comes in many different flavors, such as Dolphin SmallTalk and Squeak SmallTalk (our weapon of choice).

Most of the features that exist in both Java and SmallTalk are features that improve the ability to program a piece of software quicker and effectively. For instance, Java's extensive API makes reference for any new process that a programmer hasn't seen yet almost effortless to learn. Similarly, SmallTalk's ease of syntax and the fact that all parts of the software are explorable objects in the over SmallTalk world make for a very quick learn in any subject someone might want to program with regard to. Although mentioned before, Garbage collection almost adds another level of abstraction for the developer, which is very much useful in high end software. Overall, the regard for massive overhead when it comes to the creation of new pieces of software was taken into account with these two languages and features were implemented to expedite the development process.

Links to this Page