The cl-myriam Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The cl-myriam Reference Manual

This is the cl-myriam Reference Manual, version 0.1.3, generated automatically by Declt version 3.0 "Montgomery Scott" on Sun May 15 03:59:56 2022 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Introduction

cl-myriam

myriam is a simple attempt at implementing the actor model for secure, distributed programming. Feedback is very welcome!

This is a Common Lisp port of my myriam Chicken Scheme egg. It's already at feature parity with its Scheme sister, aside from the ability to send functions/closures (and obviously, no continuations either), and uses ZMQ instead of NNG for messaging, which means we can make use of CurveZMQ for easier encryption and (some) authentication.

The API is very much unstable at the moment.

Requirements

Myriam stands on the shoulders of giants.

Usage

cl-myriam is on Quicklisp, so you can load it with (ql:quickload :cl-myriam).

Otherwise, you can load the :cl-myriam system directly and require the :myriam package. Everything you need is in there.

Make sure to check the tests folder for examples.

spawn

(spawn &rest actions) -> (values string thread)

Spawn an actor and return its address and thread. If no actions are specified, the actor will only react to predefined actions.

action

(action name task &optional context) -> action

Create an action for an actor definition. name should be a keyword. task should be a function with any number of arguments (or no arguments). context should be either :sync, :async or :any and defaults to :async; it specifies the context in which a task can be executed, e.g. :sync tasks will be executed synchronously and it's what you'll want if you expect to get a value out of them.

msg

(msg head &rest body) -> message

Create a message to be sent to an actor. head should be a keyword corresponding to the name of a task defined in the target actor. Arguments in body, if any, will be passed to the task to be executed.

send and send*

(send address msg)

(send* address msg) -> (or * (values nil nil))

Send a message to an actor to be executed either in an asynchronous (send) or synchronous (send*) context. msg should correspond in context, task name and number of arguments with the target task.

About identities

Identities encapsulate encryption keys. A self-identity contains both a public and secret key, while a public-identity contains only a public key.

Actors are spawned with the self-identity inside *current-self-identity* (which means that many actors can share the same identity, if you want). Outgoing messages need *target-public-identity* to be set with a public-identity for encryption.

make-self-identity

(make-self-identity) -> self-identity

Make a self-identity with a keypair.

self->public-identity

(self->public-identity self-id) -> public-identity

Make a public-identity from the public key in self-id.

with-self-identity

(with-self-identity id &body body)

Execute body with *current-self-identity* set with self-identity id.

with-target-identity

(with-target-identity id &body body)

Execute body with *target-public-identity* set with public-identity id.

Messaging

ping

(send address (msg :ping))

Check if an actor is alive.

stop

(send address (msg :stop))

Stop an actor.

store

(send address (msg :store key datum))

Store datum into an actor's internal storage. key should be a keyword.

fetch

(send address (msg :fetch key))

Fetch a value from an actor's internal storage, or nil of there is no such value. key should be a keyword.

*self*

Dynamic variable useful for referring to an actor's self address.

*send-timeout*

Time to wait for a reply before killing the connection.

Authentication

By default, actors accept all incoming messages. You need to spawn an authenticator to filter out connections based on host and identities.

spawn-authenticator

(spawn-authenticator accept-p &optional name) -> (values bt:thread name)

Spawn an authenticator (a ZAP server). accept-p should be a predicate which takes an IP address and the public key of the authenticating client (as a byte vector); an incoming connection will be either accepted or rejected based on the result of accept-p. Name shoule be a unique string and it can be used for terminating the authenticator. You can only spawn a single authenticator per context, see below.

kill authenticator

(kill-authenticator name)

Kill the given authenticator.

authenticator-alive-p

(authenticator-alive-p name) -> boolean

Test if the authenticator with the given name is alive.

Contexts

Contexts allow you to separate actor groups with different authentication parameters. Without contexts, you're limited to one authenticator per application.

(defparameter a
  (myr:with-new-context
    (let ((authenticator (myr:spawn-authenticator
                          (lambda (ip key)
                            (declare (ignore key))
                            (string= ip "127.0.0.1")))))
      (declare (ignore authenticator))
      (myr:spawn))))

