| Safe Haskell | Safe-Inferred | 
|---|---|
| Language | Haskell2010 | 
Drasil.System
Description
Define types and functions related to creating a system information database.
Synopsis
- data System where
- SI :: (CommonIdea a, Idea a, Quantity e, Eq e, MayHaveUnit e, Concept e, Quantity h, MayHaveUnit h, Concept h, Quantity i, MayHaveUnit i, Concept i, HasUID j, Constrained j) => {..} -> System
 
 - data SystemKind
 - class HasSystem c where
- system :: Lens' c System
 - authors :: Lens' c People
 - background :: Lens' c Background
 - configFiles :: Lens' c [String]
 - constants :: Lens' c [ConstQDef]
 - dataDefns :: Lens' c [DataDefinition]
 - genDefns :: Lens' c [GenDefn]
 - instModels :: Lens' c [InstanceModel]
 - kind :: Lens' c SystemKind
 - motivation :: Lens' c Motivation
 - purpose :: Lens' c Purpose
 - scope :: Lens' c Scope
 - systemdb :: Lens' c ChunkDB
 - theoryModels :: Lens' c [TheoryModel]
 
 - whatsTheBigIdea :: System -> IdeaDict
 - mkSystem :: (CommonIdea a, Idea a, Quantity e, Eq e, MayHaveUnit e, Concept e, Quantity h, MayHaveUnit h, Concept h, Quantity i, MayHaveUnit i, Concept i, HasUID j, Constrained j) => a -> SystemKind -> People -> Purpose -> Background -> Scope -> Motivation -> [e] -> [TheoryModel] -> [GenDefn] -> [DataDefinition] -> [InstanceModel] -> [String] -> [h] -> [i] -> [j] -> [ConstQDef] -> ChunkDB -> System
 - type Purpose = [Sentence]
 - type Background = [Sentence]
 - type Scope = [Sentence]
 - type Motivation = [Sentence]
 
System
Types
Data structure for holding all of the requisite information about a system to be used in artifact generation.
Constructors
| SI | |
Fields 
  | |
Instances
| HasSystem System Source # | |
Defined in Drasil.System Methods system :: Lens' System System Source # authors :: Lens' System People Source # background :: Lens' System Background Source # configFiles :: Lens' System [String] Source # constants :: Lens' System [ConstQDef] Source # dataDefns :: Lens' System [DataDefinition] Source # genDefns :: Lens' System [GenDefn] Source # instModels :: Lens' System [InstanceModel] Source # kind :: Lens' System SystemKind Source # motivation :: Lens' System Motivation Source # purpose :: Lens' System Purpose Source # scope :: Lens' System Scope Source # systemdb :: Lens' System ChunkDB Source # theoryModels :: Lens' System [TheoryModel] Source #  | |
data SystemKind Source #
Constructors
| Specification | |
| RunnableSoftware | |
| Notebook | |
| Website | 
Lenses
class HasSystem c where Source #
Minimal complete definition
Methods
system :: Lens' c System Source #
authors :: Lens' c People Source #
background :: Lens' c Background Source #
configFiles :: Lens' c [String] Source #
constants :: Lens' c [ConstQDef] Source #
dataDefns :: Lens' c [DataDefinition] Source #
genDefns :: Lens' c [GenDefn] Source #
instModels :: Lens' c [InstanceModel] Source #
kind :: Lens' c SystemKind Source #
motivation :: Lens' c Motivation Source #
purpose :: Lens' c Purpose Source #
scope :: Lens' c Scope Source #
systemdb :: Lens' c ChunkDB Source #
theoryModels :: Lens' c [TheoryModel] Source #
Instances
| HasSystem System Source # | |
Defined in Drasil.System Methods system :: Lens' System System Source # authors :: Lens' System People Source # background :: Lens' System Background Source # configFiles :: Lens' System [String] Source # constants :: Lens' System [ConstQDef] Source # dataDefns :: Lens' System [DataDefinition] Source # genDefns :: Lens' System [GenDefn] Source # instModels :: Lens' System [InstanceModel] Source # kind :: Lens' System SystemKind Source # motivation :: Lens' System Motivation Source # purpose :: Lens' System Purpose Source # scope :: Lens' System Scope Source # systemdb :: Lens' System ChunkDB Source # theoryModels :: Lens' System [TheoryModel] Source #  | |
Functions
whatsTheBigIdea :: System -> IdeaDict Source #
mkSystem :: (CommonIdea a, Idea a, Quantity e, Eq e, MayHaveUnit e, Concept e, Quantity h, MayHaveUnit h, Concept h, Quantity i, MayHaveUnit i, Concept i, HasUID j, Constrained j) => a -> SystemKind -> People -> Purpose -> Background -> Scope -> Motivation -> [e] -> [TheoryModel] -> [GenDefn] -> [DataDefinition] -> [InstanceModel] -> [String] -> [h] -> [i] -> [j] -> [ConstQDef] -> ChunkDB -> System Source #
Reference Database
Types
type Background = [Sentence] Source #
Project Example background information, used in the What section of README.
type Motivation = [Sentence] Source #
Project Example motivation.