Category:E
This programming language may be used to instruct a computer to perform a task.
Official website |
---|
Garbage collected: | Yes |
---|---|
Parameter passing methods: | By value |
Type safety: | Safe |
Type strength: | Strong |
Type compatibility: | Duck |
Type expression: | Explicit |
Type checking: | Dynamic |
See Also: |
E is a programming language designed around object-capability security and event-loop concurrency, in order to support creation of highly robust and secure programs.
Using the Java implementation of E, Java libraries can be used from E code, and its REPL (e.g. Creating a Window).
Trying E
The current recommended E implementation ("E-on-Java") may be downloaded from erights.org.
To run an E program:
<lang sh>$ rune program.e</lang>
To get a REPL (aka prompt, shell, interactive interpreter):
<lang sh>$ rune</lang>
An online REPL is also available at #erights
on chat.freenode.net
.
Syntax of examples
While most of the examples on Rosetta Code are E expressions (programs), some may be written like this:
? expression # value: print representation
This is both the format of a transcript at an E REPL, and the format employed by Updoc, a test framework for E. “?” is a prompt for user input (“>” indicates multi-line input) and “# foo:” indicates responses.
# value:
the return value of the expression, printed# problem:
an exception thrown by evaluation of the expression# syntax error:
an exception thrown by parsing of the expression# stdout:
or# stderr:
text written to thestdout
orstderr
streams. It is typically only used in test scripts and not in ordinary interactive sessions.
To try out these examples for yourself, just install E and run the rune
command to get the “?” prompt. Multi-line input is automatic for unbalanced brackets/parens and can be indicated in other cases by a trailing backslash.
See Also
Subcategories
This category has the following 3 subcategories, out of 3 total.
@
- E examples needing attention (19 P)
- E Implementations (1 P)
- E User (2 P)
Pages in category "E"
The following 200 pages are in this category, out of 269 total.
(previous page) (next page)A
- Abstract type
- Accumulator factory
- Ackermann function
- Active object
- Algebraic data types
- Align columns
- Amb
- Anagrams
- Animate a pendulum
- Animation
- Apply a callback to an array
- Arbitrary-precision integers (included)
- Arithmetic evaluation
- Arithmetic/Integer
- Array concatenation
- Arrays
- Assertions
- Associative array/Creation
- Associative array/Iteration
- Atomic updates
- Averages/Arithmetic mean
- Averages/Median
- Averages/Mode
- Averages/Pythagorean means
- Averages/Root mean square
- Averages/Simple moving average
B
C
- Call an object method
- Character codes
- Check that file exists
- Checkpoint synchronization
- Classes
- Collections
- Combinations
- Command-line arguments
- Comments
- Compound data type
- Concurrent computing
- Conditional structures
- Constrained genericity
- Conway's Game of Life
- Copy a string
- Create a file
- Cumulative standard deviation
D
- Deepcopy
- Define a primitive data type
- Delegates
- Delete a file
- Detect division by zero
- Determine if a string is numeric
- Dining philosophers
- Distributed programming
- Documentation
- Doubly-linked list/Definition
- Doubly-linked list/Element definition
- Doubly-linked list/Element insertion
- Doubly-linked list/Traversal
- Dynamic variable names
E
F
- Factorial
- Factors of an integer
- Fibonacci sequence
- File input/output
- File modification time
- File size
- Filter
- Find limit of recursion
- First-class functions
- First-class functions/Use numbers analogously
- FizzBuzz
- Flatten a list
- Flow-control structures
- Forward difference
- Function composition
- Function definition
G
H
I
L
M
N
P
- Palindrome detection
- Pangram checker
- Parametric polymorphism
- Partial function application
- Pascal's triangle
- Percentage difference between images
- Perfect numbers
- Playing cards
- Pointers and references
- Polymorphic copy
- Polymorphism
- Polynomial long division
- Power set
- Primality by trial division
- Prime decomposition
- Probabilistic choice
- Program termination
R
- Random numbers
- Range extraction
- Rate counter
- Read entire file
- Real constants and functions
- Remove duplicate elements
- Rename a file
- Repeat a string
- Respond to an unknown method call
- Reverse a string
- Rosetta Code/Find unimplemented tasks
- Rot-13
- Run-length encoding
- Runtime evaluation
- Runtime evaluation/In an environment