In this example, a will only accept connections from localhost.

with-new-context

(with-new-context &body forms)

Execute forms in a fresh context. Mostly used to spawn actors under an authenticator with specific parameters.

Utilities

change-host

(change-host address new-host) -> valid-address

Replace the host in address for new-host.

all-actors

(all-actors) -> list

Get a list of all local actors.

stop-all-actors

(stop-all-actors)

Stop all local actors.

Notes

Current limitations/caveats


Next: , Previous: , Up: Top   [Contents][Index]

2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 cl-myriam

Author

Ariela Wenner

License

3-clause BSD

Description

Simple actor model implementation for local and remote actors

Version

0.1.3

Dependencies
Source

cl-myriam.asd (file)

Components

Next: , Previous: , Up: Top   [Contents][Index]

3 Modules

Modules are listed depth-first from the system components tree.


Previous: , Up: Modules   [Contents][Index]

3.1 cl-myriam/src

Dependency

package.lisp (file)

Parent

cl-myriam (system)

Location

src/

Components

Next: , Previous: , Up: Top   [Contents][Index]

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

4.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.1 cl-myriam.asd

Location

cl-myriam.asd

Systems

cl-myriam (system)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.2 cl-myriam/package.lisp

Parent

cl-myriam (system)

Location

package.lisp

Packages

myriam


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.3 cl-myriam/src/utils.lisp

Parent

src (module)

Location

src/utils.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.4 cl-myriam/src/conditions.lisp

Parent

src (module)

Location

src/conditions.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.5 cl-myriam/src/address.lisp

Parent

src (module)

Location

src/address.lisp

Exported Definitions

change-host (function)

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.6 cl-myriam/src/identity.lisp

Parent

src (module)

Location

src/identity.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.7 cl-myriam/src/context.lisp

Parent

src (module)

Location

src/context.lisp

Exported Definitions

with-new-context (macro)

Internal Definitions

*context* (special variable)


Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.8 cl-myriam/src/authentication.lisp

Parent

src (module)

Location

src/authentication.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.9 cl-myriam/src/messaging.lisp

Parent

src (module)

Location

src/messaging.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

4.1.10 cl-myriam/src/action.lisp

Parent

src (module)

Location

src/action.lisp

Exported Definitions
Internal Definitions

Previous: , Up: Lisp files   [Contents][Index]

4.1.11 cl-myriam/src/actors.lisp

Parent

src (module)

Location

src/actors.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

5 Packages

Packages are listed by definition order.


Previous: , Up: Packages   [Contents][Index]

5.1 myriam

Source

package.lisp (file)

Nickname

myr

Use List

common-lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

6.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.1 Special variables

Special Variable: *current-self-identity*
Package

myriam

Source

identity.lisp (file)

Special Variable: *print-internal-actor-error-messages*

if not nil, print error messages when they occur inside an actor

Package

myriam

Source

actors.lisp (file)

Special Variable: *self*
Package

myriam

Source

actors.lisp (file)

Special Variable: *send-timeout*
Package

myriam

Source

messaging.lisp (file)

Special Variable: *target-public-identity*
Package

myriam

Source

identity.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.2 Macros

Macro: with-new-context &body BODY
Package

myriam

Source

context.lisp (file)

Macro: with-self-identity SELF-ID &rest BODY
Package

myriam

Source

identity.lisp (file)

Macro: with-target-identity ID &rest BODY
Package

myriam

Source

identity.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.3 Functions

Function: action NAME TASK &optional CONTEXT

helper to make an instance of an action

Package

myriam

Source

action.lisp (file)

Function: all-actors ()
Package

myriam

Source

utils.lisp (file)

Function: authenticator-alive-p NAME
Package

myriam

Source

authentication.lisp (file)

Function: change-host ADDRESS NEW-HOST
Package

myriam

Source

address.lisp (file)

Function: kill-authenticator NAME
Package

myriam

Source

authentication.lisp (file)

Function: make-self-identity ()
Package

myriam

Source

