"A task is part of a set of actions which accomplish a job, problem or assignment."
There are two kinds of Tasks, Simple and non-Simple. The distinction determines how Tasks are pursued. A Task is related to the concepts of instruction, operator, function and method. But a Task only specifies what is to be done, not how it is to be done. And non-Simple Tasks have some degree of generality. It may be useful to think of a Task as a parameter list in search of of a method.
Every Task has a possibly null AttributeSet.
This color indicates any symbol
valid for its Verb, Noun,
or
Prepositional_Phrase
At present there are 17 different patterns of Tasks. The pattern of a Task is determined by its sequence of Symbols and object instance value types. These type identifiers are themselves implemented as Symbols.
1) Verb
Prepositional_Phrase
2) Verb Noun
3)
Verb Noun
Using
GNodeObject
4) Verb
Noun
At
Position
5) Verb
Noun
Over
Span
6) Verb
Noun
At
Position
Using
GNodeObject
7) Verb
Noun
Over
Span
Using
GNodeObject
8) Verb Noun At Position Integrate ChannelSet
9) Verb Noun Over Span Integrate ChannelSet
10) Verb Noun At Position Integrate ChannelSet Using GNodeObject
11) Verb Noun Over Span Integrate ChannelSet Using GNodeObject
12) Verb Noun At Position Using GNodeObject
13) Verb Noun Over Span Using GNodeObject
14) Verb Noun At Position Integrate ChannelSet
15) Verb
Noun
Over
Span
Integrate
ChannelSet
16) Verb Noun At Position Integrate ChannelSet Using GNodeObject
17) Verb Noun Over Span Integrate ChannelSet Using GNodeObject
Symbol.Wait (The Wait verb can only be used the with prepositional phrase symbols below.)
Symbol.ForUserInput
Symbol.Create
Symbol.Revise
Symbol.Transform
Symbol.Remove
Symbol.Insert
1. Create BassLine Over Span Using RuleSets
Because RuleSets is a, or inherits from GNode it can be any of a very wide range of types. In this example (i.t.e.) let us say that it is a GNode and so the only data it carries are Symbol and SubSymbol. I.t.e. the GNode's Symbol value is Symbol.Symbol and the SubSymbol value, Symbol.RuleSet. The Attributes list provides data indicating the desired style of the line.
2. Create BassLine Over Span Using Constraints
In this example Constraints is a LinkedGList containing two data elements, a FiguredBass channel and again the symbol. Symbol.RuleSet
3. Create BassLine Over Span Using Algorithm
In this example Constraints is a LinkedGList containing two data elements, a FiguredBass channel and again the symbol. Symbol.RuleSet
4. Create BassLine Over Span Using Algorithm