RTML

Last updated
RTML code in the editor RTML Linkpath-loop.png
RTML code in the editor

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

Contents

History

The language originated at Viaweb, a company founded in 1995 by Paul Graham and Robert T. Morris, as the template language for their e-commerce platform. RTML stands for "Robert T. Morris Language". The RTML editor was offered as an option for customers (usually small businesses) who wanted to customize their online stores more than the built-in templates allowed. The built-in templates were also written in RTML, and provided the starting point for most people who used the language.

In 1998, Yahoo! bought Viaweb for $49.6 million and renamed the service Yahoo! Store. Yahoo! later offered the RTML-based content management system in a hosting platform without a shopping cart, under the name Yahoo! Site. [1]

In 2003, Yahoo! renamed the Yahoo! Store service Yahoo! Merchant Solutions (part of Yahoo! Small Business ), and at the same time began offering new customers the choice of a more standard PHP/MySQL web hosting environment instead of the RTML-based Store Editor. As of 2006, many new Yahoo! Merchant Solutions sites and legacy Yahoo! Stores continue to be built using the Store Editor and RTML. [ needs update ]

Language

Although Yahoo!'s documentation does not mention it, RTML is actually implemented on top of a Lisp-based system. The language is somewhat unusual 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 parentheses. 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.

Abbreviation

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." [2]

Related Research Articles

<span class="mw-page-title-main">Text editor</span> Computer software used to edit plain text documents

A text editor is a type of computer program that edits plain text. Such programs are sometimes known as "notepad" software. Text editors are provided with operating systems and software development packages, and can be used to change files such as configuration files, documentation files and programming language source code.

Zope is a family of free and open-source web application servers written in Python, and their associated online community. Zope stands for "Z Object Publishing Environment", and was the first system using the now common object publishing methodology for the Web. Zope has been called a Python killer app, an application that helped put Python in the spotlight.

<span class="mw-page-title-main">ActiveX</span> Software framework by Microsoft introduced in 1996

ActiveX is a deprecated software framework created by Microsoft that adapts its earlier Component Object Model (COM) and Object Linking and Embedding (OLE) technologies for content downloaded from a network, particularly from the World Wide Web. Microsoft introduced ActiveX in 1996. In principle, ActiveX is not dependent on Microsoft Windows operating systems, but in practice, most ActiveX controls only run on Windows. Most also require the client to be running on an x86-based computer because ActiveX controls contain compiled code.

A HTML editor is a program used for editing HTML, the markup of a web page. Although the HTML markup in a web page can be controlled with any text editor, specialized HTML editors can offer convenience, added functionality, and organisation. For example, many HTML editors handle not only HTML, but also related technologies such as CSS, XML and JavaScript or ECMAScript. In some cases they also manage communication with remote web servers via FTP and WebDAV, and version control systems such as Subversion or Git. Many word processing, graphic design and page layout programs that are not dedicated to web design, such as Microsoft Word or Quark XPress, also have the ability to function as HTML editors.

<span class="mw-page-title-main">Robert Tappan Morris</span> American computer scientist; creator of Morris Worm; associate professor at MIT

Robert Tappan Morris is an American computer scientist and entrepreneur. He is best known for creating the Morris worm in 1988, considered the first computer worm on the Internet.

<span class="mw-page-title-main">MediaWiki</span> Free and open-source wiki software

MediaWiki is a free and open-source wiki software originally developed by Magnus Manske for use on Wikipedia on January 25, 2002, and further improved by Lee Daniel Crocker, after which it has been coordinated by the Wikimedia Foundation. It powers several wiki hosting websites across the Internet, as well as most websites hosted by the Foundation including Wikipedia, Wiktionary, Wikimedia Commons, Wikiquote, Meta-Wiki and Wikidata, which define a large part of the set requirements for the software. MediaWiki is written in the PHP programming language and stores all text content into a database. The software is optimized to efficiently handle large projects, which can have terabytes of content and hundreds of thousands of views per second. Because Wikipedia is one of the world's largest and most visited websites, achieving scalability through multiple layers of caching and database replication has been a major concern for developers. Another major aspect of MediaWiki is its internationalization; its interface is available in more than 400 languages. The software has more than 1,000 configuration settings and more than 1,800 extensions available for enabling various features to be added or changed. Besides its usage on Wikimedia sites, MediaWiki has been used as a knowledge management and content management system on websites such as Fandom, wikiHow and major internal installations like Intellipedia and Diplopedia.

<span class="mw-page-title-main">CLISP</span> Version of programming language Common Lisp

CLISP is an implementation of the programming language Common Lisp originally developed by Bruno Haible and Michael Stoll for the Atari ST. Today it supports the Unix and Microsoft Windows operating systems.

Apache Velocity first released in April 2001, is a Java-based template engine that provides a template language to reference objects defined in Java code. It aims to ensure clean separation between the presentation tier and business tiers in a Web application.

A webform, web form or HTML form on a web page allows a user to enter data that is sent to a server for processing. Forms can resemble paper or database forms because web users fill out the forms using checkboxes, radio buttons, or text fields. For example, forms can be used to enter shipping or credit card data to order a product, or can be used to retrieve search results from a search engine.

<span class="mw-page-title-main">TextMate</span> GUI text editor for macOS

TextMate is a free and open-source general-purpose GUI text editor for macOS created by Allan Odgaard. TextMate features declarative customizations, tabs for open documents, recordable macros, folding sections, snippets, shell integration, and an extensible bundle system.

<span class="mw-page-title-main">Jinja (template engine)</span> Template engine for the Python programming language associated with the Flask framework

Jinja is a web template engine for the Python programming language. It was created by Armin Ronacher and is licensed under a BSD License. Jinja is similar to the Django template engine but provides Python-like expressions while ensuring that the templates are evaluated in a sandbox. It is a text-based template language and thus can be used to generate any markup as well as source code.

Shopping cart software is a piece of e-commerce software on a web server that allows visitors to have an Internet site to select items for eventual purchase.

<span class="mw-page-title-main">YUI Library</span>

The Yahoo! User Interface Library (YUI) is a discontinued open-source JavaScript library for building richly interactive web applications using techniques such as Ajax, DHTML, and DOM scripting. YUI includes several cores CSS resources. It is available under a BSD License. Development on YUI began in 2005 and Yahoo! properties such as My Yahoo! and the Yahoo! front page began using YUI in the summer of that year. YUI was released for public use in February 2006. It was actively developed by a core team of Yahoo! engineers.

<span class="mw-page-title-main">Silverstripe CMS</span> Content management system

Silverstripe CMS is a free and open source content management system (CMS) and framework for creating and maintaining websites and web applications. It provides an out of the box web-based administration panel that enables users to make modifications to parts of the website, which includes a WYSIWYG website editor. The core of the software is Silverstripe Framework, a PHP Web application framework.

<span class="mw-page-title-main">SharePoint</span> Web application platform

SharePoint is a web-based collaborative platform that integrates natively with Microsoft 365. Launched in 2001, SharePoint is primarily sold as a document management and storage system, although it is also used for sharing information through an intranet, implementing internal applications, and for implementing business processes.

Emacs, originally named EMACS, is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as "the extensible, customizable, self-documenting, real-time display editor". Development of the first Emacs began in the mid-1970s, and work on GNU Emacs, directly descended from the original, is ongoing; its latest version is 29.2, released January 2024.

The following outline is provided as an overview of and topical guide to the Perl programming language:

ProcessWire is a free and open source content management system (CMS), content management framework (CMF) and web application framework (WAF) written in the PHP programming language. It is distributed under the Mozilla Public License 2.0. ProcessWire is built around an API with usage and naming conventions similar to the JavaScript framework jQuery. The stated goal behind the API is to provide the level of accessibility and control to pages in a website that jQuery provides to the DOM. Content is managed either via the API or the web-based admin control panel. ProcessWire is largely used for development of web sites, web applications, services, content feeds and related applications.

Multi-Edit is a commercial text editor for Microsoft Windows created in the 1980s by Todd Johnson. Multi Edit Software obtained ownership rights for the product in October 2002. Multi-Edit contains tools for programmers, including macros, configurable syntax highlighting, code folding, file type conversions, project management, regular expressions, three block highlight modes including column, stream and line modes, remote editing of files via FTP and interfaces for APIs or command lines of choice. The editor uses a tabbed document interface and sessions can be saved.

References

  1. "Web Hosting Services | Verizon Small Business Essentials".
  2. "Lisp in Web-Based Applications". April 2001. Archived from the original on 5 Mar 2021. Retrieved 5 Mar 2021.