identity.lisp (file)

Function: msg HEAD &rest BODY

Build a message. head should be a keyword symbol

Package

myriam

Source

messaging.lisp (file)

Function: self->public-identity SELF-ID
Package

myriam

Source

identity.lisp (file)

Function: send ACTOR MSG

send a message to an actor to perform an asychronous task

Package

myriam

Source

messaging.lisp (file)

Function: send* ACTOR MSG

send a message to an actor to perform a synchronous task and get a result

Package

myriam

Source

messaging.lisp (file)

Function: spawn &rest ACTIONS

spawn an actor, return its address and running thread

Package

myriam

Source

actors.lisp (file)

Function: spawn-authenticator ACCEPT-P &optional NAME

Spawn an authenticator that will use accept-p (which should be a predicate that takes an IP address and a public key as a byte vector) to either accept or reject incoming connections. Name, if given, should be a unique string.

Package

myriam

Source

authentication.lisp (file)

Function: stop-all-actors ()
Package

myriam

Source

utils.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

6.1.4 Generic functions

Generic Function: public-identity-hash OBJECT
Generic Function: (setf public-identity-hash) NEW-VALUE OBJECT
Package

myriam

Methods
Method: public-identity-hash (PUBLIC-IDENTITY public-identity)

automatically generated reader method

Source

identity.lisp (file)

Method: (setf public-identity-hash) NEW-VALUE (PUBLIC-IDENTITY public-identity)

automatically generated writer method

Source

identity.lisp (file)

Generic Function: public-identity-key OBJECT
Generic Function: (setf public-identity-key) NEW-VALUE OBJECT
Package

myriam

Methods
Method: public-identity-key (PUBLIC-IDENTITY public-identity)

automatically generated reader method

Source

identity.lisp (file)

Method: (setf public-identity-key) NEW-VALUE (PUBLIC-IDENTITY public-identity)

automatically generated writer method

Source

identity.lisp (file)

Generic Function: self-identity-hash OBJECT
Generic Function: (setf self-identity-hash) NEW-VALUE OBJECT
Package

myriam

Methods
Method: self-identity-hash (SELF-IDENTITY self-identity)

automatically generated reader method

Source

identity.lisp (file)

Method: (setf self-identity-hash) NEW-VALUE (SELF-IDENTITY self-identity)

automatically generated writer method

Source

identity.lisp (file)

Generic Function: self-identity-public-key OBJECT
Generic Function: (setf self-identity-public-key) NEW-VALUE OBJECT
Package

myriam

Methods
Method: self-identity-public-key (SELF-IDENTITY self-identity)

automatically generated reader method

Source

identity.lisp (file)

Method: (setf self-identity-public-key) NEW-VALUE (SELF-IDENTITY self-identity)

automatically generated writer method

Source

identity.lisp (file)

Generic Function: self-identity-secret-key OBJECT
Generic Function: (setf self-identity-secret-key) NEW-VALUE OBJECT
Package

myriam

Methods
Method: self-identity-secret-key (SELF-IDENTITY self-identity)

automatically generated reader method

Source

identity.lisp (file)

Method: (setf self-identity-secret-key) NEW-VALUE (SELF-IDENTITY self-identity)

automatically generated writer method

Source

identity.lisp (file)


Previous: , Up: Exported definitions   [Contents][Index]

6.1.5 Classes

Class: action ()
Package

myriam

Source

action.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: name
Type

keyword

Initargs

:name

Readers

action-name (generic function)

Writers

(setf action-name) (generic function)

Slot: task
Type

function

Initargs

:task

Readers

action-task (generic function)

Writers

(setf action-task) (generic function)

Slot: context
Type

myriam::action-context-t

Initargs

:context

Initform

:async

Readers

action-context (generic function)

Writers

(setf action-context) (generic function)

Class: public-identity ()
Package

myriam

Source

identity.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: public-key
Type

(simple-array (unsigned-byte 8) (32))

Initargs

:public-key

Readers

public-identity-key (generic function)

Writers

(setf public-identity-key) (generic function)

Slot: hash
Type

string

Initargs

