IPDL: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 11: | Line 11: | ||
# <font color="gray">Static analysis of code implementing IPDL interfaces</font> | # <font color="gray">Static analysis of code implementing IPDL interfaces</font> | ||
# <font color="gray">Model checking of inter-protocol interactions</font> | # <font color="gray">Model checking of inter-protocol interactions</font> | ||
== Reference == | == Reference == | ||
Line 23: | Line 19: | ||
The [[IPDL/Low level setup]] walks you through setting up the support infrastructure (processes, threads, and sockets) that IPDL needs to send messages. Few people should need to read this. | The [[IPDL/Low level setup]] walks you through setting up the support infrastructure (processes, threads, and sockets) that IPDL needs to send messages. Few people should need to read this. | ||
== Other projects == | |||
* [[IPDL/Unit test generation]]: use IPDL specifications to generate unit tests that "extensively" explore the protocol-level interaction of two (or more) actors. The unit tests are intended to check the C++ implementation(s) of the actor interfaces. |
Revision as of 00:45, 25 July 2009
IPDL is the "Inter-*-communication Protocol Definition Language", where "*" includes "process" and "thread."
Status
The IPDL compiler is being implemented in stages.
- Basic code generation (no protocol management)
- Type checking and protocol management
- (IN PROGRESS) Protocol state machines
- Full dynamic safety checking
- Static analysis of code implementing IPDL interfaces
- Model checking of inter-protocol interactions
Reference
The IPDL/Getting started guide intends to be somewhat verbose and gentle introduction to the IPDL.
The IPDL/Five minute example shows examples of what C++ code you need to implement to make IPDL "work." Before reading this, you should be somewhat familiar with the IPDL (or good at learning by example.)
The IPDL/Low level setup walks you through setting up the support infrastructure (processes, threads, and sockets) that IPDL needs to send messages. Few people should need to read this.
Other projects
- IPDL/Unit test generation: use IPDL specifications to generate unit tests that "extensively" explore the protocol-level interaction of two (or more) actors. The unit tests are intended to check the C++ implementation(s) of the actor interfaces.