Getting Started

From Erights

(Difference between revisions)
Jump to: navigation, search
(Other things you should know)
m (Reverted edits by Reverse101 (Talk); changed back to last version by Kevin Reid)
 
(10 intermediate revisions not shown)
Line 1: Line 1:
-
I wish someone had told me...
+
This page contains some helpful tips for people who are planning on learning E.
==Where to start==
==Where to start==
-
* You should have basic knowledge of [http://en.wikipedia.org/wiki/Java_%28language%29 Java] and its [http://en.wikipedia.org/wiki/Classpath_%28Java%29 class path system].  
+
* You should have basic knowledge of [[wikipedia:Java_(language)|Java]] and its [[wikipedia:Classpath_(Java)|class path system]].  
-
* [http://erights.org/download/index.html Download] and install E
+
* [[Downloads|Download]] and install '''''E'''''
-
* Read the [[Walnut]] - it is the most concise text on the E language and library.
+
* Read the [[Walnut]] - it is the most concise text on the '''''E''''' language and library.
-
* Bookmark the [http://erights.org/javadoc/index.html ELib api]
+
* Bookmark the [http://erights.org/javadoc/index.html ELib api].
-
* Either download the E source or open the e.jar (for example with unzip) and take a look around
+
* Either download the '''''E''''' source or open the e.jar (for example with unzip) and take a look around.
-
* You can get informations about E objects by using the help() method. For example, open rune and enter <pre>?help([])</pre>. You will get information about the ConstList class and its methods.
+
* You can get information about '''''E''''' objects by using the help() method. For example, open rune and enter:  
-
* Take a look at the file org.erights.e.elang.syntax/syntax-props-default.txt. It contains information about various language constructs not explained elsewhere at this point. [http://www2.deltamobile.com/wiki/Syntax-props-default.txt Here] is the version of the file included in E version 0.8.37b.
+
-
* The source also contains a number of emakers that can be used when developing programs. For example:
+
-
**org.erights.e.facet.makeStoneCast.emaker: An implementation of the [[Walnut/Secure_Distributed_Computing/Capability_Patterns#Facets|Facets]] pattern
+
-
**org.erights.e.facet.makeCaretaker.emaker: An implementation of the [[http://www2.deltamobile.com/wiki/Walnut/Secure_Distributed_Computing/Capability_Patterns#Revocable_Capabilities|Revocable Capabilities]] pattern
+
-
**org.erights.e.elib.slot.makeLamportSlot.emaker: An implementation of the [http://www.erights.org/javadoc/org/erights/e/elib/slot/EverReporter.html EverReporter] pattern/interface
+
-
==Other things you should know==
+
<code>? help([])</code>
-
* Declaring a Java class as safe for importing: Create a file with the extension .safej and save it to the same class path location as the java class you want to declare as safe. In the .safej file you can declare methods of that class as allowed or rejected. Take a look at the [[Safej_example]]. You can find more .safej files in the E distribution in the folder src/safej.
+
 
 +
You will get information about the ConstList class and its methods.
 +
*[[Syntax-props-default.txt]] contains information about various language constructs not explained elsewhere at this point.  In the '''''E''''' distribution, it is stored as: <code>org.erights.e.elang.syntax/syntax-props-default.txt</code>.
 +
* The source also contains a number of [[Walnut/Ordinary_Programming/Emakers|emakers]] that can be used when developing programs. For example:
 +
**<code>org.erights.e.facet.makeStoneCast.emaker</code>: An implementation of the [[Walnut/Secure_Distributed_Computing/Capability_Patterns#Facets|Facets]] pattern
 +
**<code>org.erights.e.facet.makeCaretaker.emaker</code>: An implementation of the [[Walnut/Secure_Distributed_Computing/Capability_Patterns#Revocable_Capabilities|Revocable Capabilities]] pattern
 +
**<code>org.erights.e.elib.slot.makeLamportSlot.emaker</code>: An implementation of the [http://www.erights.org/javadoc/org/erights/e/elib/slot/EverReporter.html EverReporter] pattern/interface
 +
 
 +
== [[Documentation]] and help==
 +
* The [[Walnut]]
 +
* The [http://erights.org/javadoc/index.html ELib api]
 +
* Documentation on the [http://www.erights.org ERights homepage]. See [[List_of_papers]]
 +
* The [http://www.eros-os.org/pipermail/e-lang/ '''''E''''' mailing list]. You can search the archives using google by including "site:eros-os.org" in the search field.

Latest revision as of 14:57, 1 November 2011

This page contains some helpful tips for people who are planning on learning E.

Where to start

  • You should have basic knowledge of Java and its class path system.
  • Download and install E
  • Read the Walnut - it is the most concise text on the E language and library.
  • Bookmark the ELib api.
  • Either download the E source or open the e.jar (for example with unzip) and take a look around.
  • You can get information about E objects by using the help() method. For example, open rune and enter:

? help([])

You will get information about the ConstList class and its methods.

  • Syntax-props-default.txt contains information about various language constructs not explained elsewhere at this point. In the E distribution, it is stored as: org.erights.e.elang.syntax/syntax-props-default.txt.
  • The source also contains a number of emakers that can be used when developing programs. For example:
    • org.erights.e.facet.makeStoneCast.emaker: An implementation of the Facets pattern
    • org.erights.e.facet.makeCaretaker.emaker: An implementation of the Revocable Capabilities pattern
    • org.erights.e.elib.slot.makeLamportSlot.emaker: An implementation of the EverReporter pattern/interface

Documentation and help

Personal tools
more tools