:hash

Readers

public-identity-hash (generic function)

Writers

(setf public-identity-hash) (generic function)

Class: self-identity ()
Package

myriam

Source

identity.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: public-key
Type

(simple-array (unsigned-byte 8) (32))

Initargs

:public-key

Readers

self-identity-public-key (generic function)

Writers

(setf self-identity-public-key) (generic function)

Slot: secret-key
Type

(simple-array (unsigned-byte 8) (32))

Initargs

:secret-key

Readers

self-identity-secret-key (generic function)

Writers

(setf self-identity-secret-key) (generic function)

Slot: hash
Type

string

Initargs

:hash

Readers

self-identity-hash (generic function)

Writers

(setf self-identity-hash) (generic function)


Previous: , Up: Definitions   [Contents][Index]

6.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.1 Special variables

Special Variable: *actions*
Package

myriam

Source

actors.lisp (file)

Special Variable: *address-scanner*
Package

myriam

Source

address.lisp (file)

Special Variable: *context*
Package

myriam

Source

context.lisp (file)

Special Variable: *storage*
Package

myriam

Source

actors.lisp (file)

Special Variable: *storage-lock*
Package

myriam

Source

actors.lisp (file)

Special Variable: *trust-store*
Package

myriam

Source

identity.lisp (file)

Special Variable: *trust-store-lock*
Package

myriam

Source

identity.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.2 Macros

Macro: with-actor-parameters &rest BODY
Package

myriam

Source

actors.lisp (file)

Macro: with-timeout TIMEOUT &body BODY
Package

myriam

Source

utils.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.3 Functions

Function: action-context-p X
Package

myriam

Source

action.lisp (file)

Function: actor-loop ()
Package

myriam

Source

actors.lisp (file)

Function: address->binding ADDRESS
Package

myriam

Source

address.lisp (file)

Function: address-p OBJ
Package

myriam

Source

address.lisp (file)

Function: address-tokens ADDRESS
Package

myriam

Source

address.lisp (file)

Function: authenticator-thread NAME
Package

myriam

Source

authentication.lisp (file)

Function: fetch-value* KEY
Package

myriam

Source

actors.lisp (file)

Function: hash-blob BLOB
Package

myriam

Source

identity.lisp (file)

Function: kernel-setup ()
Package

myriam

Source

utils.lisp (file)

Function: make-address &optional PORT
Package

myriam

Source

address.lisp (file)

Function: make-public-identity PKEY
Package

myriam

Source

identity.lisp (file)

Function: make-random-port ()
Package

myriam

Source

address.lisp (file)

Function: message-context-p X
Package

myriam

Source

messaging.lisp (file)

Function: message-handle OBJ
Package

myriam

Source

actors.lisp (file)

Function: post ACTOR MSG &key CONTEXT

send a message to an actor

Package

myriam

Source

messaging.lisp (file)

Function: receive-and-process-auth-request SOCKET ACCEPT-P
Package

myriam

Source

authentication.lisp (file)

Function: store-public-identity ID
Package

myriam

Source

identity.lisp (file)

Function: store-value* KEY VALUE
Package

myriam

Source

actors.lisp (file)

Function: string-uuid ()
Package

myriam

Source

utils.lisp (file)

Function: valid-message-p MSG

check if this is a valid message in the correct context

Package

myriam

Source

actors.lisp (file)

Function: valid-predefined-message-p MSG

check if this is a predefined message with the correct context - we conly care about :fetch for now

Package

myriam

Source

actors.lisp (file)

Function: wrap-task TASK MESSAGE

wrap task according to its context

Package

myriam

Source

actors.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.4 Generic functions

Generic Function: action-context OBJECT
Generic Function: (setf action-context) NEW-VALUE OBJECT
Package

myriam

Methods
Method: action-context (ACTION action)

automatically generated reader method

Source

action.lisp (file)

Method: (setf action-context) NEW-VALUE (ACTION action)

automatically generated writer method

Source

action.lisp (file)

Generic Function: action-name OBJECT
Generic Function: (setf action-name) NEW-VALUE OBJECT
Package

