With an effort underway to create more visibility for the Curl/Surge RTE as a strategy and a language for Web 2.0 with RIA and SOA, you might find yourself looking for a book on Curl. You are not likely to find one at your local bookstore.
The very readable Enterprise Curl book by Paul Sheehan is available as an e-book online at Safari with the source ZIP file at PTR. The book is not the best place to start Curl and dates from 2003 so you will want to keep the Curl Documentation Viewer open and handy. Or you could look for a copy of Kevin Hanegan’s Practical Guide to Curl. Even then you will be well-served by the Documentation Viewer.
The reason is that the pages contain embedded Curl text widgets with code snippets which you can modify and execute right there in the document. If the folks at Mozart-Oz ever look to redo the Oz documentation using their .oza applets, they could not go far wrong to follow this model. I can only hope to see the same for Scala and JavaFX. There is something similar for JavaScript at the the W3C tutorial but those web pages lack the structure of the Curl application.
You see, the Document Viewer is also a folding-outline browser which allows you to control what is presented and to what depth.
For example, none of the available books cover Curl5 which has added many new packages and elaborated still more of the pre-existing packages. Take a quick search for Sequence-of. The result is a page where one click brings us to
CURL.LANGUAGE.CONTAINERS (package)
Purpose: This package contains most of the container classes in the CurlĀ® language. The entire Aggregate-of hierarchy is included in this package.
Notes
A notable container class that is not in this package is FastArray-of.
with its two very pertinent annotations. Had we stayed on the Sequence-of page, a single click on the folded-outline arrowhead at methods would have exposed the API. If you have used Microsoft OneNote you will appreciate the several buttons on the toolbar for controlling the folding outline.
What I do miss is what I had years ago in Microsoft’s old QuickHelp format used with QuickC with Assembler and such: the ability to add my own notes and tags to the documentation. But Curl is highly extensible, so I will look into doing just that!
The other thing that I have done for my work in Curl is to adapt an ‘ASP-JScript’ .syn file for TextPad5. I have not yet seen an .scurl file for JEdit and I am yet to assemble a template TCL file for TextPad5 (which does not do code-folding) but a good editor is hard to let go of when browsing code… especially if you like to be able to flip between an implementation in one language and a similar implementation in another. It is only when code is being maintained, packaged or versioned that the IDE is the place to be … whether VisualStudio or Eclipse, JEdit or JetBrains Idea for Java or the Dolphin Smalltalk Packages Editor.
If a Curl for Dummies should appear this year, some JavaScript AJAX developers may have a chance to explain to management why it is not also necessary to GWiT their day jobs.
tip: if using TextPad always save your Curl .scurl source files as UNIX file format and UTF-8 encoding.