In short, it’ll take you, the programmer, substantially longer to implement a properly OO solution to any problem in Java than it would in Smalltalk. What this means is that a company will shell out more cash for proper OO solutions in Java than they would in Smalltalk. Period. The economics and the laws of physics agree on this one.
and I can tell you I did not have C++ in mind.
The objective of the Anti-IF Campaign is to raise awareness of effective use of the Object-Oriented paradigm.
The primary purpose of our campaign is to become aware of the design consequences of using IFs and of control structures in general, applied by following the path of the procedural paradigm in Object Oriented contexts. This greater awareness will enable you to understand how to achieve more effective results in terms of flexibility, comprehensibility, testability, and ability to evolve.
The basic problem is that IFs create dependencies, coupling between modules (methods, objects, components, etc.) and increases possible paths inside our code (which reduces legibility).
Java is old due to it’s over reliance on static technologies that freeze programs at the time they are compiled. Frigid applications have a protective shell that prevents anyone from getting into them.
Smalltalk is still new even though it came before Java. Why? Smalltalk is still new because it embraces dynamic technology that enables applications to adapt on the fly to the needs at hand by enabling run time compilation and modification of the application. This means that the system can adapt. This means that programs can be built that are much more flexible than those built using static technologies.
Smalltalk is less reserved wordy than other languages with only five or so reserved words: self, super, nil, true and false.(…) . This is a big generalization, but basically the more reserved words a system has the more rigid it is. For example, in most programming languages the “program flow control structures” such as “for”, “while”, “if then else”, … are reserved words.
In Smalltalk program flow control structures are simply methods in the class library and most have full source code available for browsing or creating your own variations. As a result of shifting “reserved words” from the language syntax definition into the class library a more flexible and expandable system was realized.
Twenty five years after Smalltalk-80 was released the designers of most other languages (C++, Java, C#, …) are still not taking advantage of this important dimension of expandability, which means that those other languages lack this important dimension of expandability that Smalltalk not only allows but encourages, extensibility of basic capabilities of the language. The biggest benefit is that it’s possible for you to extend the language simply by adding new program flow control structures. At least twenty or so of these extensions have been adopted widely across the various smalltalk versions.
we’ve been waiting for that convergence of the Internet, 3D games, and peer-to-peer networking. For many, Second Life represents that convergence—and our collective future online. But there is a problem.(…)
Second Life will never scale because its designers embraced the computing hardware and software status quo. The architecture we currently enjoy was designed in large part for two-dimensional computing. Adding another dimension requires tremendous processing and bandwidth resources—resources that will start to cause bottlenecks in the hierarchical structure of the Web itself. (…)
Our human ability to handle information in tidy 2D hierarchies is pretty good, but it pales compared to our capacity to negotiate in the 3D environments we evolved in.(…)
Croquet is thoroughly peer-to-peer in both its application and its architecture. So it is not vulnerable to the limitations of hierarchy - either conceptually, or technically. It is a platform for networking just about everything. (…) Croquet is built on a “virtual machine”, which means it transcends the boundaries of both operating system and geography alike, like some encoded blueprint for the space-time continuum.
Max Borders is a TCS contributing editor and writer living in Cary, NC. He blogs here.
Articulo completo: Why Second Life Won’t Get a Third - TCS Daily
The Future of the Internet is not Secondlife
Secondlife isn’t the promised-land of some post-human immersive reality. It isn’t going to become the replacement for the Internet.(…)
Scripters will have a hay-day with Croquet — the entire system is built on Squeak; a derivative of Smalltalk. The best part is that scripters with the right permissions can even re-write or modify the system code that the world is running on without restarting the server or recompiling. My favorite part so far however is probably the most important feature of all — hyperlinks.
“Worlds,” in Croquet are individual entities. They are self-contained like a box. You can run one on your local machine and mess with the source code, import objects, and experiment away. If you have a network of computers, you can a world on each one and network them together. This is where Croquet gets really fun — you can create “portals” to other worlds. They look like something out of a sci-fi movie: like windows with another world on the other side. The other world is of course rendered in real-time and you can even manipulate objects through the window (assuming you have the appropriate permissions of course). It’s really an eye-catcher… and stunning since some of the latest games are only beginning to start using this and Croquet is already implementing it in a networked P2P system. So these portals are just like 3D hyperlinks to other worlds.
What is really going to make Croquet the real deal when it comes to the future of the Internet is that it’s basically an operating system. With an embedded virtual machine, it can run on its own hardware or on top of any operating system. It can interface with applications on the host machine and users can share those applications collaboratively even if that application wasn’t programmed to do so. You can already pull up a mozilla browser or an x-terminal in a Croquet window and share it in 3D. You can stream any media and some developers have already integrated VOIP clients. The single biggest reason why Croquet will become the future operating system is that the users can run and modify the code that the worlds are built on and they can integrate their own applications.
Try doing that with a proprietary system like Secondlife.
The Internet is open. Not closed. Croquet, IMO, is the future.
Articulo completo: This Virtual Life: The Future of the Internet is not Secondlife
Why is Croquet built on Squeak?
Croquet required a number of capabilities that could only be provided by a true late bound, message sending language. Croquet’s relationship to Squeak gives Croquet the property of a purely object-oriented system. This allows for significant flexibility in the design and the nature of the protocols and architectures that have been developed for Croquet. An essential part of our development process is Squeak’s ability to keep the system running while testing and especially while making changes. Squeak allows even major changes to be performed incrementally and they take no more than a fraction of a second to effect. (…)
It may be interesting to note that when we first set out to build Croquet, we intended to do it in Java. However, we had to abandon that approach because Java lacks needed meta facilities.