ECMAScript 3 rd Edition Compact Profile



Similar documents
Streaming Lossless Data Compression Algorithm (SLDC)

One Standard - One Test, Supplier s Declaration of Conformity (11SDoC) Scorecard objectives and concept

JavaScript By: A. Mousavi & P. Broomhead SERG, School of Engineering Design, Brunel University, UK

This document is a preview generated by EVS

Web Pages. Static Web Pages SHTML

JavaScript. JavaScript: fundamentals, concepts, object model. Document Object Model. The Web Page. The window object (1/2) The document object

This is a preview - click here to buy the full publication INTERNATIONAL STANDARD

Systems and software engineering Lifecycle profiles for Very Small Entities (VSEs) Part 5-6-2:

Performance Testing for Ajax Applications

Chapter 1 Programming Languages for Web Applications

Iron Speed Designer Installation Guide

ANDROID APPS DEVELOPMENT FOR MOBILE GAME

APPLETS AND NETWORK SECURITY: A MANAGEMENT OVERVIEW

7-Bit coded Character Set

JavaScript Patterns. Stoyan Stefanov. O'REILLY' Beijing Cambridge Farnham Koln Sebastopol Tokyo

Proposed ECMAScript 4 th Edition Language Overview

Migrating Web Applications

Client-side Web Engineering From HTML to AJAX

Ecma/TC32-TG11/2012/005. What is CSTA? CSTA Overview. Updated by TG11 April 2012

JavaScript Basics & HTML DOM. Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com

Java vs. Java Script

OCS Training Workshop LAB13. Ethernet FTP and HTTP servers

ORACLE APPLICATION EXPRESS 5.0

Ecma/TC39/2013/NN. 4 th Draft ECMA-XXX. 1 st Edition / July The JSON Data Interchange Format. Reference number ECMA-123:2009

Ajax Development with ASP.NET 2.0

[ LiB ] [ LiB ] Learn JavaScript In a Weekend By Jerry Lee Ford, Jr. Publisher: Premier Press Pub Date: 2003 ISBN: X Pages: 472

ETSI TS V1.1.1 ( ) Technical Specification

Transition your MCPD Web Developer Skills to MCPD ASP.NET Developer 3.5 (VB)

QML and JavaScript for Native App Development

XML Processing and Web Services. Chapter 17

ISI ACADEMY Web applications Programming Diploma using PHP& MySQL

This document is a preview generated by EVS

Course Information Course Number: IWT 1229 Course Name: Web Development and Design Foundation

This document is a preview generated by EVS

This document is a preview generated by EVS

Standards for VoIP in the Enterprise

Entrust Managed Services PKI Administrator s Quick Start Guide

Objectif. Participant. Prérequis. Remarque. Programme. C# 3.0 Programming in the.net Framework. 1. Introduction to the.

Visualizing Software Projects in JavaScript

Microsoft Extending Microsoft Dynamics CRM 2011

C Compiler Targeting the Java Virtual Machine

Softwareudvikling Retningslinjer for anvendelse af ISO 9001:2008 til computersoftware

Lab Experience 17. Programming Language Translation

CONSOLIDATED VERSION IEC Medical device software Software life cycle processes. colour inside. Edition

Thomas Röthlisberger IT Security Analyst

Green Climate Fund Online Accreditation System: User s Guide

J j enterpririse. Oracle Application Express 3. Develop Native Oracle database-centric web applications quickly and easily with Oracle APEX

ISO Asset management. Management systems: Requirements. First edition

Web development... the server side (of the force)

JavaScript Testing. Beginner's Guide. Liang Yuxian Eugene. Test and debug JavaScript the easy way PUBLISHING MUMBAI BIRMINGHAM. k I I.

ECMAScript: A general purpose, cross-platform programming language

«W3Schools Home Next Chapter» JavaScript is THE scripting language of the Web.

Lecture 9. Semantic Analysis Scoping and Symbol Table

DEVELOPMENT OF THE INTEGRATING AND SHARING PLATFORM OF SPATIAL WEBSERVICES

INTERNATIONAL STANDARD

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Language Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages

HTTP State Management

SHAREPOINT 2010 DEVELOPMENT : IN THE CLOUD. Faraz Khan Senior Consultant RBA Consulting

Eclipse Web Tools Platform. Naci Dai (Eteration), WTP JST Lead

Technical paper review. Program visualization and explanation for novice C programmers by Matthew Heinsen Egan and Chris McDonald.

Checklist for Web Application Testing

AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev

YouTrack MPS case study

TypeScript for C# developers. Making JavaScript manageable

Chapter 1. Dr. Chris Irwin Davis Phone: (972) Office: ECSS CS-4337 Organization of Programming Languages

Writing and marking instruments Specification for caps to reduce the risk of asphyxiation

Java and Java Virtual Machine Security

Evolution of the Major Programming Languages

Transcription:

Standard ECMA-327 June 2001 Standardizing Information and Communication Systems ECMAScript 3 rd Edition Compact Profile Phone: +41 22 849.60.00 - Fax: +41 22 849.60.01 - URL: http://www.ecma.ch - Internet: helpdesk@ecma.ch

.

Draft Standard ECMA-327 June 2001 Standardizing Information and Communication Systems ECMAScript 3 rd Edition Compact Profile Phone: +41 22 849.60.00 - Fax: +41 22 849.60.01 - URL: http://www.ecma.ch - Internet: helpdesk@ecma.ch NBO ECMA-327.doc -07-01

.

