Visual Age for Smalltalk For Non-Comm Use
paugq writes " IBM has released Visual Age 6.01 for Smalltalk for free for non-commercial use. You can download it here, it's available for Windows, Linux, Solaris, AIX, etc (registration needed). Smalltalk is a dynamically typed object oriented programming language designed at Xerox PARC during the 1970s"
For those of you who have up until now been using Squeak, may be interested in upgrading to a more serious tool, now that its available.
More info here. Sorry, couldnt find any screenshots.
There are two major open source implementations of Smalltalk commonly available today: GNU/Smalltalk and Squeak. GNU/Smalltalk is more server-oriented, and does not support Smalltalk's traditional MVC GUI, espousing a new system based off Tk. It is fairly fast, and somewhat lighter weight than Squeak, making it a better choice for headless applications like application servers. Squeak is, at the moment, mind-blowingly huge, but it provides both the venerable MVC GUI and Morphic, which is derived from Sun Microsystems' Self programming language. It also has been ported to many non-Unix platforms, like Win32, WinCe, MacOS 9, etc.
Weapons of Mass Analysis
http://www.cincomsmalltalk.com has had thier non commercial for years.
I've used 'em all, each has its strengths and weaknesses, depending on what you're trying to do. They're all Smalltalk though, and that makes 'em great!
One man's pink plane is another man's blue plane.
As others have mentioned, check out Squeak Smalltalk. Squeak doesn't have the same goals as a product like VAST or VisualWorks, but it is a free Smalltalk with a very active user community, and is open source- it's Free, of course. :) It's been available since 1996, and is always moving forward. Check it out!
Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
Yup, Smalltalk is still used. Obviously, it's not used as widely as C++ or Java, but there are still a number of folks using it. From industrial control (embedded smalltalk!) to huge "mission-critical, enterprise-wide" applications; from schmucks like me who use it as their desktop and GUI system to college classes using it to teach the fundamentals of OOP; from corporate prototyping to acedemic research.
It's not the most visible language, but it also doesn't have the marketing cashflow behind it like Java, or the legacy mindshare of C++. But then again, there are a lot of systems in the background doing work that we never hear about- OS/2 running ATMs, Lisp running banks, etc etc.
Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
While I'm very happy to see Slashdot giving my favorite language a little publicity, I can't see what is new about this.
:)
I thought perhaps this was something new from IBM- a new package or a new license for a non-commercial version of VAST. Perhaps that is there long term intent, but I just downloaded and installed it, and lo and behold the start-up splash screen informs me that this is an evaluation version. IBM has had evaluation versions available for download from their site (or a CD from IBM, free) for a long time. Looks like the same license and the same stuff.
That said, I hope it doesn't discourage anyone frmo trying it out- or possible trying out a free Smalltalk like Squeak.
Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
From the License:
.... i tried version 1.0 long time ago and it was a very nice IDE.
You may 1) use the Program only for internal evaluation or testing purposes (emphasis mine) and 2) make and install a reasonable number of copies of the Program in support of such use, unless IBM identifies a specific number of copies in the documentation accompanying the Program. The terms of this license apply to each copy you make.
so, No, it is not FREE it is only gratis (no money) for testing.
You should give it a try though,
The Smalltalk philosophy and community is an interesting beast. Smalltalk has been about being open since before the copyleft, before the FSF or GNU- right about the time RMS was first being hired at the MIT AI lab.
Unlike most of the rest of the software world, Smalltalk is open to its core. I think of it as sort of psycholinguists for programming languages. Due to way Smalltalk works, the community grew into a culture of openness that C/C++ programmers don't know, even with licenses like the GPL.
You see, in a Smalltalk environment, the entire system is available to you, at your fingertips. It's all there, and it's all in Smalltalk. If I want to change the way the plus (+) operator works, I can. Since everything is an object in Smalltalk, and every operation a method, it's just a matter of having a look at the + method on the class Number. In Smalltalk, we notate that as Number>>#+. Which incidentally is also legitamate code- it returns a CompiledMethod object, which contains the compiled bytecode for that method. Or, if I wanted to change the way the Smalltalk system managed windows, I could just pop into the Window class. Nothing is hidden, nothing is kept from you, the developer/user- even on "proprietary" and commercial Smalltalks like VisualAge for Smalltalk and VisualWorks. The ability to change the way anything works, getting the source code for everything is something you don't get with most industrial-strength commercial systems. Definately cool, IMHO.
One exception is the virtual machine, which is often written in C and makes up a pretty small percentage of the Smalltalk system. Java tends to have a lot of what we think of as the "java system" in the VM or a VM extension, but most Smalltalk VMs are small.
Squeak takes this to the next level- Squeak's VM is written in Smalltalk, and then translated to C, and them compiled by gcc, etc. You can make modifications to the way you want your virtual machine to work, and the Squeak system manages the translation to C and compiling it to something your computer can understand.
Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
>>> OK so how does these "development tools" compare to the Java tools out there, both free and commercial? Can I refactor as well in Smalltalk as I can Java?
You are kidding, right? First ever refactoring browser was created for Smalltalk. The word itself was most likely invented in Smalltalk community.
So when are we going to get the Smalltalk equivalent of JBoss, or JoNaS? The number of "extensions" that Java has is huge.
I've never worked with JBoss or JOnAS specifically, but Squeak has had a few application servers for a while. Seaside is the higher-level app server I've been using, but there are a couple others that implement similar functionality at different levels. Squeak has an very large library of extensions, not as large as Java, but very substantial. Swazoo is another app server for Smalltalk that comes to mind.
Outside of what you can do in Squeak, there are a handful of other application servers for Squeak, including VisualWave for VisualWorks, IBM's WebSphere and GemStone/S. These are hard-core enterprise app servers. Depending on your needs, there's an option.
And when is the graphics going to improve in Squeak? Right now it looks like a cartoon, instead of a serious tool.
Squeak has looked like more than a cartoon for a long time. This is what my Squeak desktop looks like now, save for a for desktop extensions not in the shot. No, it doesn't look like Windows or OS X, but it's far from looking like a cartoon. You can use any IceWM theme with Squeak, and in that screenshot, I choose a BlueCurve look-a-like theme. A project called Zurgle is working towards some UI beautification that goes beyond IceWM/color themes. You can find some screenshots here showing the WinXP Luna and Borg themes.
The graphic system in Squeak itself is quite powerful, regardless if you are displaying actual cartoons or a more boring business-like desktop.
When is Smalltalk going to have their CSPAN equivalent?
CSPAN? I am guessing you mean CPAN, but if you mean something related to television news, let me know.
Squeak has had something called SqueakMap for the last few point releases. It has a similar goal as CPAN, although isn't a clone. It does some things differently. However, when I download a fresh copy of Squeak 3.6, I can open it up, click the menu option for opening the Package Loader, and simply select an application or library and install it. Usually less than a minute later, whatever I downloaded it installed and ready to use. It's a nice system.
When is code doing to be compatiable across VMs?
It already is, to an extent. A lot of the different Smalltalks use different GUI frameworks, and I don't expect any compatability layers to show up anytime soon. But then again, you wouldn't expect code written for SWT to work for Swing and AWT, would you?
When is the documentation going to improve?
This is an ongoing process. This is an area which really needs work, especially for Squeak. The commercial Smalltalks have good documentation already, which makes sense. Luckily, folks have taken this up lately and are working on better tutorials for beginners and trying to improve other documentation.
It may sound crazy to an armchair hater, but it's not the most glamorous thing, writing documentation. People come into the Squeak community, figure things out and want to start writing code. You know, creating new things or improving existing ones. It's not the easiest thing to find folks who want to write docs. It hurts the community in the end, yes, but that doesn't make it any more fun. If Squeak had the budget of Java, a company like Sun throwing literally millions and millions of dolars at it, I imagine it would have documentation of similar quality and quantity. But alas, that's not the case.
Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
Oh, I dunno, but it sure looks like the AC in question has not read the Byte August 1981 issue. And especially the article Design Principles Behind Smalltalk by Dan Ingalls.
Where he defines Factoring: Each independent component in a system should appear in only one place.
Roelof Osinga