This is the speechless Reference Manual, version 1.0.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Sep 15 06:46:09 2024 GMT+0.
speechless/speechless.asd
speechless/package.lisp
speechless/components.lisp
speechless/syntax.lisp
speechless/instructions.lisp
speechless/compiler.lisp
speechless/optimizers.lisp
speechless/vm.lisp
speechless/diff.lisp
speechless/printer.lisp
speechless/documentation.lisp
The main system appears first, followed by any subsystem dependency.
speechless
A dialogue system language implementation.
Yukari Hafner <shinmera@tymoon.eu>
Yukari Hafner <shinmera@tymoon.eu>
(GIT https://github.com/shirakumo/speechless.git)
zlib
1.0.0
cl-markless
(system).
documentation-utils
(system).
package.lisp
(file).
components.lisp
(file).
syntax.lisp
(file).
instructions.lisp
(file).
compiler.lisp
(file).
optimizers.lisp
(file).
vm.lisp
(file).
diff.lisp
(file).
printer.lisp
(file).
documentation.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
speechless/speechless.asd
speechless/package.lisp
speechless/components.lisp
speechless/syntax.lisp
speechless/instructions.lisp
speechless/compiler.lisp
speechless/optimizers.lisp
speechless/vm.lisp
speechless/diff.lisp
speechless/printer.lisp
speechless/documentation.lisp
speechless/components.lisp
package.lisp
(file).
speechless
(system).
arguments
(reader method).
(setf arguments)
(writer method).
camera
(class).
children
(method).
choices
(reader method).
(setf choices)
(writer method).
clauses
(reader method).
(setf clauses)
(writer method).
conditional
(class).
conditional-part
(class).
count-words-by
(method).
count-words-by
(method).
emote
(reader method).
(setf emote)
(writer method).
emote
(class).
eval
(class).
form
(reader method).
form
(reader method).
form
(reader method).
form
(reader method).
(setf form)
(writer method).
(setf form)
(writer method).
(setf form)
(writer method).
(setf form)
(writer method).
go
(class).
jump
(class).
manual-newline
(class).
move
(class).
name
(reader method).
(setf name)
(writer method).
output-component
(method).
output-component
(method).
output-component
(method).
place
(reader method).
(setf place)
(writer method).
placeholder
(class).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
setf
(class).
source
(class).
speed
(reader method).
(setf speed)
(writer method).
speed
(class).
(setf target)
(writer method).
target
(reader method).
action
(reader method).
(setf action)
(writer method).
entity
(reader method).
(setf entity)
(writer method).
fake-instruction
(class).
speechless/syntax.lisp
components.lisp
(file).
speechless
(system).
*default-directives*
(special variable).
*default-instruction-types*
(special variable).
begin
(method).
begin
(method).
begin
(method).
begin
(method).
begin
(method).
begin
(method).
begin
(method).
begin
(method).
begin
(method).
begin
(method).
children
(method).
conditional
(class).
conditional-part
(class).
consume-end
(method).
consume-prefix
(method).
emote
(class).
end
(method).
evaluate-instruction
(method).
invoke
(method).
invoke
(method).
invoke
(method).
jump
(class).
label
(class).
manual-newline
(class).
parse-instruction
(method).
parse-instruction
(method).
parse-instruction
(method).
parse-instruction
(method).
parse-instruction
(method).
parse-instruction
(method).
parser
(class).
part-separator
(class).
placeholder
(class).
prefix
(method).
prefix
(method).
prefix
(method).
prefix
(method).
prefix
(method).
prefix
(method).
prefix
(method).
source
(class).
*placeholder-readtable*
(special variable).
location-table
(reader method).
mark-component
(macro).
speechless/instructions.lisp
syntax.lisp
(file).
speechless
(system).
begin-mark
(class).
choose
(class).
clauses
(reader method).
(setf clauses)
(writer method).
clear
(class).
commit-choice
(class).
conditional
(class).
confirm
(class).
disassemble
(method).
disassemble
(method).
disassemble
(method).
disassemble
(method).
disassemble
(method).
disassemble
(method).
disassemble
(method).
disassemble
(method).
disassemble
(method).
disassemble
(method).
disassemble
(method).
disassemble
(method).
duration
(reader method).
(setf duration)
(writer method).
emote
(reader method).
(setf emote)
(writer method).
emote
(class).
end-mark
(class).
eval
(class).
index
(reader method).
(setf index)
(writer method).
initialize-instance
(method).
instruction
(class).
jump
(class).
label
(reader method).
(setf label)
(writer method).
markup
(reader method).
markup
(reader method).
(setf markup)
(writer method).
(setf markup)
(writer method).
name
(reader method).
(setf name)
(writer method).
noop
(class).
pause
(class).
placeholder
(class).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
source
(class).
target
(reader method).
(setf target)
(writer method).
targets
(reader method).
(setf targets)
(writer method).
text
(reader method).
(setf text)
(writer method).
text
(class).
dispatch
(class).
end
(reader method).
(setf end)
(writer method).
func
(reader method).
func
(reader method).
func
(reader method).
(setf func)
(writer method).
(setf func)
(writer method).
(setf func)
(writer method).
print-instruction-type
(function).
speechless/compiler.lisp
instructions.lisp
(file).
speechless
(system).
assembly
(class).
compile
(method).
compile
(method).
compile
(method).
compile
(method).
define-markup-walker
(macro).
define-simple-walker
(macro).
disassemble
(method).
disassemble
(method).
emit
(method).
instructions
(reader method).
(setf instructions)
(writer method).
next-index
(method).
parse
(function).
resolved-target
(function).
walk
(generic function).
wrap-lexenv
(generic function).
*root*
(special variable).
compile-form
(function).
random-indicator-p
(function).
speechless/optimizers.lisp
compiler.lisp
(file).
speechless
(system).
compile*
(function).
jump-resolution-pass
(class).
noop-elimination-pass
(class).
optimize-instructions
(function).
pass
(class).
run-pass
(method).
run-pass
(method).
run-pass
(method).
run-pass
(method).
run-pass
(method).
run-pass
(method).
run-pass
(method).
run-pass
(method).
run-pass
(method).
run-pass
(method).
*optimization-passes*
(special variable).
find-label
(function).
find-new-index
(function).
label-map
(reader method).
label-map
(reader method).
speechless/vm.lisp
optimizers.lisp
(file).
speechless
(system).
choice-request
(class).
choices
(reader method).
choices
(reader method).
(setf choices)
(writer method).
clear-request
(class).
confirm-request
(class).
duration
(reader method).
emote
(reader method).
emote-request
(class).
end-request
(class).
execute
(generic function).
input-request
(class).
instructions
(reader method).
(setf instructions)
(writer method).
markup
(reader method).
markup
(reader method).
(setf markup)
(writer method).
name
(reader method).
pause-request
(class).
pop-text
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
request
(class).
reset
(method).
resume
(method).
run
(method).
run
(method).
run
(method).
source-request
(class).
suspend
(method).
target
(reader method).
target-request
(class).
targets
(reader method).
text
(method).
text
(reader method).
text-buffer
(reader method).
text-request
(class).
vm
(class).
simulate
(function).
speechless/diff.lisp
vm.lisp
(file).
speechless
(system).
define-diff
(macro).
diff
(function).
diff-mismatch
(function).
diff-mismatch
(condition).
differ
(class).
localisation-differ
(class).
location
(reader method).
message
(reader method).
%diff
(generic function).
*component-path*
(special variable).
*location-table*
(special variable).
*source*
(special variable).
compare
(function).
ensure-parsed
(function).
format-location-in-source
(function).
main
(function).
unlist
(function).
speechless/printer.lisp
diff.lisp
(file).
speechless
(system).
highlight
(function).
highlighted
(class).
output-component
(method).
output-component
(method).
output-component
(method).
output-component
(method).
output-component
(method).
output-component
(method).
output-component
(method).
output-component
(method).
output-component
(method).
output-component
(method).
output-component
(method).
speechless
(class).
%form
(macro).
%op
(macro).
maybe-unwrap
(function).
output-form
(method).
output-form
(method).
speechless/documentation.lisp
printer.lisp
(file).
speechless
(system).
Packages are listed by definition order.
org.shirakumo.fraf.speechless
org.shirakumo.fraf.speechless.components
org.shirakumo.fraf.speechless.syntax
org.shirakumo.fraf.speechless
common-lisp
.
assembly
(class).
begin-mark
(class).
choice-request
(class).
choices
(generic reader).
(setf choices)
(generic writer).
choose
(class).
clauses
(generic reader).
(setf clauses)
(generic writer).
clear
(class).
clear-request
(class).
commit-choice
(class).
compile
(generic function).
compile*
(function).
conditional
(class).
confirm
(class).
confirm-request
(class).
define-diff
(macro).
define-markup-walker
(macro).
define-simple-walker
(macro).
diff
(function).
diff-mismatch
(function).
diff-mismatch
(condition).
differ
(class).
disassemble
(generic function).
duration
(generic reader).
(setf duration)
(generic writer).
emit
(generic function).
emote
(generic reader).
(setf emote)
(generic writer).
emote
(class).
emote-request
(class).
end-mark
(class).
end-request
(class).
eval
(class).
execute
(generic function).
highlight
(function).
highlighted
(class).
index
(generic reader).
(setf index)
(generic writer).
input-request
(class).
instruction
(class).
instructions
(generic reader).
(setf instructions)
(generic writer).
jump
(class).
jump-resolution-pass
(class).
label
(generic reader).
(setf label)
(generic writer).
localisation-differ
(class).
location
(generic reader).
markup
(generic reader).
(setf markup)
(generic writer).
message
(generic reader).
name
(generic reader).
(setf name)
(generic writer).
next-index
(generic function).
noop
(class).
noop-elimination-pass
(class).
optimize-instructions
(function).
parse
(function).
pass
(class).
pause
(class).
pause-request
(class).
placeholder
(class).
pop-text
(generic function).
request
(class).
reset
(generic function).
resolved-target
(function).
resume
(generic function).
run
(generic function).
run-pass
(generic function).
source
(class).
source-request
(class).
speechless
(class).
suspend
(generic function).
target
(generic reader).
(setf target)
(generic writer).
target-request
(class).
targets
(generic reader).
(setf targets)
(generic writer).
text
(generic function).
(setf text)
(generic writer).
text
(class).
text-buffer
(generic reader).
text-request
(class).
vm
(class).
walk
(generic function).
wrap-lexenv
(generic function).
%diff
(generic function).
%form
(macro).
%op
(macro).
*component-path*
(special variable).
*location-table*
(special variable).
*optimization-passes*
(special variable).
*root*
(special variable).
*source*
(special variable).
compare
(function).
compile-form
(function).
dispatch
(class).
end
(generic reader).
(setf end)
(generic writer).
ensure-parsed
(function).
find-label
(function).
find-new-index
(function).
format-location-in-source
(function).
func
(generic reader).
(setf func)
(generic writer).
label-map
(generic reader).
main
(function).
maybe-unwrap
(function).
output-form
(generic function).
print-instruction-type
(function).
random-indicator-p
(function).
simulate
(function).
unlist
(function).
org.shirakumo.fraf.speechless.components
common-lisp
.
arguments
(generic reader).
(setf arguments)
(generic writer).
camera
(class).
choices
(generic reader).
(setf choices)
(generic writer).
clauses
(generic reader).
(setf clauses)
(generic writer).
conditional
(class).
conditional-part
(class).
emote
(generic reader).
(setf emote)
(generic writer).
emote
(class).
eval
(class).
form
(generic reader).
(setf form)
(generic writer).
go
(class).
jump
(class).
manual-newline
(class).
move
(class).
name
(generic reader).
(setf name)
(generic writer).
place
(generic reader).
(setf place)
(generic writer).
placeholder
(class).
setf
(class).
source
(class).
speed
(generic reader).
(setf speed)
(generic writer).
speed
(class).
action
(generic reader).
(setf action)
(generic writer).
entity
(generic reader).
(setf entity)
(generic writer).
fake-instruction
(class).
org.shirakumo.fraf.speechless.syntax
common-lisp
.
*default-directives*
(special variable).
*default-instruction-types*
(special variable).
conditional
(class).
conditional-part
(class).
emote
(class).
jump
(class).
label
(class).
manual-newline
(class).
parser
(class).
part-separator
(class).
placeholder
(class).
source
(class).
*placeholder-readtable*
(special variable).
location-table
(generic reader).
mark-component
(macro).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Variable holding the list of directives used in a default parser.
See PARSER
Variable holding the list of instruction types used in a default parser.
See PARSER
Shorthand macro to define a walker method for markup components.
See WALK
Shorthand macro to define a walker method that emits a single instruction.
See WALK
Shorthand to compile and optimise.
See COMPILE
See OPTIMIZE-INSTRUCTIONS
Run the assembly through known optimisation passes.
Returns the modified assembly.
See *OPTIMIZATION-PASSES*
See RUN-PASS
See ASSEMBLY
Parses input to a markless component tree.
See ORG.SHIRAKUMO.MARKLESS:PARSE
See ORG.SHIRAKUMO.FRAF.KANDRIA.DIALOGUE.SYNTAX:PARSER
Resolves the component’s target to an actual component in the document tree.
Signals an error if the target cannot be resolved to a target
component.
See ORG.SHIRAKUMO.MARKLESS.COMPONENTS:TARGET
See ORG.SHIRAKUMO.MARKLESS.COMPONENTS:LABEL
Accesses the list of arguments for the camera action.
See CAMERA
Accesses the list of choices to present to the user.
Each choice is a string of text to display.
See CHOICE-REQUEST
choice-request
)) ¶automatically generated reader method
Accesses a vector of choices for the conditional.
Each entry in the vector is a vector of child components.
See CONDITIONAL-PART
conditional-part
)) ¶automatically generated reader method
conditional-part
)) ¶automatically generated writer method
Accesses the list of clauses of the conditional instruction.
Each entry in the clause list is a cons composed out of a test
function and a jump target.
See CONDITIONAL
conditional
)) ¶automatically generated reader method
conditional
)) ¶automatically generated writer method
Accesses a vector of clauses for the conditional component.
Each entry in the vector is a cons of a predicate and child
components.
See CONDITIONAL
conditional
)) ¶automatically generated reader method
conditional
)) ¶automatically generated writer method
Compiles the given input to an assembly.
Unless the input is a component, it is first passed to PARSE before
being compiled.
Note that this function only performs direct compilation to
instructions. Typically this is not sufficient for execution, as jumps
may need to be resolved in an extra optimisation pass.
See ASSEMBLY
See PARSE
See COMPILE*
See WALK
Prints the assembly in a more readable fashion to help with debugging.
Unless the input is an assembly or an instruction, it is first passed
to COMPILE* before being disassembled.
See ASSEMBLY
See COMPILE*
string
)) ¶begin-mark
)) ¶commit-choice
)) ¶conditional
)) ¶instruction
)) ¶instruction
)) ¶Accesses the duration of the pause (in seconds).
See PAUSE
pause-request
)) ¶automatically generated reader method
Emits an instruction into the assembly.
This will assign the instruction index and add it to the vector of
instructions in the assembly.
See INSTRUCTION
See ASSEMBLY
instruction
) (assembly assembly
)) ¶Accesses the designator of the expression that should be displayed.
See EMOTE (type)
emote-request
)) ¶automatically generated reader method
Accesses the name describing the expression of the character.
See EMOTE (type)
Executes an instruction in the VM.
You should add methods to this function if you include new instruction
types. Should return the new instruction pointer, typically (1+ ip).
If an instruction requires execution from the client, it should call
SUSPEND with the appropriate request instance.
It is an error to call EXECUTE from outside of the context of a RESUME
call.
See VM
See INSTRUCTION
placeholder
) (vm vm
) ip) ¶begin-mark
) (vm vm
) ip) ¶commit-choice
) (vm vm
) ip) ¶conditional
) (vm vm
) ip) ¶Accesses a Lisp form to be evaluated for the component.
See PLACEHOLDER
See CONDITIONAL-PART
See SETF
See EVAL
conditional-part
)) ¶automatically generated reader method
form
.
placeholder
)) ¶automatically generated reader method
form
.
eval
)) ¶automatically generated writer method
form
.
setf
)) ¶automatically generated writer method
form
.
conditional-part
)) ¶automatically generated writer method
form
.
placeholder
)) ¶automatically generated writer method
form
.
Accesses the index at which this instruction occurs in the sequence.
See INSTRUCTION
instruction
)) ¶automatically generated reader method
instruction
)) ¶automatically generated writer method
Accesses the vector of instructions of the assembly.
See INSTRUCTION
See ASSEMBLY
Accesses the label the instruction is associated with, if any.
See INSTRUCTION
instruction
)) ¶automatically generated reader method
instruction
)) ¶automatically generated writer method
diff-mismatch
)) ¶Accesses the identifier for the markup.
See TEXT-REQUEST
See BEGIN-MARK
text-request
)) ¶automatically generated reader method
end-mark
)) ¶automatically generated reader method
begin-mark
)) ¶automatically generated reader method
end-mark
)) ¶automatically generated writer method
begin-mark
)) ¶automatically generated writer method
diff-mismatch
)) ¶Accesses the name designator the instruction relates to.
See SOURCE
source-request
)) ¶automatically generated reader method
Accesses the name of the speaker.
See SOURCE
Returns the next instruction index to use.
See ASSEMBLY
Accesses a form describing the place to set.
Resets the VM to its initial state.
Returns the VM.
See VM
Resumes execution of the VM.
This will process instructions until a request to the client has to be
made. To do this the VM will continuously call EXECUTE and update the
instruction pointer. An instruction that requires a request should
call SUSPEND to suspend the execution and return from RESUME.
If the assembly runs to completion (the instruction pointer exceeds
the instruction vector), an END-REQUEST is returned.
See VM
See SUSPEND
See EXECUTE
Prepare the VM to run an assembly.
This will initialise the VM with the assembly’s instructions and reset
its state.
Returns the VM.
See RESET
See VM
noop-elimination-pass
) (assembly assembly
)) ¶noop-elimination-pass
) (instruction dispatch
)) ¶noop-elimination-pass
) (instruction conditional
)) ¶noop-elimination-pass
) (instruction jump
)) ¶noop-elimination-pass
) (assembly assembly
)) ¶jump-resolution-pass
) (instruction jump
)) ¶jump-resolution-pass
) (assembly assembly
)) ¶pass
) (instruction instruction
)) ¶symbol
) thing) ¶Accesses the speed at which the text should scroll, relative to base speed.
See SPEED (type)
Suspends execution of the VM to make a request to the client.
This function must only be called from EXECUTE.
See RESUME
See EXECUTE
Accesses the target of the instruction.
See JUMP
See INSTRUCTION
See TARGET-REQUEST
target-request
)) ¶automatically generated reader method
Accesses the list of target instruction pointers.
See CHOICE-REQUEST
choice-request
)) ¶automatically generated reader method
Accesses the text to be output
See TEXT-REQUEST
See TEXT (type)
text-request
)) ¶automatically generated reader method
Walks the AST to emit instructions into the assembly.
This function should have methods for every supported component type
to handle it and compile it into a set of instructions.
See EMIT
See ASSEMBLY
See INSTRUCTION
See ORG.SHIRAKUMO.MARKLESS.COMPONENTS:COMPONENT
placeholder
) (assembly assembly
)) ¶manual-newline
) (assembly assembly
)) ¶conditional-part
) (assembly assembly
)) ¶conditional
) (assembly assembly
)) ¶(eql t)
)) ¶Function used to wrap the lexical environment of forms compiled in dialogue.
You should implement a method on this if you want to customise the
lexical environment of dialogue forms. The function acts like a
macro; it receives an expression as input, and should return a new
expression to be used in its place.
Typically you’ll want to do stuff like surround the form with LETs and
FLETs to make special convenience functions and variables available.
See ASSEMBLY
placeholder
) parser line cursor) ¶cl-markless
.
conditional-part
) parser line cursor) ¶cl-markless
.
conditional
) parser line cursor) ¶cl-markless
.
manual-newline
) parser line cursor) ¶cl-markless
.
part-separator
) parser line cursor) ¶cl-markless
.
conditional
)) ¶cl-markless-components
.
conditional-part
)) ¶cl-markless-components
.
conditional-part
) component parser line cursor) ¶cl-markless
.
conditional
) component parser line cursor) ¶cl-markless
.
conditional
)) ¶cl-markless
.
conditional-part
)) ¶cl-markless
.
conditional-part
) component parser) ¶cl-markless
.
fake-instruction
) parser) ¶cl-markless
.
instruction
) &key) ¶conditional-part
) component parser line cursor) ¶cl-markless
.
parser
) line cursor) ¶cl-markless
.
conditional-part
) (s stream
) (_ speechless
)) ¶cl-markless
.
conditional
) (s stream
) (_ speechless
)) ¶cl-markless
.
eval
) (s stream
) (_ speechless
)) ¶cl-markless
.
setf
) (s stream
) (_ speechless
)) ¶cl-markless
.
speed
) (s stream
) (_ speechless
)) ¶cl-markless
.
go
) (s stream
) (_ speechless
)) ¶cl-markless
.
emote
) (s stream
) (_ speechless
)) ¶cl-markless
.
placeholder
) (s stream
) (_ speechless
)) ¶cl-markless
.
source
) (s stream
) (_ speechless
)) ¶cl-markless
.
jump
) (s stream
) (_ speechless
)) ¶cl-markless
.
label
) (s stream
) (_ speechless
)) ¶cl-markless
.
conditional
) (s stream
) (f debug
)) ¶cl-markless
.
conditional-part
) (s stream
) (f debug
)) ¶cl-markless
.
placeholder
)) ¶cl-markless
.
conditional-part
)) ¶cl-markless
.
conditional
)) ¶cl-markless
.
part-separator
)) ¶cl-markless
.
text-request
) stream) ¶choice-request
) stream) ¶conditional
) stream) ¶emote-request
) stream) ¶instruction
) stream) ¶pause-request
) stream) ¶placeholder
) stream) ¶move
)) ¶automatically generated writer method
cl-markless-components
.
move
)) ¶automatically generated reader method
cl-markless-components
.
warning
.
A class representing a set of instructions ready to be executed.
See INSTRUCTIONS
See NEXT-INDEX
See EMIT
See WALK
See DISASSEMBLE
See RUN-PASS
See RUN
(make-array 0 :adjustable t :fill-pointer t)
An instruction to mark the beginning of a piece of text markup.
See MARKUP
See INSTRUCTION
Instruction to cause a camera action.
See ACTION
See ARGUMENTS
A request that represents a set of choices for the user to choose between.
Each choice in the list of choices has a corresponding instruction
pointer in the list of targets that the VM should resume from after
the request.
See CHOICES
See TARGETS
See INPUT-REQUEST
An instruction representing a request to make the user choose an
option.
See INSTRUCTION
An instruction to clear the text.
See INSTRUCTION
A request to clear the current text on screen.
See TARGET-REQUEST
An instruction to commit the current text buffer as a choice.
See JUMP
jump
.
An instruction that represents a chain of branches, similar to COND.
See CLAUSES
See INSTRUCTION
:clauses
A component representing a conditional execution path.
See CLAUSES
block-component
.
(make-array 0 :adjustable t :fill-pointer t)
Directive for a conditional block.
Syntax: "? form"
Following lines should be either "| " for a conditional body or "|? form" for a branch condition, or "|?" for an otherwise branch.
block-directive
.
A component representing an inline conditional.
See FORM
See CHOICES
Directive for an inline conditional.
Syntax: "[form if-clause | else-clause ]"
inline-directive
.
begin
.
consume-end
.
end
.
invoke
.
prefix
.
An instruction to prompt the user to confirm.
See INSTRUCTION
A request to ask the user to confirm before proceeding with execution.
See INPUT-REQUEST
See TARGET-REQUEST
See TEXT-REQUEST
An instruction representing a change in expression for the speaker.
See EMOTE (function)
See INSTRUCTION
:emote
A component representing an expression of the speaking character.
See EMOTE (function)
inline-component
.
(error "emote required")
:emote
Directive for the expression of the speaking character.
Syntax: "(:emote)"
inline-directive
.
A request to change the expression of the current speaker.
See TEXT-REQUEST
see TARGET-REQUEST
An instruction to mark the end of the most recent markup section.
See BEGIN-MARK
See INSTRUCTION
A request to end the dialogue.
See REQUEST
An instruction to execute a Lisp function.
See FUNC
See INSTRUCTION
Instruction to evaluate a piece of Lisp code.
See FORM
Instruction to jump to a specific component.
See ORG.SHIRAKUMO.MARKLESS.COMPONENTS:TARGET
fake-instruction
.
targeted
.
highlighted
.
output-format
.
speechless
.
Base class for requests that require user input.
See REQUEST
Base class for a dialogue instruction.
See INDEX
See LABEL
An instruction that jumps to another instruction index.
See TARGET
See INSTRUCTION
(error "target required.")
:target
A component representing a jump to another component.
See ORG.SHIRAKUMO.MARKLESS.COMPONENTS:TARGET
block-component
.
targeted
.
Directive representing a jump to another label.
Syntax: "< label"
singular-line-directive
.
Pass to resolve jumps to labels to actual instruction indices.
After this pass all jumps should have their target be an instruction
index.
See LABEL-MAP
See PASS
pass
.
Directive representing a label.
Syntax: "> label"
singular-line-directive
.
newline
.
Instruction to move a character to another position.
See ENTITY
See TARGET
A no-operation instruction. Does nothing.
See INSTRUCTION
Pass to eliminate all noop instructions
This pass rewrites jump instructions to resolve to proper indices
without the need for noops. After this pass, no noops should remain in
the assembly.
See LABEL-MAP
See PASS
Parser class customised to use the correct set of directives and instructions.
See *DEFAULT-DIRECTIVES*
See *DEFAULT-INSTRUCTION-TYPES*
See ORG.SHIRAKUMO.MARKLESS:PARSER
parser
.
Initarg | Value |
---|---|
:directives | *default-directives* |
:instruction-types | *default-instruction-types* |
(make-hash-table :test (quote eq))
This slot is read-only.
Directive for the separator of a part in a compound directive.
Syntax: "|"
inline-directive
.
Class representing an optimisation pass.
See RUN-PASS
See OPTIMIZE-INSTRUCTIONS
See COMPILE*
See ASSEMBLY
An instruction representing a pause in speech.
See DURATION
See INSTRUCTION
:duration
A request to pause execution for a period of real time.
See TEXT-REQUEST
See TARGET-REQUEST
See DURATION
An instruction representing a dynamic piece of text.
See FUNC
See INSTRUCTION
A component representing a dynamic piece of text.
See FORM
Directive for a dynamic piece of text.
Syntax: "{form}"
inline-directive
.
Base class for all client requests.
A request requires the client to perform some operation before
execution can resume.
See INPUT-REQUEST
See TARGET-REQUEST
See TEXT-REQUEST
See CHOICE-REQUEST
See CONFIRM-REQUEST
See CLEAR-REQUEST
See EMOTE-REQUEST
See PAUSE-REQUEST
See SOURCE-REQUEST
See END-REQUEST
Instruction to set a place.
See PLACE
See FORM
An instruction representing a change in the speaking source.
See NAME
See INSTRUCTION
A component representing someone speaking.
See NAME
Directive for a speaking source.
Syntax: "~ source"
blockquote-header
.
A request to change the speaker of the dialogue.
See TARGET-REQUEST
See NAME
name
.
markless
.
output-format
.
Instruction to change the letter scroll speed.
See SPEED (function)
(error "speed required")
:speed
Base class for requests that advance the instruction pointer after completion.
See REQUEST
See TARGET
An instruction to output a piece of text.
See TEXT (function)
See INSTRUCTION
Base class for requests that carry some text to be output
See TEXT (function)
See MARKUP
A class to represent the execution state of a dialogue assembly.
In order to execute dialogue you should first compile it to an
assembly, then construct a VM instance and pass the assembly to the VM
via RUN. This will initialise the VM properly. Afterwards you should
call RESUME, which will return a REQUEST instance, informing you of a
necessary action to take. You should then continue calling RESUME with
the new instruction pointer as instructed by the request until an
END-REQUEST is returned.
See REQUEST
See EXECUTE
See SUSPEND
See INSTRUCTIONS
See RUN
Variable containing a list of optimisation passes to run by default.
See OPTIMIZE-INSTRUCTIONS
Variable bound to the root of the document for quick access to the label table.
Only bound during compilation.
progn
.
:most-specific-first
eval
) (b eval
) (differ localisation-differ
)) ¶setf
) (b setf
) (differ localisation-differ
)) ¶speed
) (b speed
) (differ localisation-differ
)) ¶conditional-part
) (b conditional-part
) (differ localisation-differ
)) ¶emote
) (b emote
) (differ localisation-differ
)) ¶placeholder
) (b placeholder
) (differ localisation-differ
)) ¶source
) (b source
) (differ localisation-differ
)) ¶conditional
) (b conditional
) (differ localisation-differ
)) ¶color-option
) (b color-option
) (differ localisation-differ
)) ¶compound
) (b compound
) (differ localisation-differ
)) ¶embed
) (b embed
) (differ localisation-differ
)) ¶sized
) (b sized
) (differ localisation-differ
)) ¶targeted
) (b targeted
) (differ localisation-differ
)) ¶include
) (b include
) (differ localisation-differ
)) ¶set
) (b set
) (differ localisation-differ
)) ¶directives-instruction
) (b directives-instruction
) (differ localisation-differ
)) ¶unordered-list
) (b unordered-list
) (differ localisation-differ
)) ¶ordered-list-item
) (b ordered-list-item
) (differ localisation-differ
)) ¶symbol
) (b symbol
) (differ localisation-differ
)) ¶real
) (b real
) (differ localisation-differ
)) ¶parent-component
) (b parent-component
) (differ localisation-differ
)) ¶cons
) (b cons
) (differ localisation-differ
)) ¶vector
) (b vector
) (differ localisation-differ
)) ¶localisation-differ
)) ¶Accesses the action the camera should perform.
Standard actions are:
- :PAN
- :ROLL
- :PITCH
- :YAW
- :JUMP
- :SHAKE
- :ZOOM
See CAMERA
begin-mark
)) ¶automatically generated reader method
end
.
begin-mark
)) ¶automatically generated writer method
end
.
Accesses a designator for the entity to move.
See MOVE
Accesses the function associated with the instruction.
See DISPATCH
See PLACEHOLDER
See EVAL
placeholder
)) ¶automatically generated reader method
func
.
eval
)) ¶automatically generated writer method
func
.
placeholder
)) ¶automatically generated writer method
func
.
Accesses the hash table of labels to instructions.
See JUMP-RESOLUTION-PASS
See NOOP-ELIMINATION-PASS
noop-elimination-pass
)) ¶automatically generated reader method
jump-resolution-pass
)) ¶automatically generated reader method
highlighted
)) ¶speechless
)) ¶An instruction that represents a branching dispatch.
See FUNC
See TARGETS
A component for instructions that do not cause changes in the markless document.
instruction
.
Jump to: | %
(
A B C D E F G H I L M N O P R S T U W |
---|
Jump to: | %
(
A B C D E F G H I L M N O P R S T U W |
---|
Jump to: | *
A C D E F I L M N P S T |
---|
Jump to: | *
A C D E F I L M N P S T |
---|
Jump to: | A B C D E F G H I J L M N O P R S T V |
---|
Jump to: | A B C D E F G H I J L M N O P R S T V |
---|