Allegro CL 7.0 released
Tuesday, October 26, 2004
Franz has released
version 7.0 of Allegro CL. I like the new marketing slogan: "AI Built-in,
All the Way Down". The slogan
highlights the direction that Franz is taking with the
product - instead of just providing a CL language product, they are
providing a complete, integrated set of CL-based tools for
constructing complex applications.
I've been using the 7.0 beta for a few months now, so am not
surprised by the feature list. However, anyone who has not been
exposed to the 7.0 beta is likely to be amazed by the amount of new
(and enhanced) functionality that is being included in ACL 7.0 (taken
from their announcement page):
- Internet-related:
- (New) SAX/DOM XML Parsers: Validating XML parsers, successfully tested against all major test suites. Analyze and process enterprise XML data extremely fast
- (New) SOAP API: Enables Allegro CL applications to communicate with new and legacy applications over the internet via the SOAP protocol, and to access web services over the internet
- (New) WSDL Compiler: Automatically generates client SOAP templates from WSDL files and server WSDL files from Lisp expressions
- (New) Allegro Webactions: A Web Application Framework for building dynamic web pages that can be easily maintained and updated
- AllegroServe: A dynamic, high-performance Lisp-based web server that also interoperates with other web/application servers
- HTML Parser: Process and analyze web page data
- SSL Socket Streams: Secure internet transactions
- XML RPC (Remote Procedure Call): Allows Lisp applications to communicate via XML
- Lisp RPC (Remote Procedure Call): Allows two Lisp applications to more easily communicate
- Development-related:
- (New) Allegro Prolog: A classic AI programming language in Allegro CL for Logic Programming, with an execution speed in excess of 1 Mlips and running essentially cons free
- (New) Regular Expressions: A fast, Perl-compatible Regular Expression matcher
- (New) Allegro Runtime Analyzer: Profiles function calling patterns and analyzes their space and time utilization before code optimization, an important tool for tuning application performance
- (New) Very large array-total-size-limit (229 for 32-bit, 260 for 64-bit)
- (New) Operating System Interface: Built-in interface for direct interaction between Allegro CL and the OS, without the need to write foreign code
- (New) Shell Module: Provides access to the Unix/Linux/Mac commands at the application code level, enhancing performance, portability and consistency across platforms
- (New) asdf System Definition Facility (see www.cliki.net/asdf for info on asdf)
- (New) OpenGL Interface on platforms with available OpenGL libraries (see www.opengl.org for more information)
- Refined IDE and Common Graphics for greater usability and navigation
- Localization support for Unicode international character sets, local time, currency, etc.
- Graphical profiling and debugging tools for multiple threads
- Improved Emacs Lisp Interface
- Interoperability-related:
- (New) Allegro Oracle Direct Connect: High-performance direct access to Oracle databases
- (New) Allegro MySQL Direct Connect: High-performance direct access to MySQL databases
- (New) NDBM Database Interface: Interface to NDBM functionality on Unix/Linux/Mac
- (New) Generate Allegro CL foreign function interfaces to C libraries automatically, using the open source tool SWIG (see www.swig.org for more information)
- (New) Message Digest Functions: SHA1 message digest support (in addition to existing MD5 support). HMAT-MD5 and HMAT-SHA1 support. Also support for RC4 encoding
- Improved FTP Client: The Allegro FTP client makes it very easy to manage files, and connects seamlessly to any FTP server, including Allegro FTP
- Java Tool Suite: Package applications as Java Beans or Servlets, directly call Java methods from Lisp methods and vice versa, and dynamically generate Java byte codes to run on JVMs
- Complete access to databases via Allegro ODBC (relational) and AllegroStore (Object-Oriented)
- Portable Object Adapter (POA) for Allegro ORBLink (a CORBA-Compliant ORB)
- Comprehensive Foreign Function Interface
- OLE/COM Support
- Environment-related:
- (New) Environments Access: Environments are now first-class data objects that are easily accessible and augmentable. Helps code compilation, code walking and domain-specific language development
- Improved Linux Version Compatibility: Allegro CL runs on all Linux distributions that use Glibc 2.2 on x86, and Glibc 2.3 on AMD64 and PPC, and is well protected against future Glibc changes
- Multiprocessing for Unix/Linux/Mac and Windows: More robust and flexible than previous versions with enhanced performance and better blocking behavior
- OS Threads for Windows: One Lisp thread and unlimited non-Lisp threads can now run on different processors
- Modernized Command Line Arguments: sys:with-command-line-arguments now handles long arguments and is easier to use
- Change class definitions and methods on the fly, and automatically propagate changes to existing object instances
- Allegro jLinker: A Dynamic Link between Lisp and Java
- Built-in memory management and garbage collection
- Application delivery as a DLL or stand alone image
- Faster and better core Lisp: 2300+ smaller features and improvements

