Under an open-source license, Adobe makes available the code for two C++ libraries, Adam and Eve2. But the company is not using this code in any of its shipping products.Adobe recently released some source code under the open-source MIT License for creating computer interfaces.
This code from the ASL (Adobe Source Libraries) at Adobe Systems Inc. consists primarily of two C++ libraries: Adam and Eve2.
Adobe is not currently using this code in any of its shipping products. An earlier version of Eve2, Eve (Express View Engine), was used in Photoshop 5 and has seen some use in other Adobe applications.
ASL is the work of two Adobe computer scientists, Sean Parent and Foster Brereton, of Adobe's Adobe Software Technology Lab. This is a research group with the job of increasing developer productivity and improving software quality.
Adam is a modeling engine and declarative language for describing constraints and relationships on a collection of values. When bound to an HI (human interface), Adam provides the logic that controls its behavior.
Yahoo is launching a developers program for its search technology. Click here to read more.
Eve2 is both a declarative language and a layout engine for constructing an HI. The layout engine in Eve2 gives developers a rich description of UI elements that can be used to achieve a high-quality layout automatically across different operating systems and GUIs.
These are both component libraries. They can be used either together or independently. In and of themselves, they cannot be used to create an application. They do not constitute an application framework, but can be used as part of a framework. In addition, the two libraries' components also can be used independently.
Both libraries in turn are dependent upon the Boost C++ source libraries. The Boost libraries are free, peer-reviewed, portable libraries that are meant to work well with the C++ Standard Library. They are meant to help form the basis of the next generation of the C++ language Standard.
Parent, in his foreword to the project, described ASL as "a good start."
"As these libraries are incorporated into Adobe's products, they will replace tens of thousands of lines of code with simple and short declarations," Parent said. "The Eve layout engine has already saved Adobe millions of dollars in localization costs."
ASL remains a work in progress, though, and it may not be in the mainstream of Adobe's product development. "Still, I am convinced that writing correct, high-performance and feature-rich systems can be orders of magnitude simpler than it currently is," Parent said. "By my estimate, 70 percent of Adobe's current code base could be better represented declaratively.
"First, we want to give back to the wonderful open-source community which gives us so much," Parent said about the decision to release the code to the open-source community. "Second, we are releasing ASL because we want these problems to be solved. We want to be able to see our designs turned into quality products.
"We believe that technology that helps us build better products will make us a stronger company. We want to build Photoshop and Acrobat and not struggle with the small implementation details. And we realize the problem is far larger than us alone."
But as one Slashdot writer noted, Adobe has had other open-source projects, which are no longer available on its Web sites.
These included several open-source plug-ins that enabled Python programmers to work with several of Adobe programs' APIs.
In addition, in 1999, the company released a beta version of its FrameMaker authoring and publishing software for Linux, but it never launched a commercial release.
FrameMaker continues to be available on the Windows and Solaris operating systems, but Adobe in April 2004 withdrew FrameMaker for Mac OS from the market.
Over the past year, Adobe has made other moves toward joining the open-source community. In July 2004, Adobe joined OSDL (the Open Source Development Labs), and in November, the San Jose, Calif., company was looking for two senior-level Linux employees.
Then, in early January 2005, Adobe briefly released a beta of Adobe Reader 7.0 for Linux. The company, however, had withdrawn this program from public download by Jan. 20.
Would-be downloaders were then greeted by the message: "Thank you for your interest in the prerelease program for Adobe Reader 7.0 for Linux. Due to the overwhelming response received from customers, we have closed the prerelease program.
"To download released versions of Adobe Reader for different platforms, please follow Step 1 below to select your platform, language and connection speed."
Today, if you attempt to download Acrobat 7 for Linux, the only choice you're given is to download the older Acrobat Reader 5.0.10.
Pam Deziel, director of product marketing at Acrobat, said in November 2004 that she was not aware of any Adobe-specific open-source projects and that one shouldn't read too much into Adobe's Linux and open-source moves at that time.
"What we're trying to do is to make sure we have a good picture and roadmap for the Linux market overall," Deziel said.
Adobe officials did not return phone calls seeking comment on its latest open-source steps.