VisualAge was the name of a family of computer integrated development environments from IBM, which included support for multiple programming languages. VisualAge was first released in October 1993 and was discontinued on 30 April 2007 and its web page removed in September 2011. VisualAge was also marketed as “VisualAge Smalltalk”. IBM has stated that XL C/C++ is the 'follow-on' product to VisualAge.
VisualAge was born in the IBM development lab in Cary, North Carolina, which was established in 1984 and had responsibility for application development tools. The EZ-VU dialog manager product, a personal computer derivative of the user interface elements of the ISPF 327x product was one of the first products in this family. The lab also had a group which was one of the early adopters of object-oriented programming technologies within IBM using an internally developed language called ClassC to develop applications with more sophisticated graphical user interfaces which were just starting to be widely available.
Eventually, the availability of usable implementations of Smalltalk for IBM PC-AT class machines allowed IBM advanced technology projects to experiment with Smalltalk. At about the same time, visual interface construction tools were coming up on the radar screens. Smalltalk research projects such as InterCons by David N. Smith of IBM, and Fabrik by a team at Apple led by Dan Ingalls were building interactive graphical applications built from composition of graphical primitives. Higher level construction of user interfaces was evidenced by other tools such as Jean-Marie Hullot's interface builder first done in Lisp and then evolved to become the Interface Builder tool in NeXTStep, and later Mac OS X, which allowed for building user interfaces by WYSIWYG composition of UI widgets which could be "wired" to each other and to application logic written in Objective-C.
The original prototype which led to VisualAge was an attempt "to make something like the NeXT interface builder" within the Smalltalk/V development environment. By the time VisualAge was released as a product, much more emphasis was placed on visual construction of application logic as well as of the user interface. This emphasis was in part due to the "positioning" for "strategic" reasons of Smalltalk as a generator rather than a language within IBM's Systems Application Architecture.
The name VisualAge was the result of a contest between the members of the development team. After the initial release of VisualAge/Smalltalk the name VisualAge became a brand of its own and VisualAges were produced for several different combinations of languages and platforms.
Languages (not every language is available on every platform listed):
Most of the members of the VisualAge family were written in Smalltalk no matter which language they supported for development. The IBM implementation of Smalltalk was produced by Object Technology International which was acquired by IBM and run as a wholly owned subsidiary for several years before being absorbed into the overall IBM organization.
VisualAge for Java was based on an extended Smalltalk virtual machine which executed both Smalltalk and Java byte codes. Java natives were actually implemented in Smalltalk.
VisualAge Micro Edition, which supported development of embedded Java applications and cross system development, was a re-implementation of the IDE in Java. This version of VisualAge morphed into the Eclipse Framework.
Various members of the family have been replaced by products in the WebSphere Studio family of products. (As of 2009), the original VisualAge product continues to be promoted by IBM as “VisualAge Smalltalk”. In 2005, Smalltalk specialist Instantiations, Inc. acquired a worldwide license to VisualAge Smalltalk, and offers an “enhanced product” VA Smalltalk. The C, C++ and Fortran compiler on AIX, Linux and z/OS are renamed as XL C/C++ series.
Applications designed with VisualAge C++ could be portable between platforms without any code changes needed (Windows, OS/2, AIX, Linux etc) if VisualAge guidelines were followed. IBM also included additional tools and libraries in instances where portability was not possible without code changes.