<mediawiki xmlns="http://www.mediawiki.org/xml/export-0.9/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mediawiki.org/xml/export-0.9/ http://www.mediawiki.org/xml/export-0.9.xsd" version="0.9" xml:lang="en">
  <siteinfo>
    <sitename>CommonJS Spec Wiki</sitename>
    <dbname>wikidb</dbname>
    <base>https://wiki.commonjs.org/wiki/CommonJS</base>
    <generator>MediaWiki 1.24.1</generator>
    <case>first-letter</case>
    <namespaces>
      <namespace key="-2" case="first-letter">Media</namespace>
      <namespace key="-1" case="first-letter">Special</namespace>
      <namespace key="0" case="first-letter" />
      <namespace key="1" case="first-letter">Talk</namespace>
      <namespace key="2" case="first-letter">User</namespace>
      <namespace key="3" case="first-letter">User talk</namespace>
      <namespace key="4" case="first-letter">CommonJS</namespace>
      <namespace key="5" case="first-letter">CommonJS talk</namespace>
      <namespace key="6" case="first-letter">File</namespace>
      <namespace key="7" case="first-letter">File talk</namespace>
      <namespace key="8" case="first-letter">MediaWiki</namespace>
      <namespace key="9" case="first-letter">MediaWiki talk</namespace>
      <namespace key="10" case="first-letter">Template</namespace>
      <namespace key="11" case="first-letter">Template talk</namespace>
      <namespace key="12" case="first-letter">Help</namespace>
      <namespace key="13" case="first-letter">Help talk</namespace>
      <namespace key="14" case="first-letter">Category</namespace>
      <namespace key="15" case="first-letter">Category talk</namespace>
      <namespace key="102" case="first-letter">Property</namespace>
      <namespace key="103" case="first-letter">Property talk</namespace>
      <namespace key="104" case="first-letter">Type</namespace>
      <namespace key="105" case="first-letter">Type talk</namespace>
      <namespace key="106" case="first-letter">Form</namespace>
      <namespace key="107" case="first-letter">Form talk</namespace>
      <namespace key="108" case="first-letter">Concept</namespace>
      <namespace key="109" case="first-letter">Concept talk</namespace>
      <namespace key="170" case="first-letter">Filter</namespace>
      <namespace key="171" case="first-letter">Filter talk</namespace>
      <namespace key="200" case="first-letter">Website</namespace>
      <namespace key="201" case="first-letter">Website talk</namespace>
    </namespaces>
  </siteinfo>
  <page>
    <title>CommonJS</title>
    <ns>0</ns>
    <id>30</id>
    <revision>
      <id>5822</id>
      <parentid>5815</parentid>
      <timestamp>2011-10-09T19:22:42Z</timestamp>
      <contributor>
        <username>9mpPoEw34i</username>
        <id>5386</id>
      </contributor>
      <text xml:space="preserve" bytes="3897">Welcome to [http://commonjs.org CommonJS], a group with a goal of building up the JavaScript ecosystem for web servers, desktop and command line apps and in the browser.

This wiki is a starting point for collecting up ideas, any draft API suggestions for the [http://groups.google.com/group/commonjs CommonJS group]. Discussions occur on that mailing list and [http://log.serverjs.org/mochabot/join on IRC (#commonjs on freenode)].

== Meta ==

* [[Introduction]]
* [[FAQ]]
* [[Process]]
* [[Target Platforms]]
* [[Coding Standards]]

== Current Efforts ==

This is  a list of issues currently being discussed / standardized. They come from the &quot;Low level&quot; department, as we need to have solid basics prior to building a tower.


# [[Global|Uniform Baseline / Globals]] (discussion)
# [[Modules]] ([[Modules/1.1.1|1.1.1]])
## &lt;code&gt;binary&lt;/code&gt;: [[Binary]] Data Objects (byte arrays and/or strings) (proposals, discussion, early implementations)
## &lt;code&gt;encodings&lt;/code&gt;: [[Encodings]] and character sets (proposals, discussion, early implementations)
## &lt;code&gt;io&lt;/code&gt;: [[IO|I/O Streams]] (proposals, discussion)
## &lt;code&gt;fs&lt;/code&gt;, &lt;code&gt;fs-base&lt;/code&gt;: [[Filesystem]] (proposals, discussion, early implementations)
## &lt;code&gt;system&lt;/code&gt;: [[System]] Interface (stdin, stdout, stderr, &amp;c) ([[System/1.0|1.0]], amendments proposed)
## &lt;code&gt;assert&lt;/code&gt;, &lt;code&gt;test&lt;/code&gt;: [[Unit Testing]] ([[Unit_Testing/1.0|1.0]], amendment proposals pending)
## &lt;code&gt;sockets&lt;/code&gt;: [[Sockets|Socket I/O]] TCP/IP sockets (early proposals)
## &lt;code&gt;event-queue&lt;/code&gt;: [[Reactor]] Reactor/Event Queue (early proposals)
## &lt;code&gt;worker&lt;/code&gt;: [[Worker]] Worker (concurrent shared nothing process/thread) (proposal)
## &lt;code&gt;console&lt;/code&gt;: [[console]] (proposal)
# [[Packages]] ([[Packages/1.0|1.0]])
# [[Packages/Mappings/C|Package Mappings]] (proposal)
# [[JSGI|Web Server Gateway Interface (JSGI)]] (proposals, discussion, early implementations)
# [[Promises]] (proposal)

* [[Status|Pending Business / Calls for Action / Status Report]]

== Future Efforts ==

=== Low-level APIs ===

This is the collection of APIs that we'd like to see behaving consistently across JavaScript interpreters.

* [[Runtime Services|Language and Runtime Services]]
* [[Logging]]
* [[RDBMS|Relational database interface]]
* ResultSets (collections of data maybe from RDBMS, maybe from other sources)
* [[Concurrency]]
* [[String IO|String / ByteString I/O]]
* [[C API|C unified API]] to our Target Platforms
* [[Subprocess]]es (popen)

=== High-level APIs ===

This is the collection of APIs that implement common functionality on top of the low-level API.

* [[HTTP Client|HTTP client]] APIs
* [[Email]]
* [[XMPP|Jabber (XMPP)]]
* [[i18n|Internationalization]]
* [[Promise Manager]]
* [[Command Line|Command line processing]]

== Implementations ==
{{ImplementationsTable
|standards={{#ask: [[Category:Spec]] [[Is standard::yes]] | link=none }}
|non-standards={{#ask: [[Category:Spec]] [[Is standard::no]] [[Has implementations::yes]] | link=none }}
}}

=== In development ===
* mob is implementing SecurableModules in Ejscript http://www.ejscript.org
* pmuellr posted a sample loader for SecurableModules: http://wiki.github.com/pmuellr/modjewel
* atul varma has a SecurableModule implementation for Python/Spidermonkey: http://hg.toolness.com/pydertron/raw-file/tip/docs.html
* [[User: Alexandre.Morgaut|Alexandre]] implements several commonJS standards in Wakanda (SquirrelFish) http://www.wakandasoft.com
* Titanium is in the process of adding support for CommonJS. http://www.appcelerator.com

== Tests ==

* [http://github.com/280north/narwhal/tree/master/tests/commonjs/ CommonJS tests] compatible with [http://github.com/280north/narwhal/tree/master/lib/test/ this test framework].

== Further Reading ==
* [[Existing APIs]]
* [[Infrastructure]]
* [[High Level Tools]]
* [[Random Links]]

== Wiki ==
* [[Dumps]]</text>
      <sha1>58cvr134brf5hp1cd04gmd74fj9lodz</sha1>
      <model>wikitext</model>
      <format>text/x-wiki</format>
    </revision>
  </page>
</mediawiki>