myriam

Methods
Method: action-name (ACTION action)

automatically generated reader method

Source

action.lisp (file)

Method: (setf action-name) NEW-VALUE (ACTION action)

automatically generated writer method

Source

action.lisp (file)

Generic Function: action-task OBJECT
Generic Function: (setf action-task) NEW-VALUE OBJECT
Package

myriam

Methods
Method: action-task (ACTION action)

automatically generated reader method

Source

action.lisp (file)

Method: (setf action-task) NEW-VALUE (ACTION action)

automatically generated writer method

Source

action.lisp (file)

Generic Function: message-body OBJECT
Generic Function: (setf message-body) NEW-VALUE OBJECT
Package

myriam

Methods
Method: message-body (MESSAGE message)

automatically generated reader method

Source

messaging.lisp (file)

Method: (setf message-body) NEW-VALUE (MESSAGE message)

automatically generated writer method

Source

messaging.lisp (file)

Generic Function: message-context OBJECT
Generic Function: (setf message-context) NEW-VALUE OBJECT
Package

myriam

Methods
Method: message-context (MESSAGE message)

automatically generated reader method

Source

messaging.lisp (file)

Method: (setf message-context) NEW-VALUE (MESSAGE message)

automatically generated writer method

Source

messaging.lisp (file)

Generic Function: message-head OBJECT
Generic Function: (setf message-head) NEW-VALUE OBJECT
Package

myriam

Methods
Method: message-head (MESSAGE message)

automatically generated reader method

Source

messaging.lisp (file)

Method: (setf message-head) NEW-VALUE (MESSAGE message)

automatically generated writer method

Source

messaging.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.5 Conditions

Condition: encryption-failed ()

Could not encrypt message with keys from our trust store.

Package

myriam

Source

conditions.lisp (file)

Direct superclasses

error (condition)

Condition: invalid-message ()

An invalid message received/attemped to be sent.

Package

myriam

Source

conditions.lisp (file)

Direct superclasses

error (condition)

Condition: self-identity-not-set ()

Self identity has not been set.

Package

myriam

Source

conditions.lisp (file)

Direct superclasses

error (condition)

Condition: target-identity-not-set ()

Target identity has not been set.

Package

myriam

Source

conditions.lisp (file)

Direct superclasses

error (condition)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

6.2.6 Classes

Class: message ()
Package

myriam

Source

messaging.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: head
Type

keyword

Initargs

:head

Readers

message-head (generic function)

Writers

(setf message-head) (generic function)

Slot: body
Type

list

Initargs

:body

Readers

message-body (generic function)

Writers

(setf message-body) (generic function)

Slot: context
Type

myriam::message-context-t

Initargs

:context

Initform

:async

Readers

message-context (generic function)

Writers

(setf message-context) (generic function)


Previous: , Up: Internal definitions   [Contents][Index]

6.2.7 Types

Type: action-context-t ()
Package

myriam

Source

action.lisp (file)

Type: message-context-t ()
Package

myriam

Source

messaging.lisp (file)

Type: valid-address ()
Package

myriam

Source

address.lisp (file)


Previous: , Up: Top   [Contents][Index]

Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts

Jump to:   C   F   L   M  
Index Entry  Section

C
cl-myriam.asd: The cl-myriam․asd file
cl-myriam/package.lisp: The cl-myriam/package․lisp file
cl-myriam/src: The cl-myriam/src module
cl-myriam/src/action.lisp: The cl-myriam/src/action․lisp file
cl-myriam/src/actors.lisp: The cl-myriam/src/actors․lisp file
cl-myriam/src/address.lisp: The cl-myriam/src/address․lisp file
cl-myriam/src/authentication.lisp: The cl-myriam/src/authentication․lisp file
cl-myriam/src/conditions.lisp: The cl-myriam/src/conditions․lisp file
cl-myriam/src/context.lisp: The cl-myriam/src/context․lisp file
cl-myriam/src/identity.lisp: The cl-myriam/src/identity․lisp file
cl-myriam/src/messaging.lisp: The cl-myriam/src/messaging․lisp file
cl-myriam/src/utils.lisp: The cl-myriam/src/utils․lisp file

