creatur-2.0.12: Framework for artificial life experiments.

Portabilityportable
Stabilityexperimental
Maintaineramy@nualeargais.ie
Safe HaskellNone

ALife.Creatur.Universe

Description

TODO: fill in

Synopsis

Documentation

data Universe c l d n x a Source

A habitat containing artificial life.

Constructors

Universe 

Fields

_clock :: c
 
_logger :: l
 
_agentDB :: d
 
_namer :: n
 
_extra :: x
 

Instances

(Clock c, Logger l) => Logger (Universe c l d n x a) 
Clock c => Clock (Universe c l d n x a) 
AgentNamer n => AgentNamer (Universe c l d n x a) 

agentDB :: forall c l d n x a d a. Lens (Universe c l d n x a) (Universe c l d n x a) d dSource

clock :: forall c l d n x a c a. Lens (Universe c l d n x a) (Universe c l d n x a) c cSource

logger :: forall c l d n x a l a. Lens (Universe c l d n x a) (Universe c l d n x a) l lSource

extra :: forall c l d n x a x a. Lens (Universe c l d n x a) (Universe c l d n x a) x xSource

addAgent :: (Serialize a, Database d, Record a, a ~ DBRecord d) => DBRecord d -> StateT (Universe c l d n x a) IO ()Source

storeOrArchive :: (Serialize a, Database d, Record a, Agent a, a ~ DBRecord d) => a -> StateT d IO ()Source