|
ref_send API 2.17 defensive programming in Java |
|||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
See:
Description
| Core API | |
|---|---|
| org.joe_e | Core Joe-E language features such as the Joe-E verified interfaces and methods for access to the overlay type system. |
| org.ref_send | A pass-by-construction interface. |
| org.ref_send.brand | An opaque, globally unique identifier. |
| org.ref_send.promise | A promise interface. |
| org.ref_send.scope | A pass-by-copy interface. |
| Example Applications | |
|---|---|
| org.ref_send.test | A simple test interface. |
| org.waterken.all | Runs all tests. |
| org.waterken.bang | A simple demonstration and test of eventual operations. |
| org.waterken.bounce | An argument passing test. |
| org.waterken.delayed | Delayed promise resolution test. |
| org.waterken.eq | Checks invariants of the ref_send API. |
| org.waterken.factorial | A tail recursive factorial implementation. |
| org.waterken.pipelined | Promise pipelining test. |
| org.waterken.serial | An infinite series of elements. |
| Collection | |
|---|---|
| org.joe_e.array | Read-only arrays. |
| org.joe_e.var | Common programming idioms for mutable state. |
| org.ref_send.list | A linked list. |
| Reflection | |
|---|---|
| org.joe_e.reflect | The reflection interface. |
| org.joe_e.taming | The taming database. |
| org.ref_send.type | Type definition manipulation. |
| I/O | |
|---|---|
| org.joe_e.charset | This package provides access to functions that require the use of Java character sets. |
| org.joe_e.file | The filesystem interface. |
| Logging | |
|---|---|
| org.ref_send.log | A log file format. |
| org.waterken.trace | An event logging implementation. |
| org.waterken.trace.application | Stack tracing implementation. |
| JSON | |
|---|---|
| org.waterken.syntax | A marshalling interface. |
| org.waterken.syntax.config | A folder of serialized configuration settings. |
| org.waterken.syntax.json | JSON <=> Java conversion. |
| Other Packages | |
|---|---|
| org.ref_send.markup | Human friendly annotation of a reference graph. |
Defensive programming in Java.
This library provides defensive programming primitives for the Java language similar to those defined in Mark Miller's dissertation: "Robust Composition: Towards a Unified Approach to Access Control and Concurrency Control". Through clever use of naming conventions and Java 1.5 language features, ref_send provides a syntactically convenient language for implementing defensively consistent Java classes. By using ref_send in tandem with the Joe-E verifier, developers can program in the object-capability paradigm using their preferred Java IDE and deploy their applications on stock JVMs with the performance characteristics of code written in the Java language.
|
ref_send API 2.17 defensive programming in Java |
|||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
Copyright 1998-2009 Waterken Inc. under the terms of the MIT X license.