Curl (programming language)

related topics
{math, number, function}
{system, computer, user}
{style, bgcolor, rowspan}
{language, word, form}
{company, market, business}
{work, book, publish}
{album, band, music}

Curl is a reflective object-oriented programming language for interactive web applications whose goal is to provide a smoother transition between formatting and programming. It makes it possible to embed complex objects in simple documents without having to switch between programming languages or development platforms.

The language attempts to address a long-standing problem: the different building blocks that make up any modern web document most often require wildly different methods of implementation: different languages, different tools, different frameworks, often completely different teams. The final—and often most difficult— hurdle has been getting all of these blocks to communicate with each other in a consistent manner. Curl attempts to side-step these problems by providing a consistent syntactical and semantic interface at all levels of web content creation: from simple HTML to complex object-oriented programming.

Curl combines text markup (as in HTML), scripting (as in JavaScript), and heavy-duty computing (as in Java, C#, or C++) within one unified framework. It is used in a range of internal enterprise, B2B, and B2C applications.

Curl is a markup language like HTML—that is, plain text is shown as text; at the same time, Curl includes an object-oriented programming language that supports multiple inheritance. Curl applications are not required to observe the separation of information, style, and behavior that HTML, CSS, and JavaScript have imposed, although that style of programming can be used in Curl if desired.

While the Curl language can be used as an HTML replacement for presenting formatted text, its capabilities range all the way to those of a compiled, strongly typed, object-oriented system programming language.[1] Both the authoring (HTML-level) and programming constructs of Curl can be extended in user code. The language is designed so Curl applications can be compiled to native code of the client machine by a just-in-time compiler and run at high speed.

Curl applets are viewed using the Curl RTE, a runtime environment with a plugin for web browsers. Currently, it is supported on Microsoft Windows, Linux, and Mac OS X.

Curl has had a feature of detached applets for several years, which is a web deployed applet which runs on the user's desktop independent of a browser window much as in Silverlight 3 and Adobe AIR. See also Site-specific browser. Curl applets can also be written so that they will run off-line when disconnected from the network (occasionally-connected computing). In fact, the Curl IDE is an application written in Curl.

Contents

Full article ▸

related documents
SNOBOL
Computer algebra system
True BASIC
E.164
ActiveX Data Objects
Thread safety
Java Naming and Directory Interface
Flyweight pattern
X.500
Code coverage
Kvikkalkul
World file
XML-RPC
Literate programming
CDR coding
Initialization vector
Great Internet Mersenne Prime Search
Bookmarklet
Serial number
Command-line interpreter
Document Object Model
Jess programming language
8.3 filename
Randomizer
Sed
Specification language
International Obfuscated C Code Contest
Bourne shell
Wikipedia:Free On-line Dictionary of Computing/I - K
Denormalization