Object-capability languages

From Erights

(Difference between revisions)
Jump to: navigation, search
(Corrected link to the tamed version of the original Pict programming language.)
(Related to E)
 
(22 intermediate revisions not shown)
Line 1: Line 1:
== Independent or Prior Objcap Languages ==
== Independent or Prior Objcap Languages ==
 +
Dynamic
* [http://www.erights.org/history/morris73.pdf Gedanken]
* [http://www.erights.org/history/morris73.pdf Gedanken]
* [http://www.erights.org/history/actors.html Actors]
* [http://www.erights.org/history/actors.html Actors]
Line 6: Line 7:
* [http://www.agorics.com/Library/joule.html Joule]
* [http://www.agorics.com/Library/joule.html Joule]
* [http://mumble.net/~jar/pubs/secureos/ W7]
* [http://mumble.net/~jar/pubs/secureos/ W7]
-
* [http://portal.acm.org/citation.cfm?doid=323627.323646 Eden, Emerald]
 
-
* [http://citeseer.ist.psu.edu/279442.html J-Kernel]
 
* [http://plash.beasts.org Plash]
* [http://plash.beasts.org Plash]
* [http://prog.vub.ac.be/amop/ AmbientTalk]
* [http://prog.vub.ac.be/amop/ AmbientTalk]
* [http://newspeaklanguage.org/ Newspeak]
* [http://newspeaklanguage.org/ Newspeak]
-
* [http://www.erlang.org/ Erlang] - Erlang is almost, but not quite an object-capability language.
+
* [http://evlan.org/ Evlan] (Possibly statically typed in future editions)
 +
 
 +
Static
 +
* [http://www.ponylang.org/ Pony]
 +
* [http://portal.acm.org/citation.cfm?doid=323627.323646 Eden, Emerald]
 +
* [http://citeseer.ist.psu.edu/279442.html J-Kernel]
 +
* [http://www.bitc-lang.org/ BitC]
 +
* [https://docs.google.com/document/d/1bOwopBgJWgzroObINBmopy1Gjy2OoXx_BdOSR94ydQQ/edit?hl=en# Heftza]
== Related to '''''E''''' ==
== Related to '''''E''''' ==
Line 23: Line 29:
|-
|-
| C/C++ || [http://erights.org/e-impls/e-on-c/index.html MC] [http://washort.twistedmatrix.com/2008/07/ecru-c-runtime-for-e.html Ecru] ||  
| C/C++ || [http://erights.org/e-impls/e-on-c/index.html MC] [http://washort.twistedmatrix.com/2008/07/ecru-c-runtime-for-e.html Ecru] ||  
 +
|-
 +
| Scala ||  || [http://asyncobjects.sourceforge.net/asyncscala/ AsyncScala]
|-
|-
| [http://www.erights.org/javadoc/org/erights/e/elang/smallcaps/SmallcapsOps.html Smallcaps] || [http://erights.org/e-impls/e-on-smallcaps/index.html E-on-Smallcaps] ||  
| [http://www.erights.org/javadoc/org/erights/e/elang/smallcaps/SmallcapsOps.html Smallcaps] || [http://erights.org/e-impls/e-on-smallcaps/index.html E-on-Smallcaps] ||  
Line 28: Line 36:
| [http://www.squeak.org/ Squeak] || [http://erights.org/e-impls/e-on-squeak/index.html E-on-Squeak] ||  [http://www.squeaksource.com/SecureSqueak.html SecureSqueak] [http://wiki.squeak.org/squeak/6011 SqueakElibVM]
| [http://www.squeak.org/ Squeak] || [http://erights.org/e-impls/e-on-squeak/index.html E-on-Squeak] ||  [http://www.squeaksource.com/SecureSqueak.html SecureSqueak] [http://wiki.squeak.org/squeak/6011 SqueakElibVM]
|-
|-
-
| Common Lisp || [http://erights.org/e-impls/e-on-cl/index.html E-on-CL] || [http://www.eros-os.org/pipermail/e-lang/2005-April/010572.html CL-E]
+
| Common Lisp || [[E-on-CL]] || [http://www.eros-os.org/pipermail/e-lang/2005-April/010572.html CL-E]
|-
|-
| [http://caml.inria.fr/ocaml/index.en.html OCaml] ||  || [[Emily]]
| [http://caml.inria.fr/ocaml/index.en.html OCaml] ||  || [[Emily]]
|-
|-
-
| [http://www.haskell.org/ Haskell] || [http://homepage.mac.com/kpreid/elang/ E-on-Haskell] || [http://code.google.com/p/caskell/ Caskell]
+
| [http://www.haskell.org/ Haskell] || [[E-on-Haskell]], [[eonhs]] || [http://code.google.com/p/caskell/ Caskell]
|-
|-
-
| Python || || [http://twistedmatrix.com/ Twisted Python] [http://foolscap.lothar.com/trac FoolsCap] [http://www.cs.ubc.ca/~drifty/papers/python_security.pdf Secure Python] [http://plash.beasts.org/wiki/CapPython CapPython] [http://code.google.com/p/googleappengine/issues/detail?id=671 safelite]
+
| Python || || [http://twistedmatrix.com/ Twisted Python] [http://foolscap.lothar.com/trac FoolsCap] [http://monte.readthedocs.org/en/latest/index.html Monte]
|-
|-
| Perl || || [http://caperl.links.org/ CaPerl]
| Perl || || [http://caperl.links.org/ CaPerl]
|-
|-
-
| [http://www.cis.upenn.edu/~bcpierce/papers/pict/Html/Pict.html Pict] || || [http://altair.fiit.stuba.sk/mediawiki/index.php/Tamed_Pict Tamed Pict]
+
| [http://www.cis.upenn.edu/~bcpierce/papers/pict/Html/Pict.html Pict] || || [http://www2.fiit.stuba.sk/~kosik/tamed-pict.html Tamed Pict]
|-
|-
| E || E-on-E ||
| E || E-on-E ||
Line 44: Line 52:
|  || || [http://sebyla.sourceforge.net/ Sebyla]
|  || || [http://sebyla.sourceforge.net/ Sebyla]
|-
|-
-
| Javascript || [[E-on-JS]] || [http://code.google.com/p/google-caja/ Caja] [http://www.adsafe.org/ ADsafe] [http://wiki.developers.facebook.com/index.php/FBJS FBJS][http://video.google.com/videoplay?docid=452089494323007214 Vats on Gears] [http://www.jacaranda.org/jacaranda-spec-0.3.txt Jacaranda] [http://websandbox.livelabs.com/ Microsoft WebSandbox]
+
| Javascript || [[E-on-JS]] || [https://mail.mozilla.org/pipermail/es-discuss/2010-August/011684.html proposed Secure EcmaScript (SES)] [http://code.google.com/p/google-caja/ Caja] [http://www.adsafe.org/ ADsafe] [http://wiki.developers.facebook.com/index.php/FBJS FBJS][http://video.google.com/videoplay?docid=452089494323007214 Vats on Gears] [http://jacaranda.org/ Jacaranda] [http://websandbox.livelabs.com/ Microsoft WebSandbox] [http://research.microsoft.com/en-us/projects/gatekeeper/ Gatekeeper] [http://www.sitepen.com/blog/2008/08/01/secure-mashups-with-dojoxsecure/ Dojo Secure]
|}
|}
Also applicable to ML and Haskell style systems: [http://okmij.org/ftp/papers/lightweight-static-capabilities.pdf Lightweight Static Capabilities]
Also applicable to ML and Haskell style systems: [http://okmij.org/ftp/papers/lightweight-static-capabilities.pdf Lightweight Static Capabilities]

Latest revision as of 15:41, 5 April 2016

Independent or Prior Objcap Languages

Dynamic

Static

Related to E

Relationships of E and other languages
Base language E Implementation Adapted to objcaps
Java E-on-Java Joe-E Waterken AsyncObjects
Mozart/Oz Oz-E
C/C++ MC Ecru
Scala AsyncScala
Smallcaps E-on-Smallcaps
Squeak E-on-Squeak SecureSqueak SqueakElibVM
Common Lisp E-on-CL CL-E
OCaml Emily
Haskell E-on-Haskell, eonhs Caskell
Python Twisted Python FoolsCap Monte
Perl CaPerl
Pict Tamed Pict
E E-on-E
Sebyla
Javascript E-on-JS proposed Secure EcmaScript (SES) Caja ADsafe FBJSVats on Gears Jacaranda Microsoft WebSandbox Gatekeeper Dojo Secure


Also applicable to ML and Haskell style systems: Lightweight Static Capabilities

Personal tools
more tools