Quick Start for E
Language Programming:
|
Download
E 0.8.9 |
After reading the licenses,
get your own copy of E.
(All licenses are Mozilla or Mozilla compatible open source licenses.) |
E
in a Walnut
|
Marc Stiegler's draft tutorial book on E
language programming. |
Tutorial |
Additional useful introductory material. |
Quick Reference Card |
Reminders of some useful patterns you've learned. |
email Archive |
Browse the archive of E-Lang email list discussions. |
An Ode to the Granovetter
Diagram |
Also known as Capability-based Financial Instruments. Explains
the rationale for E from
lambda-calculus concepts up through Smart Contracts. |
What's New?
|
Secure
UI Draft Design |
Miriam Walker & Ka-Ping Yee break important new ground: A secure
graphical user interface for interacting with a general purpose
secure platform.
Even more important: their seven principles of secure UI design!
|
Older News |
Highlights of "What's New?" past. |
What is E?
E defines and
implements a pure object model of secure distributed persistent
computation. It has two parts:
|
ELib provides
the stuff that goes on between objects. |
|
As a pure-Java library, ELib provides
for inter-process capability-secure
distributed programming. Its cryptographic capability protocol
enables mutually suspicious Java processes to cooperate safely, and
its event-loop concurrency
and message pipelining
enable high performance deadlock
free distributed pure-object computing. |
The E
Language can be used to express what happens within an
object. |
def alice {
to doSomething() {
bob foo(carol)
}
}
|
|
The E language provides
a convenient and familiar notation
for the ELib computational model, so you can program in one model
rather than two. Under the covers, this notation expands into Kernel-E,
a minimalist lambda-language much like Scheme or Smalltalk.
Objects written in the E
language are only able to interact with other objects according
to ELib's semantics, enabling object granularity intra-process
security, including the ability to safely run untrusted mobile code
(such as caplets).
|
Smart
Contracts: Patterns of Cooperation without Vulnerability
|
|
A contract is a mutually agreeable arrangement of rules
among mutually suspicious parties so they may cooperate with limited
risks to each other's mischief. It is a game both are willing to
play because both expect to win.
A conventional contract is passive paper interpreted at great expense
by lawyers and courts.
A smart contract is written in program code, in which the
logic of the program's execution enforce the terms of the contract.
Smart contracts reduce costs by orders of magnitude, leading to
a more cooperative world.
|
History:
Where does E come from?
|
Feedback Please
|
|
See this page as annotated by others, or annotate it yourself. |
webmaster@erights.org
|
To send me comments directly. Here's
my public key. |
Donations |
Please help support the E
Project. |
|
Click to see prices for this and other related domain names. |