ServerJS: Difference between revisions
Jump to navigation
Jump to search
m (→Low-level APIs: add (red) link for String I/O) |
Wesgarland (talk | contribs) (GPSEE URL Change) |
||
| (15 intermediate revisions by 7 users not shown) | |||
| Line 1: | Line 1: | ||
This site is a starting point for collecting up ideas, links and any draft API suggestions for the [http://groups.google.com/group/ | <big>Wiki has moved to http://wiki.commonjs.org/ please make all further edits there</big> | ||
<div style="background: #999; border: 1px inset #aaa;"> | |||
'''Name change underway!''' | |||
This site is a starting point for collecting up ideas, links and 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 (#serverjs on freenode)]. | |||
== Meta == | == Meta == | ||
| Line 16: | Line 22: | ||
# [[ServerJS/Filesystem_API|Filesystem API]] | # [[ServerJS/Filesystem_API|Filesystem API]] | ||
# [[ServerJS/Binary|Binary Data Objects]] (byte arrays and/or strings) | # [[ServerJS/Binary|Binary Data Objects]] (byte arrays and/or strings) | ||
# [[ServerJS/IO|I/O Streams]] | |||
# [[ServerJS/Encodings|Encodings and character sets]] | # [[ServerJS/Encodings|Encodings and character sets]] | ||
# [[ServerJS/System|System Interface]] (stdin, stdout, stderr, &c) | # [[ServerJS/System|System Interface]] (stdin, stdout, stderr, &c) | ||
# [[ServerJS/C_API|C unified API]] to our Target Platforms | # [[ServerJS/C_API|C unified API]] to our Target Platforms | ||
# [[ServerJS/Unit_Testing|Unit testing]] | |||
[[ServerJS/Status|Pending Business / Calls for Action / Status Report]] | |||
== Future Efforts == | == Future Efforts == | ||
| Line 35: | Line 45: | ||
* [[ServerJS/Concurrency|Concurrency]] | * [[ServerJS/Concurrency|Concurrency]] | ||
* [[ServerJS/String_IO|String / ByteString I/O]] | * [[ServerJS/String_IO|String / ByteString I/O]] | ||
* [[ServerJS/Promises|Promises]] | |||
=== High-level APIs === | === High-level APIs === | ||
| Line 44: | Line 55: | ||
* [[ServerJS/XMPP|Jabber (XMPP)]] | * [[ServerJS/XMPP|Jabber (XMPP)]] | ||
* [[ServerJS/i18n|Internationalization]] | * [[ServerJS/i18n|Internationalization]] | ||
* [[ServerJS/ | * [[ServerJS/Promise_Manager|Promise Manager]] | ||
== Implementations == | |||
* [http://github.com/tlrobinson/narwhal Narwhal] (Rhino, v8; SecurableModules, File API draft 4 tier 1) | |||
* [http://flusspferd.org/ Flusspferd] (Spidermonkey/C++; SecurableModules) | |||
* [http://dev.helma.org/ng/ Helma NG] (Rhino; SecurableModules) | |||
* [http://code.google.com/p/v8cgi/ Ondrej Zara's v8cgi] (v8; SecurableModules) | |||
* [http://code.google.com/p/gpsee/ Wes Garland's GPSEE] (Spidermonkey/C; SecurableModules) | |||
* [http://github.com/kriskowal/chiron/ Kris Kowal's chiron] (Web browsers; SecurableModules) | |||
* [http://www.persvr.org/ Persevere] (Rhino; SecurableModules) | |||
In development: | |||
* nathan smith is implementing SecurableModules for JScript and ASP at http://github.com/smith/interoperablejscript/tree/master | |||
* mob is implementing SecurableModules in Ejscript http://www.ejscript.org | |||
* pmuellr posted a sample loader for SecurableModules: http://wiki.github.com/pmuellr/modjewel | |||
== Tests == | |||
* [http://github.com/tlrobinson/narwhal/tree/master/tests/serverjs ServerJS tests] compatible with [http://github.com/tlrobinson/narwhal/tree/master/lib/test this test framework]. | |||
== Further Reading == | == Further Reading == | ||
| Line 52: | Line 82: | ||
* [[ServerJS/High Level Tools|High Level Tools]] | * [[ServerJS/High Level Tools|High Level Tools]] | ||
* [[ServerJS/Random Links|Random Links]] | * [[ServerJS/Random Links|Random Links]] | ||
</div> | |||
Latest revision as of 23:02, 27 January 2010
Wiki has moved to http://wiki.commonjs.org/ please make all further edits there
Name change underway!
This site is a starting point for collecting up ideas, links and any draft API suggestions for the CommonJS group. Discussions occur on that mailing list and on IRC (#serverjs on freenode).
Meta
Current Efforts
This is a list of issues currently being discussed / standardized. They come from the "Low level" department, as we need to have a solid basics prior to building a tower.
- Modules
- Filesystem API
- Binary Data Objects (byte arrays and/or strings)
- I/O Streams
- Encodings and character sets
- System Interface (stdin, stdout, stderr, &c)
- C unified API to our Target Platforms
- Unit testing
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.
- Language and Runtime Services
- Socket I/O (TCP/IP)
- Command line processing
- Logging
- Relational database interface
- ResultSets (collections of data maybe from RDBMS, maybe from other sources)
- Web server to application interface (plus middleware)
- Concurrency
- String / ByteString I/O
- Promises
High-level APIs
This is the collection of APIs that implement common functionality on top of the low-level API.
Implementations
- Narwhal (Rhino, v8; SecurableModules, File API draft 4 tier 1)
- Flusspferd (Spidermonkey/C++; SecurableModules)
- Helma NG (Rhino; SecurableModules)
- Ondrej Zara's v8cgi (v8; SecurableModules)
- Wes Garland's GPSEE (Spidermonkey/C; SecurableModules)
- Kris Kowal's chiron (Web browsers; SecurableModules)
- Persevere (Rhino; SecurableModules)
In development:
- nathan smith is implementing SecurableModules for JScript and ASP at http://github.com/smith/interoperablejscript/tree/master
- mob is implementing SecurableModules in Ejscript http://www.ejscript.org
- pmuellr posted a sample loader for SecurableModules: http://wiki.github.com/pmuellr/modjewel
Tests
- ServerJS tests compatible with this test framework.