WWW.WEBMASTER.XMC.PL

RTML

Yahoo!

RTML

Back
Home
Next


RTML code in the editor RTML code in the editor

RTML is a proprietary programming language used by Yahoo!'s Yahoo! Store and Yahoo! Site hosting products.

History

The language originated at Viaweb, a company founded by Paul Graham and Robert T. Morris, as a template language for their e-commerce platform. Viaweb was bought by Yahoo! for $49.6 million in 1998 and renamed Yahoo! Store. RTML was offered as an option for customers (usually small businesses) who wanted to customize their online store more than the built-in templates allowed. The built-in templates were written in RTML, and provided a starting point for most people who learned the language. The RTML-based content management system was later offered as a web hosting platform without a shopping cart, under the name Yahoo! Site. [1]

In 2003, Yahoo! began offering new customers a more standard PHP/MySQL web hosting environment alongside the RTML-based Store Editor. Yahoo! Store has been renamed Yahoo! Merchant Solutions, which is a division of Yahoo! Small Business [2]. However, many new Yahoo! Merchant Solutions sites as well as legacy Yahoo! Stores continue to be built using the Store Editor and RTML.

Language

Although Yahoo's documentation does not mention it, RTML is actually implemented on top of a Lisp-based system. The language is somewhat unique in that the programmer cannot edit the source code directly as text. Instead, keywords are presented as hyperlinks in a browser-based HTML interface. Clicking on a keyword selects it, and its attributes can be edited. Blocks of code can be pushed and popped from a clipboard, using the stack metaphor. The editor maintains the code's s-expression structure automatically, and visually represents it in the web interface using indentation instead of Lisp's parenthesis. Most of the keywords correspond to HTML elements, but there are also conditionals, recursion, and other control flow features that make it a "real" programming language.

RTML templates are evaluated dynamically for each pageview during editing, but for the live site a "publish" process generates static HTML files from them.

Hello World

This is the Hello World program provided in the documentation:

Hello ()
TEXT "Hello world!"

Acronym

Yahoo's documentation used to say that RTML was an acronym for "Real Time Markup Language," but Graham admitted that "we made up various explanations for what RTML was supposed to stand for, but actually I named it after Robert Morris, the other founder of Viaweb, whose username is rtm."

External links

Developer Links


Home
Yahoo!
Partnerships
Aquisitions
Other Services
People
RTML
LICRA v. Yahoo!
License