OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] [ANN] Candle 0.9.1 Beta Release - a new scripting language for ...

Attached is a draft of another approach to a Grand Unification and consequent simplification.
It emphasizes declarative code (e.g. HTML and State Machines) with powerful expressions (e.g. SQL) rather than interpretive procedural code.  Of course both are signficant.  

In a message dated 7/31/2011 11:10:37 P.M. Eastern Daylight Time, henryluo@candlescript.org writes:
Dear members of xml-dev list,

I'm glad to announce the 0.9.1 beta release of Candle (Common ApplicatioN Development LanguagE). Candle is an open-source (MPL) scripting language that unifies the core features of many XML-related technologies (including XSLT, XQuery, XQuery Update, RELAX NG, BNF, XHTML, SVG and more). It can be used to develop command-line, desktop and Internet applications.

Some of the advantages of Candle comparing to XSLT and XQuery are:
  • Candle is an unified language instead of two highly-overlapping languages. Candle uses scripting syntax instead of the highly verbose markup syntax of XSLT.
  • Candle's markup language is strongly-typed even without schema, whereas XML is only weakly-typed without schema.
  • Candle consists of a pattern language which cleanly unifies several pattern-related DSLs (including RegEx, BNF, RELAX NG, XQuery Sequence Type). It can easily match on sequence of items, nodes and characters.
  • Candle unifies functional and procedural programming. Through a mechanism I called separation-of-side-effects, Candle unifies two worlds in a more orderly manner then any existing multi-paradigm programming languages. In Candle, routines are divided into functions and methods. Functions are routines without side-effects and methods are routines with side-effects. The rule of separation-of-side-effects is that methods can call functions, but not vice versa. And expressions in Candle are always functional. In this way, pure functional islands are well-preserved in the vast sea of procedural code.
  • Candle is a general-purpose scripting language like Python, whereas XSLT and XQuery are just DSLs. Candle alone is sufficient to develop complex command-line, desktop and Internet applications, whereas XSLT and XQuery still need to integrate with other languages to develop a serious application.

For more information, you can visit the website (http://www.candlescript.org/) or the SourceForge project.

You can also read two blog articles Why I Invented Candle (I) and Why I Invented Candle (II) to understand the design rationales behind Candle.

Your feedback on Candle is highly appreciated. I'm here anxiously waiting.


Candle App Platform - An unified platform for desktop and Internet apps.

XML-A 100910.doc

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS