Curl 6.0 enriches the rich Internet toolkit

Curl can do some impressive things with graphics for a RIA

One of a number of "middleweight" solutions in the RIA (rich Internet application) spectrum, Curl is a language, an IDE, and a runtime engine that goes beyond the capabilities of lighter-weight AJAX without incurring the heavier overhead of the Java or .Net runtime. A number of Curl characteristics make it especially suitable for enterprise use: excellent performance, the ability to handle intermittent connectivity, support for large data sets, and graceful presentation of complex interfaces.

Since my review of Curl 5.0 last August, Curl won InfoWorld's Technology of the Year award in the RIA category, Curl 6.0 was released, and Curl released three open source projects: WSDK (Web Services Development Kit), CDK (Curl Data Kit), and CDU (Curl Development Utilities). Curl can do some impressive things with graphics for a RIA, as shown by this figure.

I applaud Curl's open source initiatives, but I'll concentrate here on reviewing the new features of Curl 6.0, which amount to a Macintosh port of the runtime, AJAX interoperability features, controls additions and improvements including easier customization, and graphics rendering improvements such as better antialiasing and smoother curves. The Curl language itself boasts some new features, as does the IDE. The latter include conditional breakpoints and the ability to show variable values as tooltips in the editor.

The Macintosh port of the Curl runtime engine is still in beta as I write this, but should be released in April. The key feature of the port is that it displays a native Mac look and feel. That took some work, which was facilitated by the improved rendering and the skinnable controls. The Curl IDE has not been ported to the Mac, however, and Mac fonts are different enough from Windows and Linux fonts that you may encounter some layout issues in Curl applets that you intend to be portable.

Curl does two kinds of AJAX (Asynchronous JavaScript and XML) interoperation: A Curl applet can be embedded in an HTML page, which is supported on all platforms; and an HTML browser window can be embedded in a Curl applet, which is supported only on Windows. The JSON (JavaScript Option Notation) format, commonly used by AJAX applications, is now supported by the Curl API. These features can help create mashups and add Curl to an existing AJAX page.

Curl competes in the RIA category with Adobe Flash and Flex, Microsoft Silverlight, OpenLaszlo, and various AJAX technologies. Like some of these, it can be used for desktop applications as well as Web applications. It can also coexist with most if not all of these, thanks to its new interoperability features.

Version 6 boasts several improvements to the Curl controls; the biggest is a new library of skinnable controls and a style designer for them. Between the style designer, the controls themselves, and the Curl Visual Layout Editor, you can create sophisticated user interfaces with customizable looks quite easily.

The graphics improvements in Curl 6 provide easier access to high-quality rendering, including antialiasing, better handling of curves, the ability to render rotated images, and partial transparency (Alpha blending). On the Windows platform, this was accomplished by the use of GDI+ (Graphics Device Interface). High-quality rendering mode also works on the Mac, but not on Linux.

The new language and IDE features of Curl 6 are welcome, but I classify most of them as expected features that previously were missing: bookmarks in the documentation, conditional breakpoints, debug value display with a mouse hover, the addition of rounded rectangles to the 2-D drawing API, and so on.

All in all, Curl 6.0 continues to be an excellent RIA technology, but is only incrementally improved over the previous release. As I said last August, "Curl may well be the most interesting computer language that you don't already know. Given that you can use the personal tools free forever and deploy the results on the Internet for free, the only barrier to evaluating it would be finding the time."

Join the newsletter!


Sign up to gain exclusive access to email subscriptions, event invitations, competitions, giveaways, and much more.

Membership is free, and your security and privacy remain protected. View our privacy policy before signing up.

Error: Please check your email address.
Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.
Martin Heller

Martin Heller

Show Comments

Brand Post

Most Popular Reviews

Latest Articles


PCW Evaluation Team

Tom Pope

Dynabook Portégé X30L-G

Ultimately this laptop has achieved everything I would hope for in a laptop for work, while fitting that into a form factor and weight that is remarkable.

Tom Sellers


This smart laptop was enjoyable to use and great to work on – creating content was super simple.

Lolita Wang


It really doesn’t get more “gaming laptop” than this.

Jack Jeffries


As the Maserati or BMW of laptops, it would fit perfectly in the hands of a professional needing firepower under the hood, sophistication and class on the surface, and gaming prowess (sports mode if you will) in between.

Taylor Carr


The MSI PS63 is an amazing laptop and I would definitely consider buying one in the future.

Christopher Low

Brother RJ-4230B

This small mobile printer is exactly what I need for invoicing and other jobs such as sending fellow tradesman details or step-by-step instructions that I can easily print off from my phone or the Web.

Featured Content

Product Launch Showcase

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?