F
File, Lisp, cl-myriam.asd: The cl-myriam․asd file
File, Lisp, cl-myriam/package.lisp: The cl-myriam/package․lisp file
File, Lisp, cl-myriam/src/action.lisp: The cl-myriam/src/action․lisp file
File, Lisp, cl-myriam/src/actors.lisp: The cl-myriam/src/actors․lisp file
File, Lisp, cl-myriam/src/address.lisp: The cl-myriam/src/address․lisp file
File, Lisp, cl-myriam/src/authentication.lisp: The cl-myriam/src/authentication․lisp file
File, Lisp, cl-myriam/src/conditions.lisp: The cl-myriam/src/conditions․lisp file
File, Lisp, cl-myriam/src/context.lisp: The cl-myriam/src/context․lisp file
File, Lisp, cl-myriam/src/identity.lisp: The cl-myriam/src/identity․lisp file
File, Lisp, cl-myriam/src/messaging.lisp: The cl-myriam/src/messaging․lisp file
File, Lisp, cl-myriam/src/utils.lisp: The cl-myriam/src/utils․lisp file

L
Lisp File, cl-myriam.asd: The cl-myriam․asd file
Lisp File, cl-myriam/package.lisp: The cl-myriam/package․lisp file
Lisp File, cl-myriam/src/action.lisp: The cl-myriam/src/action․lisp file
Lisp File, cl-myriam/src/actors.lisp: The cl-myriam/src/actors․lisp file
Lisp File, cl-myriam/src/address.lisp: The cl-myriam/src/address․lisp file
Lisp File, cl-myriam/src/authentication.lisp: The cl-myriam/src/authentication․lisp file
Lisp File, cl-myriam/src/conditions.lisp: The cl-myriam/src/conditions․lisp file
Lisp File, cl-myriam/src/context.lisp: The cl-myriam/src/context․lisp file
Lisp File, cl-myriam/src/identity.lisp: The cl-myriam/src/identity․lisp file
Lisp File, cl-myriam/src/messaging.lisp: The cl-myriam/src/messaging․lisp file
Lisp File, cl-myriam/src/utils.lisp: The cl-myriam/src/utils․lisp file

M
Module, cl-myriam/src: The cl-myriam/src module