Brief History This Standard defines ECMAScript Compact Profile as a subset of ECMA-262 (ECMAScript). ECMAScript is based on several originating technologies, the most well known being JavaScript (Netscape) and JScript (Microsoft). The language was invented by Brendan Eich at Netscape and first appeared in that company s Navigator 2.0 browser. It has appeared in all subsequent browsers from Netscape and in all browsers from Microsoft starting with Internet Explorer 3.0. The development of an ECMA standard began in November 1996. The first edition of ECMA-262 was adopted by the ECMA General Assembly of June 1997. That ECMA Standard was submitted to ISO/IEC JTC1 for adoption under the fast-track procedure, and approved as international standard ISO/IEC 16262, in April 1998. The ECMA General Assembly of June 1998 approved the second edition of ECMA-262 to keep it fully aligned with ISO/IEC 16262. Changes between the first and the second edition are editorial in nature. The third edition of ECMA-262 includes significant enhancements, for instance support for regular expressions, and improvements in regards to internationalisation. It was adopted by the ECMA General Assembly in December, 1999. This Standard defines the ECMAScript Compact Profile as a strict subset of the 3 rd edition of ECMA-262. The Compact Profile is intended to meet the needs of resource-constrained environments. This Standard has been adopted by the ECMA General Assembly of June 2001.

- i - Table of contents 1 Introduction 1 1.1 Scope 1 1.2 Conformance 1 2 Normative References 1 3 Definitions 1 4 Overview 1 5 Language 2 5.1 Runtime Compilation 2 5.2 Dynamic Modification of Built-in Objects 2 5.3 The with Statement 2

1 Introduction 1.1 Scope This Standard defines the ECMAScript Compact Profile (ES-CP) scripting language. 1.2 Conformance A conforming implementation of ES-CP must provide and support all the types, values, objects, properties, functions, and program syntax and semantics described or normatively referenced in this specification. A conforming implementation of ES-CP is permitted to provide additional types, values, objects, properties, and functions beyond those described in this specification. In particular, a conforming implementation of ES-CP is permitted to provide properties not described in this specification, and values for those properties, for objects that are described in this specification. 2 Normative References ECMA-262 ECMAScript Language Specification (3 rd Edition) 3 Definitions ES3 ES-CP ECMAScript Language Specification (ECMA-262), 3 rd Edition ECMAScript 3 rd Edition Compact Profile 4 Overview This section contains a non-normative overview of the ECMAScript Compact Profile language. ECMAScript 3 rd Edition is an object-based programming language for performing computations and manipulating computational objects within a host environment. ECMAScript Compact Profile is a subset of ECMAScript 3 rd Edition tailored to resource-constrained devices such as battery-powered embedded devices. Therefore, special attention is paid to constraining ECMAScript features that require proportionately large amounts of system memory (both for storing and executing the ECMAScript language features) and continuous or proportionately large amounts of processing power. Operations which can potentially consume lots of memory may exhaust the available memory in a resource constrained device. It is recommended that implementations of ES-CP provide a means for scripts to determine the amount of available memory, to allow the appropriate action to be taken when memory is in short supply. Implementations of ES-CP are also recommended to provide a means for scripts to determine the version of host objects (see ES3 section 4.3.8).

- 2-5 Language This section contains a normative description of ECMAScript 3 rd Edition Compact Profile. Unless specifically noted, ES-CP adopts all requirements of ECMA-262 3 rd Edition. 5.1 Runtime Compilation A conforming implementation of ES-CP SHALL support the global built-in object, but is NOT REQUIRED to support the global eval() method (ES3 section 15.1.2.1). A conforming implementation is NOT REQUIRED to support calling Function as a function (ES3 section 15.3.1.1) or as a constructor (ES3 section 15.3.2.1). An implementation that does not support global eval() or calling Function as a function or constructor SHALL throw an EvalError exception whenever global eval() (ES3 section 15.1.2.1), Function(p 1, p 2,..., p n, body) (ES3 section 15.3.1.1), or new Function(p 1, p 2,..., p n, body) (ES3 section 15.3.2.1) is called. NOTE Runtime compilation is one of the most resource intensive features of ECMA-262, and many target environments for ES-CP might not support it. Global eval() requires runtime compilation because the source text might not appear in the program (ECMA-262 sections 15.1.2.1 and 10.1.2). Runtime compilation is required to support the Function constructor and the Function function when the body is not a string literal. 5.2 Dynamic Modification of Built-in Objects A conforming implementation of ES-CP is NOT REQUIRED to allow addition, deletion or assignment to the properties of built-in objects, other than the global object. Built-in properties of the global object are READONLY and DONTDELETE. Properties of the global object introduced by declarations (ES3 section 10.1.3) may be modified but not deleted. If the implementation does not allow modifications to built-in objects, then it SHALL throw a ReferenceError exception when evaluating such modifications. NOTE The rationale for not requiring support for the modification of built-in objects is to allow more efficient implementations of ES-CP based upon static compilation of built-in objects without risking that the objects are mutated or shadowed by dynamically added properties. 5.3 The with Statement A conforming implementation is NOT REQUIRED to support the with statement (ES3 section 12.10). If with is not supported, use of a with statement results in a syntax error. NOTE The with statement makes access to named references inefficient, because the scopes for such access cannot be computed until runtime.

Free printed copies can be ordered from: ECMA 114 Rue du Rhône CH-1204 Geneva Switzerland Fax: +41 22 849.60.01 Email: documents@ecma.ch Files of this Standard can be freely downloaded from the ECMA web site (www.ecma.ch). This site gives full information on ECMA, ECMA activities, ECMA Standards and Technical Reports.

ECMA 114 Rue du Rhône CH-1204 Geneva Switzerland See inside cover page for obtaining further soft or hard copies.