ServerJS/Filesystem API: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(→‎Prior Art: FileSystemObject)
 
(12 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== Requirements/Proposals ==
* [[ServerJS/Filesystem_API/A|Filesystem API Proposal A]]
* [[ServerJS/Filesystem_API/Hierarchy|File API Class hierarchy proposal]]
* [[ServerJS/Filesystem_API/Names|File API name preferences questionnaire]]
* Summary/Comparison of current File APIs used by JS engines: [http://spreadsheets.google.com/pub?key=p9uiX8MUHeTiP0kPT591RUw ServerJS File Object Survey]
* [[/Show of hands|Show of hands]]
== Prior Art ==
== Prior Art ==


* Microsoft [http://msdn.microsoft.com/en-us/library/z9ty6h50.aspx Scripting.FileSystemObject]. Used in classic ASP, WSH, HTAs.
* Microsoft [http://msdn.microsoft.com/en-us/library/z9ty6h50.aspx Scripting.FileSystemObject]. Used in classic ASP, WSH, HTAs.
* JavaScript File object proposal http://www.mozilla.org/js/js-file-object.html (~1998)
* [http://www.mozilla.org/js/js-file-object.html JavaScript File object proposal] (~1998)
* [https://developer.mozilla.org/En/SpiderMonkey:File_object Spidermonkey File object]
* [https://developer.mozilla.org/En/SpiderMonkey:File_object Spidermonkey File object]
* [http://synchro.net/ Synchronet] provides a File Class that was originally inspired by SpiderMonkey's jsfile.c, but has been widely used and enhanced over the years: http://synchro.net/docs/jsobjs.html#File
* [http://synchro.net/ Synchronet] provides a [http://synchro.net/docs/jsobjs.html#File File Class] that was originally inspired by SpiderMonkey's jsfile.c, but has been widely used and enhanced over the years.
* [http://www.ejscript.org/products/ejs/doc/api/gen/ejscript/ejs.io-File.html This File class] from Ejscript is still evolving but is fairly comprehensive. It supports stackable streams such as BinaryStream, StringStream. It can also do I/O to and from a ByteArray class.
* Ejscript's [http://www.ejscript.org/products/ejs/doc/api/gen/ejscript/ejs.io-File.html File class] is still evolving, but is fairly comprehensive. It supports stackable streams such as BinaryStream, StringStream. It can also do I/O to and from a ByteArray class.
* JSExt.File http://jsext.sourceforge.net/JSEXT1.File.html
* [http://jsext.sourceforge.net/JSEXT1.File.html JSExt.File]
* jslibs jsio module http://code.google.com/p/jslibs/wiki/jsio
* [http://code.google.com/p/jslibs/wiki/jsio jslibs jsio module]
* wxJavascript IO module http://www.wxjavascript.net/io/index.html
* [http://www.wxjavascript.net/io/index.html wxJavascript IO module]
* v8cgi has a [http://code.google.com/p/v8cgi/wiki/API#File_functions File] and [http://code.google.com/p/v8cgi/wiki/API#Directory_functions Directory] interfaces
* v8cgi has a [http://code.google.com/p/v8cgi/wiki/API#File_functions File] and [http://code.google.com/p/v8cgi/wiki/API#Directory_functions Directory] interfaces
* helma has two File apis. One [http://helma.zumbrunn.com/reference/File.html deprecated] and one [http://helma.zumbrunn.com/reference/helma.File.html current]
* helma has two File apis. One [http://helma.zumbrunn.com/reference/File.html deprecated] and one [http://helma.zumbrunn.com/reference/helma.File.html current]
* adobe's extendscript has a File constructor.Documentation is difficult to find online.
* adobe's extendscript has a File constructor.Documentation is difficult to find online.
* generic [http://koberg.com/ripple/docs/api/ collection/document resource] (java) api (work in process)
* generic [http://koberg.com/ripple/docs/api/ collection/document resource] (java) api (work in process)
* Opera Software's [http://dev.opera.com/articles/view/file-i-o-api-for-widgets/ File I/O API for widgets], which will probably be standardized by the [http://www.w3.org/2006/webapi/ W3C Web API Working Group].
=== Inspiration  ===
* (Python) PEP on new File IO http://www.python.org/dev/peps/pep-3116/
* Java File API http://java.sun.com/j2se/1.4.2/docs/api/java/io/File.html
* Java Output API http://java.sun.com/j2se/1.4.2/docs/api/java/io/FileOutputStream.html
* Java Input API http://java.sun.com/j2se/1.4.2/docs/api/java/io/FileInputStream.html
* E Secure File API http://www.erights.org/javadoc/java/io/File.html
* Joe-E Secure File System API http://www.cs.berkeley.edu/~daw/joe-e/api/org/joe_e/file/Filesystem.html
* Python Path API http://docs.python.org/library/os.path.html
* Ruby File API http://www.ruby-doc.org/core/classes/File.html
* Ruby IO API http://www.ruby-doc.org/core/classes/IO.html
* Perl Path::Class http://search.cpan.org/perldoc?Path::Class
* PHP Filesystem http://php.net/manual/book.filesystem.php

Latest revision as of 23:25, 28 August 2009

Requirements/Proposals

Prior Art

Inspiration