Jump to:   C   F   L   M  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   (  
A   C   F   G   H   K   M   P   R   S   V   W  
Index Entry  Section

(
(setf action-context): Internal generic functions
(setf action-context): Internal generic functions
(setf action-name): Internal generic functions
(setf action-name): Internal generic functions
(setf action-task): Internal generic functions
(setf action-task): Internal generic functions
(setf message-body): Internal generic functions
(setf message-body): Internal generic functions
(setf message-context): Internal generic functions
(setf message-context): Internal generic functions
(setf message-head): Internal generic functions
(setf message-head): Internal generic functions
(setf public-identity-hash): Exported generic functions
(setf public-identity-hash): Exported generic functions
(setf public-identity-key): Exported generic functions
(setf public-identity-key): Exported generic functions
(setf self-identity-hash): Exported generic functions
(setf self-identity-hash): Exported generic functions
(setf self-identity-public-key): Exported generic functions
(setf self-identity-public-key): Exported generic functions
(setf self-identity-secret-key): Exported generic functions
(setf self-identity-secret-key): Exported generic functions

A
action: Exported functions
action-context: Internal generic functions
action-context: Internal generic functions
action-context-p: Internal functions
action-name: Internal generic functions
action-name: Internal generic functions
action-task: Internal generic functions
action-task: Internal generic functions
actor-loop: Internal functions
address->binding: Internal functions
address-p: Internal functions
address-tokens: Internal functions
all-actors: Exported functions
authenticator-alive-p: Exported functions
authenticator-thread: Internal functions

C
change-host: Exported functions

F
fetch-value*: Internal functions
Function, action: Exported functions
Function, action-context-p: Internal functions
Function, actor-loop: Internal functions
Function, address->binding: Internal functions
Function, address-p: Internal functions
Function, address-tokens: Internal functions
Function, all-actors: Exported functions
Function, authenticator-alive-p: Exported functions
Function, authenticator-thread: Internal functions
Function, change-host: Exported functions
Function, fetch-value*: Internal functions
Function, hash-blob: Internal functions
Function, kernel-setup: Internal functions
Function, kill-authenticator: Exported functions
Function, make-address: Internal functions
Function, make-public-identity: Internal functions
Function, make-random-port: Internal functions
Function, make-self-identity: Exported functions
Function, message-context-p: Internal functions
Function, message-handle: Internal functions
Function, msg: Exported functions
Function, post: Internal functions
Function, receive-and-process-auth-request: Internal functions
Function, self->public-identity: Exported functions
Function, send: Exported functions
Function, send*: Exported functions
Function, spawn: Exported functions
Function, spawn-authenticator: Exported functions
Function, stop-all-actors: Exported functions
Function, store-public-identity: Internal functions
Function, store-value*: Internal functions
Function, string-uuid: Internal functions
Function, valid-message-p: Internal functions
Function, valid-predefined-message-p: Internal functions
Function, wrap-task: Internal functions

G
Generic Function, (setf action-context): Internal generic functions
Generic Function, (setf action-name): Internal generic functions
Generic Function, (setf action-task): Internal generic functions
Generic Function, (setf message-body): Internal generic functions
Generic Function, (setf message-context): Internal generic functions
Generic Function, (setf message-head): Internal generic functions
Generic Function, (setf public-identity-hash): Exported generic functions
Generic Function, (setf public-identity-key): Exported generic functions
Generic Function, (setf self-identity-hash): Exported generic functions
Generic Function, (setf self-identity-public-key): Exported generic functions
Generic Function, (setf self-identity-secret-key): Exported generic functions
Generic Function, action-context: Internal generic functions
Generic Function, action-name: Internal generic functions
Generic Function, action-task: Internal generic functions
Generic Function, message-body: Internal generic functions
Generic Function, message-context: Internal generic functions
Generic Function, message-head: Internal generic functions
Generic Function, public-identity-hash: Exported generic functions
Generic Function, public-identity-key: Exported generic functions
Generic Function, self-identity-hash: Exported generic functions
Generic Function, self-identity-public-key: Exported generic functions
Generic Function, self-identity-secret-key: Exported generic functions

H
hash-blob: Internal functions

K
kernel-setup: Internal functions
kill-authenticator: Exported functions

M
Macro, with-actor-parameters: Internal macros
Macro, with-new-context: Exported macros
Macro, with-self-identity: Exported macros
Macro, with-target-identity: Exported macros
Macro, with-timeout: Internal macros
make-address: Internal functions
make-public-identity: Internal functions
make-random-port: Internal functions
make-self-identity: Exported functions
message-body: Internal generic functions
message-body: Internal generic functions
message-context: Internal generic functions
message-context: Internal generic functions
message-context-p: Internal functions
message-handle: Internal functions
message-head: Internal generic functions
message-head: Internal generic functions
Method, (setf action-context): Internal generic functions
Method, (setf action-name): Internal generic functions
Method, (setf action-task): Internal generic functions
Method, (setf message-body): Internal generic functions
Method, (setf message-context): Internal generic functions
Method, (setf message-head): Internal generic functions
Method, (setf public-identity-hash): Exported generic functions
Method, (setf public-identity-key): Exported generic functions
Method, (setf self-identity-hash): Exported generic functions
Method, (setf self-identity-public-key): Exported generic functions
Method, (setf self-identity-secret-key): Exported generic functions
Method, action-context: Internal generic functions
Method, action-name: Internal generic functions
Method, action-task: Internal generic functions
Method, message-body: Internal generic functions
Method, message-context: Internal generic functions
Method, message-head: Internal generic functions
Method, public-identity-hash: Exported generic functions
Method, public-identity-key: Exported generic functions
Method, self-identity-hash: Exported generic functions
Method, self-identity-public-key: Exported generic functions
Method, self-identity-secret-key: Exported generic functions
msg: Exported functions

P
post: Internal functions
public-identity-hash: Exported generic functions
public-identity-hash: Exported generic functions
public-identity-key: Exported generic functions
public-identity-key: Exported generic functions

R
receive-and-process-auth-request: Internal functions

S
self->public-identity: Exported functions
self-identity-hash: Exported generic functions
self-identity-hash: Exported generic functions
self-identity-public-key: Exported generic functions
self-identity-public-key: Exported generic functions
self-identity-secret-key: Exported generic functions
self-identity-secret-key: Exported generic functions
send: Exported functions
send*: Exported functions
spawn: Exported functions
spawn-authenticator: Exported functions
stop-all-actors: Exported functions
store-public-identity: Internal functions
store-value*: Internal functions
string-uuid: Internal functions

V
valid-message-p: Internal functions
valid-predefined-message-p: Internal functions

W
with-actor-parameters: Internal macros
with-new-context: Exported macros
with-self-identity: Exported macros
with-target-identity: Exported macros
with-timeout: Internal macros
wrap-task: Internal functions

Jump to:   (  
A   C   F   G   H   K   M   P   R   S   V   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   *  
B   C   H   N   P   S   T  
Index Entry  Section

*
*actions*: Internal special variables
*address-scanner*: Internal special variables
*context*: Internal special variables
*current-self-identity*: Exported special variables
*print-internal-actor-error-messages*: Exported special variables
*self*: Exported special variables
*send-timeout*: Exported special variables
*storage*: Internal special variables
*storage-lock*: Internal special variables
*target-public-identity*: Exported special variables
*trust-store*: Internal special variables
*trust-store-lock*: Internal special variables

B
body: Internal classes

C
context: Exported classes
context: Internal classes

H
hash: Exported classes
hash: Exported classes
head: Internal classes

N
name: Exported classes

P
public-key: Exported classes
public-key: Exported classes

S
secret-key: Exported classes
Slot, body: Internal classes
Slot, context: Exported classes
Slot, context: Internal classes
Slot, hash: Exported classes
Slot, hash: Exported classes
Slot, head: Internal classes
Slot, name: Exported classes
Slot, public-key: Exported classes
Slot, public-key: Exported classes
Slot, secret-key: Exported classes
Slot, task: Exported classes
Special Variable, *actions*: Internal special variables
Special Variable, *address-scanner*: Internal special variables
Special Variable, *context*: Internal special variables
Special Variable, *current-self-identity*: Exported special variables
Special Variable, *print-internal-actor-error-messages*: Exported special variables
Special Variable, *self*: Exported special variables
Special Variable, *send-timeout*: Exported special variables
Special Variable, *storage*: Internal special variables
Special Variable, *storage-lock*: Internal special variables
Special Variable, *target-public-identity*: Exported special variables
Special Variable, *trust-store*: Internal special variables
Special Variable, *trust-store-lock*: Internal special variables

T
task: Exported classes

Jump to:   *  
B   C   H   N   P   S   T  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   A   C   E   I   M   P   S   T   V  
Index Entry  Section

A
action: Exported classes
action-context-t: Internal types

C
cl-myriam: The cl-myriam system
Class, action: Exported classes
Class, message: Internal classes
Class, public-identity: Exported classes
Class, self-identity: Exported classes
Condition, encryption-failed: Internal conditions
Condition, invalid-message: Internal conditions
Condition, self-identity-not-set: Internal conditions
Condition, target-identity-not-set: Internal conditions

E
encryption-failed: Internal conditions

I
invalid-message: Internal conditions

M
message: Internal classes
message-context-t: Internal types
myriam: The myriam package

P
Package, myriam: The myriam package
public-identity: Exported classes

S
self-identity: Exported classes
self-identity-not-set: Internal conditions
System, cl-myriam: The cl-myriam system

T
target-identity-not-set: Internal conditions
Type, action-context-t: Internal types
Type, message-context-t: Internal types
Type, valid-address: Internal types

V
valid-address: Internal types

Jump to:   A   C   E   I   M   P   S   T   V