We have had some general questions regarding the use of the IMSL Numerical Libraries in ?Web 2.0? applications. Without getting into specifics about a definition of the term, I?ll address it as the general move to using the Internet as the platform for hosting your application. From a developer?s view, the technologies involved vary greatly, but often include AJAX, Flash, Java, Silverlight and others. Data and APIs often revolve around XML typically with RSS or Web Services.

As adoption of these technologies grow into more and more application domains, the need for mathematical libraries eventually arises. With the platform-agnostic view of the IMSL Library family, there are many ways to incorporate them into your rich internet applications. In short, you are primarily limited only by what a specific platform supports.

? If you can call a C shared library, the IMSL C Library can be integrated into the application
? If you can call Java classes, the JMSL Library can be integrated
? If you can call .NET classes, the IMSL C# Library for .NET can be integrated
? If you can call Python code, the IMSL C Library can be used behind the PyIMSL interface

If you need to use the IMSL Fortran library, it can generally be used anywhere that C can, though you may need to write a C/C++ wrapper to your Fortran code. It is also possible to wrap the IMSL C Library for use in .NET and Java applications, but this may complicate both coding and deployment.

Graphics are a slightly different story. Both the JMSL Library for Java and the IMSL C# Library for .NET include charting features. On the Java side, JMSL supports both Swing and Servlets directly; with these interfaces, it is often quite easy to integrate charts generated using the JMSL Library. The IMSL C# Library supports Windows Forms on the desktop and a WebChart object that extends System.Web.UI.WebControls.WebControl. This is easily used in ASP.NET web applications, but newer technologies like Silverlight are built on top of WPF (Windows Presentation Foundation). WPF was added with .NET version 3.0 and is most easily recognized as the next desktop interface in Windows Vista. There are some ways to link in Windows Form objects, but currently we do not directly support WPF and defining charts using XAML (Extensible Application Markup Language).

Cloud computing is another novel technology, though arguably not part of the Web 2.0 sphere. However, the generalities cited above apply to cloud architectures as well. There are currently users experimenting with various configurations and utilizing the IMSL Libraries. One example is a customer running commodity trading models in Java and leveraging several JMSL Library algorithms. The licensing model is a bit different here as typical node-locked or floating licenses are challenging to configure, and it doesn?t fit a typical server model. However, if you would like to experiment with cloud computing leveraging an IMSL Library, we can certainly work with you to determine the best solution.

To conclude, at the core of most Web 2.0 or cloud applications is a platform on which the IMSL Libraries are supported. Integration is straightforward in most cases, and we encourage our customers to explore these novel deployment scenarios.