*-docs: replace double spaces with single spaces
Code examples and other places where multiple spaces were used to align text were left intact.modern-harvey2
parent
445b55b3e5
commit
2ffa446f5b
|
@ -188,7 +188,7 @@ $nl
|
||||||
"Passing an already encoded " { $link byte-array } " also works and performs no conversion."
|
"Passing an already encoded " { $link byte-array } " also works and performs no conversion."
|
||||||
}
|
}
|
||||||
{ "Returning a C string from a C function allocates a Factor string in the Factor heap; the memory pointed to by the returned pointer is then decoded with the requested encoding into the Factor string." }
|
{ "Returning a C string from a C function allocates a Factor string in the Factor heap; the memory pointed to by the returned pointer is then decoded with the requested encoding into the Factor string." }
|
||||||
{ "Reading " { $link c-string } " slots of " { $link POSTPONE: STRUCT: } " or " { $link POSTPONE: UNION-STRUCT: } " returns Factor strings." }
|
{ "Reading " { $link c-string } " slots of " { $link POSTPONE: STRUCT: } " or " { $link POSTPONE: UNION-STRUCT: } " returns Factor strings." }
|
||||||
}
|
}
|
||||||
$nl
|
$nl
|
||||||
"Care must be taken if the C function expects a pointer to a string with its length represented by another parameter rather than a null terminator. Passing the result of calling " { $link length } " on the string object will not suffice. This is because a Factor string of " { $emphasis "n" } " characters will not necessarily encode to " { $emphasis "n" } " bytes. The correct idiom for C functions which take a string with a length is to first encode the string using " { $link encode } ", and then pass the resulting byte array together with the length of this byte array."
|
"Care must be taken if the C function expects a pointer to a string with its length represented by another parameter rather than a null terminator. Passing the result of calling " { $link length } " on the string object will not suffice. This is because a Factor string of " { $emphasis "n" } " characters will not necessarily encode to " { $emphasis "n" } " bytes. The correct idiom for C functions which take a string with a length is to first encode the string using " { $link encode } ", and then pass the resulting byte array together with the length of this byte array."
|
||||||
|
|
|
@ -26,8 +26,8 @@ HELP: to
|
||||||
{ $see-also <channel> from } ;
|
{ $see-also <channel> from } ;
|
||||||
|
|
||||||
HELP: from
|
HELP: from
|
||||||
{ $values { "channel" channel }
|
{ $values { "channel" channel }
|
||||||
{ "value" object }
|
{ "value" object }
|
||||||
}
|
}
|
||||||
{ $description "Receives an object from a channel. The operation is synchronous."
|
{ $description "Receives an object from a channel. The operation is synchronous."
|
||||||
" It will block the calling thread until there is data in the channel."
|
" It will block the calling thread until there is data in the channel."
|
||||||
|
|
|
@ -10,4 +10,4 @@ HELP: run-apple-script
|
||||||
HELP: APPLESCRIPT:
|
HELP: APPLESCRIPT:
|
||||||
{ $syntax "APPLESCRIPT: word ...applescript... ;APPLESCRIPT" }
|
{ $syntax "APPLESCRIPT: word ...applescript... ;APPLESCRIPT" }
|
||||||
{ $values { "word" "a new word to define" } { "...applescript..." "AppleScript source text" } }
|
{ $values { "word" "a new word to define" } { "...applescript..." "AppleScript source text" } }
|
||||||
{ $description "Defines a word that when called will run the provided uncompiled AppleScript. The word has stack effect " { $snippet "( -- )" } " due to return values being currently unsupported." } ;
|
{ $description "Defines a word that when called will run the provided uncompiled AppleScript. The word has stack effect " { $snippet "( -- )" } " due to return values being currently unsupported." } ;
|
||||||
|
|
|
@ -10,7 +10,7 @@ HELP: <NSString>
|
||||||
|
|
||||||
HELP: with-autorelease-pool
|
HELP: with-autorelease-pool
|
||||||
{ $values { "quot" quotation } }
|
{ $values { "quot" quotation } }
|
||||||
{ $description "Sets up a new " { $snippet "NSAutoreleasePool" } ", calls the quotation and frees the pool." } ;
|
{ $description "Sets up a new " { $snippet "NSAutoreleasePool" } ", calls the quotation and frees the pool." } ;
|
||||||
|
|
||||||
HELP: NSApp
|
HELP: NSApp
|
||||||
{ $values { "app" "an " { $snippet "NSApplication" } } }
|
{ $values { "app" "an " { $snippet "NSApplication" } } }
|
||||||
|
|
|
@ -7,10 +7,10 @@ HELP: load-nib
|
||||||
|
|
||||||
HELP: nib-named
|
HELP: nib-named
|
||||||
{ $values { "nib-name" string } { "anNSNib" "an instance of NSNib" } }
|
{ $values { "nib-name" string } { "anNSNib" "an instance of NSNib" } }
|
||||||
{ $description "Looks up the " { $snippet ".nib" } " in the main bundle with the given name, instantiating an autoreleased NSNib object. Useful when combined with the " { $link nib-objects } " word. " { $snippet "f" } " is returned in case of error." }
|
{ $description "Looks up the " { $snippet ".nib" } " in the main bundle with the given name, instantiating an autoreleased NSNib object. Useful when combined with the " { $link nib-objects } " word. " { $snippet "f" } " is returned in case of error." }
|
||||||
{ $see-also nib-objects } ;
|
{ $see-also nib-objects } ;
|
||||||
|
|
||||||
HELP: nib-objects
|
HELP: nib-objects
|
||||||
{ $values { "anNSNib" "an instance of NSNib" } { "objects/f" { $maybe sequence } } }
|
{ $values { "anNSNib" "an instance of NSNib" } { "objects/f" { $maybe sequence } } }
|
||||||
{ $description "Instantiates the top-level objects of the " { $snippet ".nib" } " file loaded by anNSNib. First create an NSNib instance using " { $link nib-named } "." }
|
{ $description "Instantiates the top-level objects of the " { $snippet ".nib" } " file loaded by anNSNib. First create an NSNib instance using " { $link nib-named } "." }
|
||||||
{ $see-also nib-named } ;
|
{ $see-also nib-named } ;
|
||||||
|
|
|
@ -200,7 +200,7 @@ HELP: smart-if*
|
||||||
{ $values
|
{ $values
|
||||||
{ "pred" quotation } { "true" quotation } { "false" quotation }
|
{ "pred" quotation } { "true" quotation } { "false" quotation }
|
||||||
}
|
}
|
||||||
{ $description "A version of " { $link if } " that takes three quotations, where the first quotation is a predicate that preserves any inputs it consumes, the second is the " { $snippet "true" } " branch, and the third is the " { $snippet "false" } " branch. If the " { $snippet "true" } " branch is taken, the values are left on the stack and the quotation is called. If the " { $snippet "false" } " branch is taken, the number of inputs inferred from predicate quotation is dropped and the quotation is called." } ;
|
{ $description "A version of " { $link if } " that takes three quotations, where the first quotation is a predicate that preserves any inputs it consumes, the second is the " { $snippet "true" } " branch, and the third is the " { $snippet "false" } " branch. If the " { $snippet "true" } " branch is taken, the values are left on the stack and the quotation is called. If the " { $snippet "false" } " branch is taken, the number of inputs inferred from predicate quotation is dropped and the quotation is called." } ;
|
||||||
|
|
||||||
HELP: smart-unless
|
HELP: smart-unless
|
||||||
{ $values
|
{ $values
|
||||||
|
@ -212,7 +212,7 @@ HELP: smart-unless*
|
||||||
{ $values
|
{ $values
|
||||||
{ "pred" quotation } { "false" quotation }
|
{ "pred" quotation } { "false" quotation }
|
||||||
}
|
}
|
||||||
{ $description "A version of " { $link unless } " that takes two quotations, where the first quotation is a predicate that preserves any inputs it consumes and the second is the " { $snippet "false" } " branch. If the " { $snippet "true" } " branch is taken, the values are left on the stack. If the " { $snippet "false" } " branch is taken, the number of inputs inferred from predicate quotation is dropped and the quotation is called." } ;
|
{ $description "A version of " { $link unless } " that takes two quotations, where the first quotation is a predicate that preserves any inputs it consumes and the second is the " { $snippet "false" } " branch. If the " { $snippet "true" } " branch is taken, the values are left on the stack. If the " { $snippet "false" } " branch is taken, the number of inputs inferred from predicate quotation is dropped and the quotation is called." } ;
|
||||||
|
|
||||||
HELP: smart-when
|
HELP: smart-when
|
||||||
{ $values
|
{ $values
|
||||||
|
@ -224,7 +224,7 @@ HELP: smart-when*
|
||||||
{ $values
|
{ $values
|
||||||
{ "pred" quotation } { "true" quotation }
|
{ "pred" quotation } { "true" quotation }
|
||||||
}
|
}
|
||||||
{ $description "A version of " { $link when } " that takes two quotations, where the first quotation is a predicate that preserves any inputs it consumes and the second is the " { $snippet "true" } " branch. If the " { $snippet "true" } " branch is taken, the values are left on the stack and the quotation is called. If the " { $snippet "false" } " branch is taken, the number of inputs inferred from predicate quotation is dropped." } ;
|
{ $description "A version of " { $link when } " that takes two quotations, where the first quotation is a predicate that preserves any inputs it consumes and the second is the " { $snippet "true" } " branch. If the " { $snippet "true" } " branch is taken, the values are left on the stack and the quotation is called. If the " { $snippet "false" } " branch is taken, the number of inputs inferred from predicate quotation is dropped." } ;
|
||||||
|
|
||||||
HELP: smart-with
|
HELP: smart-with
|
||||||
{ $values
|
{ $values
|
||||||
|
|
|
@ -166,6 +166,6 @@ $nl
|
||||||
HELP: run-script
|
HELP: run-script
|
||||||
{ $values { "file" "a pathname string" } }
|
{ $values { "file" "a pathname string" } }
|
||||||
{ $description "Parses the Factor source code stored in a file and runs it. The initial vocabulary search path is used. If the source file contains a " { $link POSTPONE: MAIN: } " declaration, the main entry point of the file will be also be executed. Loading messages will be suppressed." }
|
{ $description "Parses the Factor source code stored in a file and runs it. The initial vocabulary search path is used. If the source file contains a " { $link POSTPONE: MAIN: } " declaration, the main entry point of the file will be also be executed. Loading messages will be suppressed." }
|
||||||
{ $errors "Throws an error if loading the file fails, there input is malformed, or if a runtime error occurs while calling the parsed quotation or executing the main entry point." } ;
|
{ $errors "Throws an error if loading the file fails, there input is malformed, or if a runtime error occurs while calling the parsed quotation or executing the main entry point." } ;
|
||||||
|
|
||||||
ABOUT: "command-line"
|
ABOUT: "command-line"
|
||||||
|
|
|
@ -9,8 +9,8 @@ STRING: ex-caller-return
|
||||||
USING: compiler.cfg.builder.alien make prettyprint ;
|
USING: compiler.cfg.builder.alien make prettyprint ;
|
||||||
[
|
[
|
||||||
T{ ##alien-invoke { reg-outputs { { 1 int-rep RAX } } } } ,
|
T{ ##alien-invoke { reg-outputs { { 1 int-rep RAX } } } } ,
|
||||||
T{ alien-invoke-params { return pointer: void } } caller-return
|
T{ alien-invoke-params { return pointer: void } } caller-return
|
||||||
] { } make .
|
] { } make .
|
||||||
{
|
{
|
||||||
T{ ##alien-invoke { reg-outputs { { 1 int-rep RAX } } } }
|
T{ ##alien-invoke { reg-outputs { { 1 int-rep RAX } } } }
|
||||||
T{ ##box-alien { dst 116 } { src 1 } { temp 115 } }
|
T{ ##box-alien { dst 116 } { src 1 } { temp 115 } }
|
||||||
|
|
|
@ -54,7 +54,7 @@ HELP: <basic-block>
|
||||||
|
|
||||||
HELP: <cfg>
|
HELP: <cfg>
|
||||||
{ $values { "word" word } { "label" "label" } { "entry" basic-block } { "cfg" cfg } }
|
{ $values { "word" word } { "label" "label" } { "entry" basic-block } { "cfg" cfg } }
|
||||||
{ $description "Constructor for " { $link cfg } ". " { $slot "spill-area-size" } " and " { $slot "spill-area-align" } " are set to default values." } ;
|
{ $description "Constructor for " { $link cfg } ". " { $slot "spill-area-size" } " and " { $slot "spill-area-align" } " are set to default values." } ;
|
||||||
|
|
||||||
|
|
||||||
HELP: cfg
|
HELP: cfg
|
||||||
|
|
|
@ -29,7 +29,7 @@ HELP: blocks-with-gc
|
||||||
|
|
||||||
HELP: gc-check-offsets
|
HELP: gc-check-offsets
|
||||||
{ $values { "insns" sequence } { "seq" sequence } }
|
{ $values { "insns" sequence } { "seq" sequence } }
|
||||||
{ $description "A basic block is divided into sections by " { $link ##call } " and " { $link ##phi } " instructions. For every section with at least one allocation, record the offset of its first instruction in a sequence." } ;
|
{ $description "A basic block is divided into sections by " { $link ##call } " and " { $link ##phi } " instructions. For every section with at least one allocation, record the offset of its first instruction in a sequence." } ;
|
||||||
|
|
||||||
HELP: insert-gc-check?
|
HELP: insert-gc-check?
|
||||||
{ $values { "bb" basic-block } { "?" boolean } }
|
{ $values { "bb" basic-block } { "?" boolean } }
|
||||||
|
@ -37,7 +37,7 @@ HELP: insert-gc-check?
|
||||||
{ $see-also allocation-insn } ;
|
{ $see-also allocation-insn } ;
|
||||||
|
|
||||||
HELP: insert-gc-checks
|
HELP: insert-gc-checks
|
||||||
{ $values { "cfg" cfg } }
|
{ $values { "cfg" cfg } }
|
||||||
{ $description "Inserts gc checks in each " { $link basic-block } " in the cfg where they are needed." } ;
|
{ $description "Inserts gc checks in each " { $link basic-block } " in the cfg where they are needed." } ;
|
||||||
|
|
||||||
PRIVATE>
|
PRIVATE>
|
||||||
|
|
|
@ -19,7 +19,7 @@ HELP: spill-after
|
||||||
{ "after" live-interval-state }
|
{ "after" live-interval-state }
|
||||||
{ "after/f" { $maybe live-interval-state } }
|
{ "after/f" { $maybe live-interval-state } }
|
||||||
}
|
}
|
||||||
{ $description "If the interval has no more usages after the spill location, then it is the first child of an interval that was split. We spill the value and let the resolve pass insert a reload later. An interval may be split if it overlaps a " { $link sync-point } "." }
|
{ $description "If the interval has no more usages after the spill location, then it is the first child of an interval that was split. We spill the value and let the resolve pass insert a reload later. An interval may be split if it overlaps a " { $link sync-point } "." }
|
||||||
{ $see-also spill-before } ;
|
{ $see-also spill-before } ;
|
||||||
|
|
||||||
HELP: spill-available
|
HELP: spill-available
|
||||||
|
|
|
@ -77,7 +77,7 @@ HELP: spill-slots
|
||||||
{ $see-also init-allocator } ;
|
{ $see-also init-allocator } ;
|
||||||
|
|
||||||
HELP: unhandled-min-heap
|
HELP: unhandled-min-heap
|
||||||
{ $var-description { $link min-heap } " of all live intervals and sync points which still needs processing. It is used by " { $link (allocate-registers) } ". The key of the heap is a pair of values, " { $slot "start" } " and " { $slot "end" } " for the " { $link live-interval-state } " tuple and " { $slot "n" } " and 1/0.0 for the " { $link sync-point } " tuple. That way smaller live intervals are always processed before larger ones and all live intervals before sync points." } ;
|
{ $var-description { $link min-heap } " of all live intervals and sync points which still needs processing. It is used by " { $link (allocate-registers) } ". The key of the heap is a pair of values, " { $slot "start" } " and " { $slot "end" } " for the " { $link live-interval-state } " tuple and " { $slot "n" } " and 1/0.0 for the " { $link sync-point } " tuple. That way smaller live intervals are always processed before larger ones and all live intervals before sync points." } ;
|
||||||
|
|
||||||
ARTICLE: "compiler.cfg.linear-scan.allocation.state" "Live interval state"
|
ARTICLE: "compiler.cfg.linear-scan.allocation.state" "Live interval state"
|
||||||
"Active intervals:"
|
"Active intervals:"
|
||||||
|
|
|
@ -29,7 +29,7 @@ HELP: gen-uses
|
||||||
|
|
||||||
HELP: kill-defs
|
HELP: kill-defs
|
||||||
{ $values { "live-set" assoc } { "insn" insn } }
|
{ $values { "live-set" assoc } { "insn" insn } }
|
||||||
{ $description "If liveness analysis is run after SSA destruction, we need to kill vregs that have been coalesced with others (they won't have been renamed from their original values in the CFG). Otherwise, we get a bunch of stray uses that wind up live-in/out when they shouldn't be. However, we must take care to still report the original vregs in the live-sets, because they have information associated with them (like representations) that would get lost if we just used the leaders for everything." } ;
|
{ $description "If liveness analysis is run after SSA destruction, we need to kill vregs that have been coalesced with others (they won't have been renamed from their original values in the CFG). Otherwise, we get a bunch of stray uses that wind up live-in/out when they shouldn't be. However, we must take care to still report the original vregs in the live-sets, because they have information associated with them (like representations) that would get lost if we just used the leaders for everything." } ;
|
||||||
|
|
||||||
HELP: live-in
|
HELP: live-in
|
||||||
{ $values { "bb" basic-block } { "set" assoc } }
|
{ $values { "bb" basic-block } { "set" assoc } }
|
||||||
|
|
|
@ -16,7 +16,7 @@ HELP: end-local-analysis
|
||||||
{ $description "Called to end the local analysis of a block. The word fills in the blocks slots " { $slot "replaces" } ", " { $slot "peeks" } " and " { $slot "kills" } " with what the blocks replaces, peeks and kill locations are." } ;
|
{ $description "Called to end the local analysis of a block. The word fills in the blocks slots " { $slot "replaces" } ", " { $slot "peeks" } " and " { $slot "kills" } " with what the blocks replaces, peeks and kill locations are." } ;
|
||||||
|
|
||||||
HELP: global-loc>local
|
HELP: global-loc>local
|
||||||
{ $values { "loc" loc } { "height-state" height-state } { "loc'" loc } }
|
{ $values { "loc" loc } { "height-state" height-state } { "loc'" loc } }
|
||||||
{ $description "Translates an absolute stack location to one that is relative to the given height state." }
|
{ $description "Translates an absolute stack location to one that is relative to the given height state." }
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $example
|
{ $example
|
||||||
|
|
|
@ -67,7 +67,8 @@ HELP: define-persistent
|
||||||
{ $description "Defines a relation from a Factor " { $snippet "tuple class" } " to a SQL database table name. The format for the slot specifiers is as follows:"
|
{ $description "Defines a relation from a Factor " { $snippet "tuple class" } " to a SQL database table name. The format for the slot specifiers is as follows:"
|
||||||
{ $list
|
{ $list
|
||||||
{ "a slot name from the " { $snippet "tuple class" } }
|
{ "a slot name from the " { $snippet "tuple class" } }
|
||||||
{ "the name of a database column that maps to the slot" } { "a database type (see " { $link "db.types" } ")" }
|
{ "the name of a database column that maps to the slot" }
|
||||||
|
{ "a database type (see " { $link "db.types" } ")" }
|
||||||
} "Throws an error if the slot name (column one from each row) is not a slot in the tuple or its superclases." }
|
} "Throws an error if the slot name (column one from each row) is not a slot in the tuple or its superclases." }
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $code "USING: db.tuples db.types ;"
|
{ $code "USING: db.tuples db.types ;"
|
||||||
|
|
|
@ -46,7 +46,7 @@ HELP: dlist-any?
|
||||||
|
|
||||||
HELP: dlist-find
|
HELP: dlist-find
|
||||||
{ $values { "dlist" { $link dlist } } { "quot" quotation } { "obj/f" { $maybe object } } { "?" boolean } }
|
{ $values { "dlist" { $link dlist } } { "quot" quotation } { "obj/f" { $maybe object } } { "?" boolean } }
|
||||||
{ $description "Applies the quotation to each element of the " { $link dlist } " in turn, until it outputs a true value or the end of the " { $link dlist } " is reached. Outputs either the object it found or " { $link f } ", and a boolean which is true if an object is found." }
|
{ $description "Applies the quotation to each element of the " { $link dlist } " in turn, until it outputs a true value or the end of the " { $link dlist } " is reached. Outputs either the object it found or " { $link f } ", and a boolean which is true if an object is found." }
|
||||||
{ $notes "Returns a boolean to allow dlists to store " { $link f } "."
|
{ $notes "Returns a boolean to allow dlists to store " { $link f } "."
|
||||||
$nl
|
$nl
|
||||||
"This operation is O(n)."
|
"This operation is O(n)."
|
||||||
|
@ -64,7 +64,7 @@ HELP: dlist-length
|
||||||
|
|
||||||
HELP: delete-node-if*
|
HELP: delete-node-if*
|
||||||
{ $values { "dlist" { $link dlist } } { "quot" quotation } { "obj/f" { $maybe object } } { "?" boolean } }
|
{ $values { "dlist" { $link dlist } } { "quot" quotation } { "obj/f" { $maybe object } } { "?" boolean } }
|
||||||
{ $description "Calls " { $link dlist-find } " on the " { $link dlist } " and deletes the node returned, if any. Returns the value of the deleted node and a boolean to allow the deleted value to distinguished from " { $link f } ", for nothing deleted." }
|
{ $description "Calls " { $link dlist-find } " on the " { $link dlist } " and deletes the node returned, if any. Returns the value of the deleted node and a boolean to allow the deleted value to distinguished from " { $link f } ", for nothing deleted." }
|
||||||
{ $notes "This operation is O(n)." } ;
|
{ $notes "This operation is O(n)." } ;
|
||||||
|
|
||||||
HELP: delete-node-if
|
HELP: delete-node-if
|
||||||
|
|
|
@ -84,7 +84,7 @@ HELP: doc-string
|
||||||
|
|
||||||
HELP: set-doc-string
|
HELP: set-doc-string
|
||||||
{ $values { "string" string } { "document" document } }
|
{ $values { "string" string } { "document" document } }
|
||||||
{ $description "Sets the contents of the document to a string, which may use either " { $snippet "\\n" } ", " { $snippet "\\r\\n" } " or " { $snippet "\\r" } " line separators." }
|
{ $description "Sets the contents of the document to a string, which may use either " { $snippet "\\n" } ", " { $snippet "\\r\\n" } " or " { $snippet "\\r" } " line separators." }
|
||||||
{ $side-effects "document" } ;
|
{ $side-effects "document" } ;
|
||||||
|
|
||||||
HELP: clear-doc
|
HELP: clear-doc
|
||||||
|
|
|
@ -2,6 +2,6 @@ USING: help.syntax help.markup ;
|
||||||
IN: editors.editpadpro
|
IN: editors.editpadpro
|
||||||
|
|
||||||
ARTICLE: "editors.editpadpro" "EditPad Pro support"
|
ARTICLE: "editors.editpadpro" "EditPad Pro support"
|
||||||
"EditPadPro text editor integration on Windows. Be sure to put EditPadPro in your system path so that it will be found. Windows only." ;
|
"EditPadPro text editor integration on Windows. Be sure to put EditPadPro in your system path so that it will be found. Windows only." ;
|
||||||
|
|
||||||
ABOUT: "editors.editpadpro"
|
ABOUT: "editors.editpadpro"
|
||||||
|
|
|
@ -2,6 +2,6 @@ USING: help.syntax help.markup ;
|
||||||
IN: editors.editpadpro
|
IN: editors.editpadpro
|
||||||
|
|
||||||
ARTICLE: "editors.editpadpro" "EditPad Pro support"
|
ARTICLE: "editors.editpadpro" "EditPad Pro support"
|
||||||
"EditPadPro text editor integration on Windows. Be sure to put EditPadPro in your system path so that it will be found. Windows only." ;
|
"EditPadPro text editor integration on Windows. Be sure to put EditPadPro in your system path so that it will be found. Windows only." ;
|
||||||
|
|
||||||
ABOUT: "editors.editpadpro"
|
ABOUT: "editors.editpadpro"
|
||||||
|
|
|
@ -35,7 +35,7 @@ HELP: printf
|
||||||
"formatted with a " { $snippet "+" } " preceeding it if positive."
|
"formatted with a " { $snippet "+" } " preceeding it if positive."
|
||||||
$nl
|
$nl
|
||||||
"Padding (" { $snippet "P" } ") is used to optionally specify the minimum width of the result "
|
"Padding (" { $snippet "P" } ") is used to optionally specify the minimum width of the result "
|
||||||
"string, the padding character, and the alignment. By default, the padding "
|
"string, the padding character, and the alignment. By default, the padding "
|
||||||
"character defaults to a space and the alignment defaults to right-aligned. "
|
"character defaults to a space and the alignment defaults to right-aligned. "
|
||||||
"For example:"
|
"For example:"
|
||||||
$nl
|
$nl
|
||||||
|
|
|
@ -18,7 +18,7 @@ HELP: user
|
||||||
|
|
||||||
HELP: add-user
|
HELP: add-user
|
||||||
{ $values { "provider" "an authentication provider" } { "user" user } }
|
{ $values { "provider" "an authentication provider" } { "user" user } }
|
||||||
{ $description "A utility word which calls " { $link new-user } " and throws an error if the user already exists." } ;
|
{ $description "A utility word which calls " { $link new-user } " and throws an error if the user already exists." } ;
|
||||||
|
|
||||||
HELP: get-user
|
HELP: get-user
|
||||||
{ $values { "username" string } { "provider" "an authentication provider" } { "user/f" { $maybe user } } }
|
{ $values { "username" string } { "provider" "an authentication provider" } { "user/f" { $maybe user } } }
|
||||||
|
|
|
@ -53,7 +53,7 @@ HELP: process-children
|
||||||
|
|
||||||
HELP: compile-children>string
|
HELP: compile-children>string
|
||||||
{ $values { "tag" tag } }
|
{ $values { "tag" tag } }
|
||||||
{ $description "Compiles the tag so that the output it generates is written to a string, which is pushed on the stack when the template runs. A subsequent " { $link [code] } " call must be made with a quotation which consumes the string." } ;
|
{ $description "Compiles the tag so that the output it generates is written to a string, which is pushed on the stack when the template runs. A subsequent " { $link [code] } " call must be made with a quotation which consumes the string." } ;
|
||||||
|
|
||||||
HELP: compile-with-scope
|
HELP: compile-with-scope
|
||||||
{ $values { "quot" quotation } }
|
{ $values { "quot" quotation } }
|
||||||
|
|
|
@ -59,7 +59,7 @@ HELP: qualified-directory-files
|
||||||
|
|
||||||
HELP: with-directory-files
|
HELP: with-directory-files
|
||||||
{ $values { "path" "a pathname string" } { "quot" quotation } }
|
{ $values { "path" "a pathname string" } { "quot" quotation } }
|
||||||
{ $description "Calls the quotation with the directory file names on the stack and with the directory set as the " { $link current-directory } ". Restores the current directory after the quotation is called." }
|
{ $description "Calls the quotation with the directory file names on the stack and with the directory set as the " { $link current-directory } ". Restores the current directory after the quotation is called." }
|
||||||
{ $examples
|
{ $examples
|
||||||
"Print all files in your home directory which are larger than a megabyte:"
|
"Print all files in your home directory which are larger than a megabyte:"
|
||||||
{ $code
|
{ $code
|
||||||
|
@ -75,7 +75,7 @@ home [
|
||||||
|
|
||||||
HELP: with-directory-entries
|
HELP: with-directory-entries
|
||||||
{ $values { "path" "a pathname string" } { "quot" quotation } }
|
{ $values { "path" "a pathname string" } { "quot" quotation } }
|
||||||
{ $description "Calls the quotation with the directory entries on the stack and with the directory set as the " { $link current-directory } ". Restores the current directory after the quotation is called." } ;
|
{ $description "Calls the quotation with the directory entries on the stack and with the directory set as the " { $link current-directory } ". Restores the current directory after the quotation is called." } ;
|
||||||
|
|
||||||
HELP: delete-file
|
HELP: delete-file
|
||||||
{ $values { "path" "a pathname string" } }
|
{ $values { "path" "a pathname string" } }
|
||||||
|
|
|
@ -7,7 +7,7 @@ HELP: directory-tree-files
|
||||||
|
|
||||||
HELP: with-directory-tree-files
|
HELP: with-directory-tree-files
|
||||||
{ $values { "path" "a pathname string" } { "quot" quotation } }
|
{ $values { "path" "a pathname string" } { "quot" quotation } }
|
||||||
{ $description "Calls the quotation with the recursive directory file names on the stack and with the directory set as the " { $link current-directory } ". Restores the current directory after the quotation is called." } ;
|
{ $description "Calls the quotation with the recursive directory file names on the stack and with the directory set as the " { $link current-directory } ". Restores the current directory after the quotation is called." } ;
|
||||||
|
|
||||||
HELP: delete-tree
|
HELP: delete-tree
|
||||||
{ $values { "path" "a pathname string" } }
|
{ $values { "path" "a pathname string" } }
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin/arabic
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.arabic" "Arabic encoding"
|
ARTICLE: "io.encodings.8-bit.arabic" "Arabic encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.arabic" } " vocabulary provides the " { $link latin/arabic } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.arabic" } " vocabulary provides the " { $link latin/arabic } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.arabic"
|
ABOUT: "io.encodings.8-bit.arabic"
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin/greek
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.greek" "Greek encoding"
|
ARTICLE: "io.encodings.8-bit.greek" "Greek encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.greek" } " vocabulary provides the " { $link latin/greek } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.greek" } " vocabulary provides the " { $link latin/greek } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.greek"
|
ABOUT: "io.encodings.8-bit.greek"
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin2
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.latin2" "Latin2 encoding"
|
ARTICLE: "io.encodings.8-bit.latin2" "Latin2 encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.latin2" } " vocabulary provides the " { $link latin2 } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.latin2" } " vocabulary provides the " { $link latin2 } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.latin2"
|
ABOUT: "io.encodings.8-bit.latin2"
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin3
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.latin3" "Latin3 encoding"
|
ARTICLE: "io.encodings.8-bit.latin3" "Latin3 encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.latin3" } " vocabulary provides the " { $link latin3 } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.latin3" } " vocabulary provides the " { $link latin3 } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.latin3"
|
ABOUT: "io.encodings.8-bit.latin3"
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin4
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.latin4" "Latin4 encoding"
|
ARTICLE: "io.encodings.8-bit.latin4" "Latin4 encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.latin4" } " vocabulary provides the " { $link latin4 } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.latin4" } " vocabulary provides the " { $link latin4 } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.latin4"
|
ABOUT: "io.encodings.8-bit.latin4"
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin5
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.latin5" "Latin5 encoding"
|
ARTICLE: "io.encodings.8-bit.latin5" "Latin5 encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.latin5" } " vocabulary provides the " { $link latin5 } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.latin5" } " vocabulary provides the " { $link latin5 } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.latin5"
|
ABOUT: "io.encodings.8-bit.latin5"
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin6
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.latin6" "Latin6 encoding"
|
ARTICLE: "io.encodings.8-bit.latin6" "Latin6 encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.latin6" } " vocabulary provides the " { $link latin6 } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.latin6" } " vocabulary provides the " { $link latin6 } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.latin6"
|
ABOUT: "io.encodings.8-bit.latin6"
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin7
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.latin7" "Latin7 encoding"
|
ARTICLE: "io.encodings.8-bit.latin7" "Latin7 encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.latin7" } " vocabulary provides the " { $link latin7 } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.latin7" } " vocabulary provides the " { $link latin7 } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.latin7"
|
ABOUT: "io.encodings.8-bit.latin7"
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin8
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.latin8" "Latin8 encoding"
|
ARTICLE: "io.encodings.8-bit.latin8" "Latin8 encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.latin8" } " vocabulary provides the " { $link latin8 } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.latin8" } " vocabulary provides the " { $link latin8 } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.latin8"
|
ABOUT: "io.encodings.8-bit.latin8"
|
||||||
|
|
|
@ -8,6 +8,6 @@ HELP: latin/thai
|
||||||
{ $see-also "encodings-introduction" } ;
|
{ $see-also "encodings-introduction" } ;
|
||||||
|
|
||||||
ARTICLE: "io.encodings.8-bit.thai" "Thai encoding"
|
ARTICLE: "io.encodings.8-bit.thai" "Thai encoding"
|
||||||
"The " { $vocab-link "io.encodings.8-bit.thai" } " vocabulary provides the " { $link latin/thai } " encoding." ;
|
"The " { $vocab-link "io.encodings.8-bit.thai" } " vocabulary provides the " { $link latin/thai } " encoding." ;
|
||||||
|
|
||||||
ABOUT: "io.encodings.8-bit.thai"
|
ABOUT: "io.encodings.8-bit.thai"
|
||||||
|
|
|
@ -8,7 +8,7 @@ HELP: file-info
|
||||||
|
|
||||||
HELP: link-info
|
HELP: link-info
|
||||||
{ $values { "path" "a pathname string" } { "info" file-info-tuple } }
|
{ $values { "path" "a pathname string" } { "info" file-info-tuple } }
|
||||||
{ $description "Queries the file system for metadata. If " { $snippet "path" } " refers to a symbolic link, information about the symbolic link itself is returned. See the article " { $link "file-types" } " for a list of metadata symbols." }
|
{ $description "Queries the file system for metadata. If " { $snippet "path" } " refers to a symbolic link, information about the symbolic link itself is returned. See the article " { $link "file-types" } " for a list of metadata symbols." }
|
||||||
{ $errors "Throws an error if the file does not exist." } ;
|
{ $errors "Throws an error if the file does not exist." } ;
|
||||||
|
|
||||||
{ file-info link-info file-info-tuple } related-words
|
{ file-info link-info file-info-tuple } related-words
|
||||||
|
|
|
@ -8,7 +8,7 @@ HELP: +directory+
|
||||||
{ $description "A directory. This type exists on all platforms. See " { $link "io.directories" } " for words operating on directories." } ;
|
{ $description "A directory. This type exists on all platforms. See " { $link "io.directories" } " for words operating on directories." } ;
|
||||||
|
|
||||||
HELP: +symbolic-link+
|
HELP: +symbolic-link+
|
||||||
{ $description "A symbolic link file. This type is currently implemented on Unix platforms only. See " { $link "io.files.links" } " for words operating on symbolic links." } ;
|
{ $description "A symbolic link file. This type is currently implemented on Unix platforms only. See " { $link "io.files.links" } " for words operating on symbolic links." } ;
|
||||||
|
|
||||||
HELP: +character-device+
|
HELP: +character-device+
|
||||||
{ $description "A Unix character device file. This type exists on Unix platforms only." } ;
|
{ $description "A Unix character device file. This type exists on Unix platforms only." } ;
|
||||||
|
|
|
@ -33,7 +33,7 @@ HELP: throw-on-eof
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
ARTICLE: "io.streams.throwing" "Throwing exceptions on stream exhaustion"
|
ARTICLE: "io.streams.throwing" "Throwing exceptions on stream exhaustion"
|
||||||
"The " { $vocab-link "io.streams.throwing" } " vocabulary implements combinators for changing the behavior of a stream to throw an exception upon exhaustion instead of returning " { $link f } "." $nl
|
"The " { $vocab-link "io.streams.throwing" } " vocabulary implements combinators for changing the behavior of a stream to throw an exception upon exhaustion instead of returning " { $link f } "." $nl
|
||||||
"A general combinator to wrap any stream:"
|
"A general combinator to wrap any stream:"
|
||||||
{ $subsections stream-throw-on-eof }
|
{ $subsections stream-throw-on-eof }
|
||||||
"A combinator for the " { $link input-stream } " variable:"
|
"A combinator for the " { $link input-stream } " variable:"
|
||||||
|
|
|
@ -246,7 +246,7 @@ HELP: font-size
|
||||||
"{ 12 18 24 72 }"
|
"{ 12 18 24 72 }"
|
||||||
"[ \"Bigger\" swap font-size associate format nl ] each"
|
"[ \"Bigger\" swap font-size associate format nl ] each"
|
||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
HELP: font-style
|
HELP: font-style
|
||||||
{ $description "Character style. Font style, one of " { $link plain } ", " { $link bold } ", " { $link italic } ", or " { $link bold-italic } "." }
|
{ $description "Character style. Font style, one of " { $link plain } ", " { $link bold } ", " { $link italic } ", or " { $link bold-italic } "." }
|
||||||
|
@ -257,7 +257,7 @@ HELP: font-style
|
||||||
"{ plain bold italic bold-italic }"
|
"{ plain bold italic bold-italic }"
|
||||||
"[ [ name>> ] keep font-style associate format nl ] each"
|
"[ [ name>> ] keep font-style associate format nl ] each"
|
||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
HELP: presented
|
HELP: presented
|
||||||
{ $description "Character and paragraph style. An object associated with the text. In the Factor UI, this is shown as a clickable presentation of the object; left-clicking invokes a default command, and right-clicking shows a menu of commands." } ;
|
{ $description "Character and paragraph style. An object associated with the text. In the Factor UI, this is shown as a clickable presentation of the object; left-clicking invokes a default command, and right-clicking shows a menu of commands." } ;
|
||||||
|
|
|
@ -2,7 +2,7 @@ IN: linked-assocs
|
||||||
USING: assocs help.markup help.syntax linked-assocs.prettyprint ;
|
USING: assocs help.markup help.syntax linked-assocs.prettyprint ;
|
||||||
|
|
||||||
HELP: linked-assoc
|
HELP: linked-assoc
|
||||||
{ $class-description "The class of linked assocs. Linked assoc are implemented by combining an assoc with a dlist. The assoc is used for lookup and retrieval of single values, while the dlist is used for getting lists of keys/values, which will be in insertion order." } ;
|
{ $class-description "The class of linked assocs. Linked assoc are implemented by combining an assoc with a dlist. The assoc is used for lookup and retrieval of single values, while the dlist is used for getting lists of keys/values, which will be in insertion order." } ;
|
||||||
|
|
||||||
HELP: <linked-assoc>
|
HELP: <linked-assoc>
|
||||||
{ $values { "exemplar" "an exemplar assoc" } { "assoc" linked-assoc } }
|
{ $values { "exemplar" "an exemplar assoc" } { "assoc" linked-assoc } }
|
||||||
|
|
|
@ -105,8 +105,8 @@ HELP: each-combination
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
HELP: factoradic
|
HELP: factoradic
|
||||||
{ $values { "n" integer } { "factoradic" sequence } }
|
{ $values { "n" integer } { "factoradic" sequence } }
|
||||||
{ $description "Converts a positive integer " { $snippet "n" } " to factoradic form. The factoradic of an integer is its representation based on a mixed radix numerical system that corresponds to the values of " { $snippet "n" } " factorial." }
|
{ $description "Converts a positive integer " { $snippet "n" } " to factoradic form. The factoradic of an integer is its representation based on a mixed radix numerical system that corresponds to the values of " { $snippet "n" } " factorial." }
|
||||||
{ $examples { $example "USING: math.combinatorics.private prettyprint ;" "859 factoradic ." "{ 1 1 0 3 0 1 0 }" } } ;
|
{ $examples { $example "USING: math.combinatorics.private prettyprint ;" "859 factoradic ." "{ 1 1 0 3 0 1 0 }" } } ;
|
||||||
|
|
||||||
HELP: >permutation
|
HELP: >permutation
|
||||||
{ $values { "factoradic" sequence } { "permutation" sequence } }
|
{ $values { "factoradic" sequence } { "permutation" sequence } }
|
||||||
|
|
|
@ -336,7 +336,7 @@ HELP: sigmoid
|
||||||
|
|
||||||
HELP: signum
|
HELP: signum
|
||||||
{ $values { "x" number } { "y" number } }
|
{ $values { "x" number } { "y" number } }
|
||||||
{ $description "Calculates the signum value. For a real number, " { $snippet "x" } ", this is its sign (-1, 0, or 1). For a complex number, " { $snippet "x" } ", this is the point on the unit circle of the complex plane that is nearest to " { $snippet "x" } "." } ;
|
{ $description "Calculates the signum value. For a real number, " { $snippet "x" } ", this is its sign (-1, 0, or 1). For a complex number, " { $snippet "x" } ", this is the point on the unit circle of the complex plane that is nearest to " { $snippet "x" } "." } ;
|
||||||
|
|
||||||
HELP: copysign
|
HELP: copysign
|
||||||
{ $values { "x" number } { "y" number } { "x'" number } }
|
{ $values { "x" number } { "y" number } { "x'" number } }
|
||||||
|
|
|
@ -17,7 +17,7 @@ HELP: harmonic-mean
|
||||||
|
|
||||||
HELP: kth-smallest
|
HELP: kth-smallest
|
||||||
{ $values { "seq" sequence } { "k" integer } { "elt" object } }
|
{ $values { "seq" sequence } { "k" integer } { "elt" object } }
|
||||||
{ $description "Returns the kth smallest element. This is semantically equivalent to " { $snippet "swap natural-sort nth" } ", and is therefore zero-indexed. " { $snippet "k" } " may not be larger than the highest index of " { $snippet "sequence" } "." }
|
{ $description "Returns the kth smallest element. This is semantically equivalent to " { $snippet "swap natural-sort nth" } ", and is therefore zero-indexed. " { $snippet "k" } " may not be larger than the highest index of " { $snippet "sequence" } "." }
|
||||||
{ $examples { $example "USING: math.statistics prettyprint ;" "{ 3 1 2 } 1 kth-smallest ." "2" } } ;
|
{ $examples { $example "USING: math.statistics prettyprint ;" "{ 3 1 2 } 1 kth-smallest ." "2" } } ;
|
||||||
|
|
||||||
HELP: mean
|
HELP: mean
|
||||||
|
|
|
@ -21,7 +21,7 @@ HELP: (list-of)
|
||||||
{ "repeat1?" boolean }
|
{ "repeat1?" boolean }
|
||||||
{ "parser" "a parser" }
|
{ "parser" "a parser" }
|
||||||
} { $description
|
} { $description
|
||||||
"Returns a parser that returns a list of items separated by the separator parser. Does not hide the separators."
|
"Returns a parser that returns a list of items separated by the separator parser. Does not hide the separators."
|
||||||
} { $see-also list-of list-of-many } ;
|
} { $see-also list-of list-of-many } ;
|
||||||
|
|
||||||
HELP: list-of
|
HELP: list-of
|
||||||
|
@ -30,10 +30,10 @@ HELP: list-of
|
||||||
{ "separator" "a parser" }
|
{ "separator" "a parser" }
|
||||||
{ "parser" "a parser" }
|
{ "parser" "a parser" }
|
||||||
} { $description
|
} { $description
|
||||||
"Returns a parser that returns a list of items separated by the separator parser. Hides the separators and matches a list of one or more items."
|
"Returns a parser that returns a list of items separated by the separator parser. Hides the separators and matches a list of one or more items."
|
||||||
} { $notes "Use " { $link list-of-many } " to ensure a list contains two or more items." }
|
} { $notes "Use " { $link list-of-many } " to ensure a list contains two or more items." }
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $example "USING: peg peg.parsers prettyprint ;" "\"a\" \"a\" token \",\" token list-of parse ." "V{ \"a\" }" }
|
{ $example "USING: peg peg.parsers prettyprint ;" "\"a\" \"a\" token \",\" token list-of parse ." "V{ \"a\" }" }
|
||||||
{ $example "USING: peg peg.parsers prettyprint ;" "\"a,a,a,a\" \"a\" token \",\" token list-of parse ." "V{ \"a\" \"a\" \"a\" \"a\" }" }
|
{ $example "USING: peg peg.parsers prettyprint ;" "\"a,a,a,a\" \"a\" token \",\" token list-of parse ." "V{ \"a\" \"a\" \"a\" \"a\" }" }
|
||||||
} { $see-also list-of-many } ;
|
} { $see-also list-of-many } ;
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ HELP: list-of-many
|
||||||
{ "separator" "a parser" }
|
{ "separator" "a parser" }
|
||||||
{ "parser" "a parser" }
|
{ "parser" "a parser" }
|
||||||
} { $description
|
} { $description
|
||||||
"Returns a parser that returns a list of items separated by the separator parser. Hides the separators and matches a list of two or more items."
|
"Returns a parser that returns a list of items separated by the separator parser. Hides the separators and matches a list of two or more items."
|
||||||
} { $notes "Use " { $link list-of } " to return a list of only one item."
|
} { $notes "Use " { $link list-of } " to return a list of only one item."
|
||||||
} { $examples
|
} { $examples
|
||||||
{ $code "USING: peg peg.parsers prettyprint ;" "\"a\" \"a\" token \",\" token list-of-many parse => exception" }
|
{ $code "USING: peg peg.parsers prettyprint ;" "\"a\" \"a\" token \",\" token list-of-many parse => exception" }
|
||||||
|
@ -122,7 +122,7 @@ HELP: pack
|
||||||
{ "end" "a parser" }
|
{ "end" "a parser" }
|
||||||
{ "parser" "a parser" }
|
{ "parser" "a parser" }
|
||||||
} { $description
|
} { $description
|
||||||
"Returns a parser that parses the begin, body, and end parsers in order. The begin and end parsers are hidden."
|
"Returns a parser that parses the begin, body, and end parsers in order. The begin and end parsers are hidden."
|
||||||
} { $examples
|
} { $examples
|
||||||
{ $example "USING: peg peg.parsers prettyprint ;" "\"hi123bye\" \"hi\" token integer-parser \"bye\" token pack parse ." "123" }
|
{ $example "USING: peg peg.parsers prettyprint ;" "\"hi123bye\" \"hi\" token integer-parser \"bye\" token pack parse ." "123" }
|
||||||
} { $see-also surrounded-by } ;
|
} { $see-also surrounded-by } ;
|
||||||
|
@ -134,7 +134,7 @@ HELP: surrounded-by
|
||||||
{ "end" string }
|
{ "end" string }
|
||||||
{ "parser'" "a parser" }
|
{ "parser'" "a parser" }
|
||||||
} { $description
|
} { $description
|
||||||
"Calls token on begin and end to make them into string parsers. Returns a parser that parses the begin, body, and end parsers in order. The begin and end parsers are hidden."
|
"Calls token on begin and end to make them into string parsers. Returns a parser that parses the begin, body, and end parsers in order. The begin and end parsers are hidden."
|
||||||
} { $examples
|
} { $examples
|
||||||
{ $example "USING: peg peg.parsers prettyprint ;" "\"hi123bye\" integer-parser \"hi\" \"bye\" surrounded-by parse ." "123" }
|
{ $example "USING: peg peg.parsers prettyprint ;" "\"hi123bye\" integer-parser \"hi\" \"bye\" surrounded-by parse ." "123" }
|
||||||
} { $see-also pack } ;
|
} { $see-also pack } ;
|
||||||
|
@ -176,4 +176,4 @@ HELP: range-pattern
|
||||||
{ $example "USING: peg peg.parsers prettyprint strings ;" "\"a\" \"_a-zA-Z\" range-pattern parse 1string ." "\"a\"" }
|
{ $example "USING: peg peg.parsers prettyprint strings ;" "\"a\" \"_a-zA-Z\" range-pattern parse 1string ." "\"a\"" }
|
||||||
{ $code "USING: peg peg.parsers prettyprint ;\n\"0\" \"^0-9\" range-pattern parse => exception" }
|
{ $code "USING: peg peg.parsers prettyprint ;\n\"0\" \"^0-9\" range-pattern parse => exception" }
|
||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
|
|
|
@ -16,7 +16,7 @@ HELP: search
|
||||||
{ $values
|
{ $values
|
||||||
{ "string" string }
|
{ "string" string }
|
||||||
{ "parser" "a peg based parser" }
|
{ "parser" "a peg based parser" }
|
||||||
{ "seq" sequence }
|
{ "seq" sequence }
|
||||||
}
|
}
|
||||||
{ $description
|
{ $description
|
||||||
"Returns a sequence containing the parse results of all substrings "
|
"Returns a sequence containing the parse results of all substrings "
|
||||||
|
|
|
@ -44,7 +44,7 @@ ARTICLE: "prettyprint-variables" "Prettyprint control variables"
|
||||||
ARTICLE: "prettyprint-limitations" "Prettyprinter limitations"
|
ARTICLE: "prettyprint-limitations" "Prettyprinter limitations"
|
||||||
"When using the prettyprinter as a serialization mechanism, keep the following points in mind:"
|
"When using the prettyprinter as a serialization mechanism, keep the following points in mind:"
|
||||||
{ $list
|
{ $list
|
||||||
{ "When printing words, " { $link POSTPONE: USING: } " declarations are only output if the " { $link pprint-use } " or " { $link unparse-use } " words are used." }
|
{ "When printing words, " { $link POSTPONE: USING: } " declarations are only output if the " { $link pprint-use } " or " { $link unparse-use } " words are used." }
|
||||||
{ "Long output will be truncated if certain " { $link "prettyprint-variables" } " are set." }
|
{ "Long output will be truncated if certain " { $link "prettyprint-variables" } " are set." }
|
||||||
"Shared structure is not reflected in the printed output; if the output is parsed back in, fresh objects are created for all literal denotations."
|
"Shared structure is not reflected in the printed output; if the output is parsed back in, fresh objects are created for all literal denotations."
|
||||||
{ "Circular structure is not printed in a readable way. For example, try this:"
|
{ "Circular structure is not printed in a readable way. For example, try this:"
|
||||||
|
|
|
@ -88,15 +88,15 @@ HELP: random-bits*
|
||||||
|
|
||||||
HELP: with-random
|
HELP: with-random
|
||||||
{ $values { "obj" "a random number generator" } { "quot" quotation } }
|
{ $values { "obj" "a random number generator" } { "quot" quotation } }
|
||||||
{ $description "Calls the quotation with the random number generator in a dynamic variable. All random numbers will be generated using this random number generator." } ;
|
{ $description "Calls the quotation with the random number generator in a dynamic variable. All random numbers will be generated using this random number generator." } ;
|
||||||
|
|
||||||
HELP: with-secure-random
|
HELP: with-secure-random
|
||||||
{ $values { "quot" quotation } }
|
{ $values { "quot" quotation } }
|
||||||
{ $description "Calls the quotation with the secure random number generator in a dynamic variable. All random numbers will be generated using this random number generator." } ;
|
{ $description "Calls the quotation with the secure random number generator in a dynamic variable. All random numbers will be generated using this random number generator." } ;
|
||||||
|
|
||||||
HELP: with-system-random
|
HELP: with-system-random
|
||||||
{ $values { "quot" quotation } }
|
{ $values { "quot" quotation } }
|
||||||
{ $description "Calls the quotation with the system's random number generator in a dynamic variable. All random numbers will be generated using this random number generator." } ;
|
{ $description "Calls the quotation with the system's random number generator in a dynamic variable. All random numbers will be generated using this random number generator." } ;
|
||||||
|
|
||||||
{ with-random with-secure-random with-system-random } related-words
|
{ with-random with-secure-random with-system-random } related-words
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@ ARTICLE: "sequences.complex" "Complex virtual sequences"
|
||||||
ABOUT: "sequences.complex"
|
ABOUT: "sequences.complex"
|
||||||
|
|
||||||
HELP: complex-sequence
|
HELP: complex-sequence
|
||||||
{ $class-description "Sequence wrapper class that transforms a sequence of " { $link real } " number values into a sequence of " { $link complex } " values, treating the underlying sequence as pairs of alternating real and imaginary values." }
|
{ $class-description "Sequence wrapper class that transforms a sequence of " { $link real } " number values into a sequence of " { $link complex } " values, treating the underlying sequence as pairs of alternating real and imaginary values." }
|
||||||
{ $examples { $example "USING: prettyprint specialized-arrays
|
{ $examples { $example "USING: prettyprint specialized-arrays
|
||||||
sequences.complex sequences alien.c-types arrays ;
|
sequences.complex sequences alien.c-types arrays ;
|
||||||
SPECIALIZED-ARRAY: double
|
SPECIALIZED-ARRAY: double
|
||||||
|
|
|
@ -22,7 +22,7 @@ HELP: param-prep-quot
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $unchecked-example
|
{ $unchecked-example
|
||||||
"USING: alien.c-types prettyprint stack-checker.alien ;"
|
"USING: alien.c-types prettyprint stack-checker.alien ;"
|
||||||
"T{ alien-invoke-params { parameters { void* c-string int } } } param-prep-quot ."
|
"T{ alien-invoke-params { parameters { void* c-string int } } } param-prep-quot ."
|
||||||
"[ [ [ [ ] dip >c-ptr ] dip \\ utf8 string>alien ] dip >fixnum ]"
|
"[ [ [ [ ] dip >c-ptr ] dip \\ utf8 string>alien ] dip >fixnum ]"
|
||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
|
|
|
@ -8,7 +8,7 @@ HELP: >suffix-array
|
||||||
{ $values
|
{ $values
|
||||||
{ "seq" sequence }
|
{ "seq" sequence }
|
||||||
{ "array" array } }
|
{ "array" array } }
|
||||||
{ $description "Creates a suffix array from the input sequence. Suffix arrays are arrays of slices." } ;
|
{ $description "Creates a suffix array from the input sequence. Suffix arrays are arrays of slices." } ;
|
||||||
|
|
||||||
HELP: SA{
|
HELP: SA{
|
||||||
{ $description "Creates a new literal suffix array at parse-time." } ;
|
{ $description "Creates a new literal suffix array at parse-time." } ;
|
||||||
|
|
|
@ -10,7 +10,7 @@ HELP: hexdump.
|
||||||
|
|
||||||
HELP: hexdump
|
HELP: hexdump
|
||||||
{ $values { "byte-array" byte-array } { "str" string } }
|
{ $values { "byte-array" byte-array } { "str" string } }
|
||||||
{ $description "Converts a sequence to its hexadecimal and ASCII representation sixteen characters at a time. Lines are separated by a newline character." }
|
{ $description "Converts a sequence to its hexadecimal and ASCII representation sixteen characters at a time. Lines are separated by a newline character." }
|
||||||
{ $see-also hexdump. } ;
|
{ $see-also hexdump. } ;
|
||||||
|
|
||||||
ARTICLE: "tools.hexdump" "Hexdump"
|
ARTICLE: "tools.hexdump" "Hexdump"
|
||||||
|
|
|
@ -117,7 +117,7 @@ HELP: profile
|
||||||
{ $description "Executes " { $snippet "quot" } " with the sampling profiler enabled. The results of the profile can subsequently be reported with words such as " { $link top-down } " and " { $link flat } ", or the raw data can be saved and inspected with " { $link most-recent-profile-data } "." } ;
|
{ $description "Executes " { $snippet "quot" } " with the sampling profiler enabled. The results of the profile can subsequently be reported with words such as " { $link top-down } " and " { $link flat } ", or the raw data can be saved and inspected with " { $link most-recent-profile-data } "." } ;
|
||||||
|
|
||||||
HELP: profile-node
|
HELP: profile-node
|
||||||
{ $class-description "Objects of this type are generated by profile reporting words such as " { $link top-down } ", " { $link top-down-max-depth } ", " { $link cross-section } ", and " { $link flat } "." } ;
|
{ $class-description "Objects of this type are generated by profile reporting words such as " { $link top-down } ", " { $link top-down-max-depth } ", " { $link cross-section } ", and " { $link flat } "." } ;
|
||||||
|
|
||||||
HELP: profile.
|
HELP: profile.
|
||||||
{ $values
|
{ $values
|
||||||
|
|
|
@ -55,7 +55,7 @@ HELP: commands
|
||||||
HELP: define-command-map
|
HELP: define-command-map
|
||||||
{ $values { "class" "a class word" } { "group" string } { "blurb" { $maybe string } } { "pairs" "a sequence of gesture/word pairs" } }
|
{ $values { "class" "a class word" } { "group" string } { "blurb" { $maybe string } } { "pairs" "a sequence of gesture/word pairs" } }
|
||||||
{ $description
|
{ $description
|
||||||
"Defines a command map on the specified gadget class. The " { $snippet "blurb" } " is an optional description. The " { $snippet "pairs" } " parameter is a sequence of pairs " { $snippet "{ gesture word }" } ". The " { $snippet "gesture" } " may be " { $link f } " if you are defining a \"toolbar\" " { $snippet "group" } ". The " { $snippet "word" } "s must be valid commands; see " { $link define-command } "."
|
"Defines a command map on the specified gadget class. The " { $snippet "blurb" } " is an optional description. The " { $snippet "pairs" } " parameter is a sequence of pairs " { $snippet "{ gesture word }" } ". The " { $snippet "gesture" } " may be " { $link f } " if you are defining a \"toolbar\" " { $snippet "group" } ". The " { $snippet "word" } "s must be valid commands; see " { $link define-command } "."
|
||||||
}
|
}
|
||||||
{ $notes "Only one of " { $link define-command-map } " and " { $link set-gestures } " can be used on a given gadget class, since each word will overwrite the other word's definitions." } ;
|
{ $notes "Only one of " { $link define-command-map } " and " { $link set-gestures } " can be used on a given gadget class, since each word will overwrite the other word's definitions." } ;
|
||||||
|
|
||||||
|
|
|
@ -76,7 +76,7 @@ HELP: editor-string
|
||||||
|
|
||||||
HELP: set-editor-string
|
HELP: set-editor-string
|
||||||
{ $values { "string" string } { "editor" editor } }
|
{ $values { "string" string } { "editor" editor } }
|
||||||
{ $description "Sets the contents of the editor's " { $link document } " to a string, which may use either " { $snippet "\\n" } ", " { $snippet "\\r\\n" } " or " { $snippet "\\r" } " line separators." } ;
|
{ $description "Sets the contents of the editor's " { $link document } " to a string, which may use either " { $snippet "\\n" } ", " { $snippet "\\r\\n" } " or " { $snippet "\\r" } " line separators." } ;
|
||||||
|
|
||||||
ARTICLE: "gadgets-editors-selection" "The caret and mark"
|
ARTICLE: "gadgets-editors-selection" "The caret and mark"
|
||||||
"If there is no selection, the caret and the mark are at the same location; otherwise the mark delimits the end-point of the selection opposite the caret."
|
"If there is no selection, the caret and the mark are at the same location; otherwise the mark delimits the end-point of the selection opposite the caret."
|
||||||
|
|
|
@ -3,7 +3,7 @@ strings ;
|
||||||
IN: validators
|
IN: validators
|
||||||
|
|
||||||
HELP: v-checkbox
|
HELP: v-checkbox
|
||||||
{ $values { "str" string } { "?" boolean } }
|
{ $values { "str" string } { "?" boolean } }
|
||||||
{ $description "Converts the string value of a checkbox component (either \"on\" or \"off\") to a boolean value." } ;
|
{ $description "Converts the string value of a checkbox component (either \"on\" or \"off\") to a boolean value." } ;
|
||||||
|
|
||||||
HELP: v-captcha
|
HELP: v-captcha
|
||||||
|
|
|
@ -3,7 +3,7 @@ IN: vocabs.files
|
||||||
|
|
||||||
HELP: vocab-tests-path
|
HELP: vocab-tests-path
|
||||||
{ $values { "vocab" "a vocabulary specifier" } { "path" "pathname string to test file" } }
|
{ $values { "vocab" "a vocabulary specifier" } { "path" "pathname string to test file" } }
|
||||||
{ $description "Outputs a pathname where the unit test file for " { $snippet "vocab" } " is located. Outputs " { $link f } " if the vocabulary does not have a directory on disk." } ;
|
{ $description "Outputs a pathname where the unit test file for " { $snippet "vocab" } " is located. Outputs " { $link f } " if the vocabulary does not have a directory on disk." } ;
|
||||||
|
|
||||||
HELP: vocab-tests-file
|
HELP: vocab-tests-file
|
||||||
{ $values { "vocab" "a vocabulary specifier" } { "path/f" "pathname string to test file" } }
|
{ $values { "vocab" "a vocabulary specifier" } { "path/f" "pathname string to test file" } }
|
||||||
|
|
|
@ -163,7 +163,7 @@ HELP: <simple-name>
|
||||||
{ $description "Converts a string into an XML name with an empty prefix and URL." } ;
|
{ $description "Converts a string into an XML name with an empty prefix and URL." } ;
|
||||||
|
|
||||||
HELP: element-decl
|
HELP: element-decl
|
||||||
{ $class-description "Describes the class of element declarations, like <!ELEMENT greeting (#PCDATA)>." } ;
|
{ $class-description "Describes the class of element declarations, like <!ELEMENT greeting (#PCDATA)>." } ;
|
||||||
|
|
||||||
HELP: <element-decl>
|
HELP: <element-decl>
|
||||||
{ $values { "name" name } { "content-spec" string } { "element-decl" entity-decl } }
|
{ $values { "name" name } { "content-spec" string } { "element-decl" entity-decl } }
|
||||||
|
|
|
@ -56,7 +56,7 @@ HELP: indenter
|
||||||
HELP: sensitive-tags
|
HELP: sensitive-tags
|
||||||
{ $var-description "Contains a sequence of " { $link name } "s where whitespace should be considered significant for prettyprinting purposes. The sequence can contain " { $link string } "s in place of names. For example, to preserve whitespace inside a " { $snippet "pre" } " tag:" }
|
{ $var-description "Contains a sequence of " { $link name } "s where whitespace should be considered significant for prettyprinting purposes. The sequence can contain " { $link string } "s in place of names. For example, to preserve whitespace inside a " { $snippet "pre" } " tag:" }
|
||||||
{ $example "USING: xml.syntax xml.writer namespaces ;
|
{ $example "USING: xml.syntax xml.writer namespaces ;
|
||||||
[XML <!DOCTYPE html> <html> <head> <title> something</title></head><body><pre>bing
|
[XML <!DOCTYPE html> <html> <head> <title> something</title></head><body><pre>bing
|
||||||
bang
|
bang
|
||||||
bong</pre></body></html> XML] { \"pre\" } sensitive-tags [ pprint-xml ] with-variable"
|
bong</pre></body></html> XML] { \"pre\" } sensitive-tags [ pprint-xml ] with-variable"
|
||||||
"
|
"
|
||||||
|
|
|
@ -58,7 +58,7 @@ HELP: expired?
|
||||||
{ $description "Tests if the alien is a relic from an earlier session. A byte array is never considered to have expired, whereas passing " { $link f } " always yields true." } ;
|
{ $description "Tests if the alien is a relic from an earlier session. A byte array is never considered to have expired, whereas passing " { $link f } " always yields true." } ;
|
||||||
|
|
||||||
HELP: <bad-alien>
|
HELP: <bad-alien>
|
||||||
{ $values { "alien" c-ptr } }
|
{ $values { "alien" c-ptr } }
|
||||||
{ $description "Constructs an invalid alien pointer that has expired." } ;
|
{ $description "Constructs an invalid alien pointer that has expired." } ;
|
||||||
|
|
||||||
HELP: <displaced-alien>
|
HELP: <displaced-alien>
|
||||||
|
|
|
@ -19,7 +19,7 @@ ABOUT: "graphs"
|
||||||
|
|
||||||
HELP: add-vertex
|
HELP: add-vertex
|
||||||
{ $values { "vertex" object } { "edges" sequence } { "graph" "an " { $link assoc } " mapping vertices to " { $link hash-set } " of edges" } }
|
{ $values { "vertex" object } { "edges" sequence } { "graph" "an " { $link assoc } " mapping vertices to " { $link hash-set } " of edges" } }
|
||||||
{ $description "Adds a vertex to a directed graph, with " { $snippet "edges" } " as the outward edges from the vertex." }
|
{ $description "Adds a vertex to a directed graph, with " { $snippet "edges" } " as the outward edges from the vertex." }
|
||||||
{ $side-effects "graph" } ;
|
{ $side-effects "graph" } ;
|
||||||
|
|
||||||
HELP: remove-vertex
|
HELP: remove-vertex
|
||||||
|
|
|
@ -9,4 +9,4 @@ HELP: init-io
|
||||||
{ $contract "Initializes the I/O system. Called on startup." } ;
|
{ $contract "Initializes the I/O system. Called on startup." } ;
|
||||||
|
|
||||||
HELP: init-stdio
|
HELP: init-stdio
|
||||||
{ $contract "Initializes the global " { $link input-stream } " and " { $link output-stream } ". Called on startup." } ;
|
{ $contract "Initializes the global " { $link input-stream } " and " { $link output-stream } ". Called on startup." } ;
|
||||||
|
|
|
@ -33,7 +33,7 @@ HELP: with-byte-reader
|
||||||
{ $description "Calls the quotation in a new dynamic scope with " { $link input-stream } " rebound to an input stream for reading from a byte array using an encoding." } ;
|
{ $description "Calls the quotation in a new dynamic scope with " { $link input-stream } " rebound to an input stream for reading from a byte array using an encoding." } ;
|
||||||
|
|
||||||
HELP: with-byte-writer
|
HELP: with-byte-writer
|
||||||
{ $values { "encoding" "an encoding descriptor" }
|
{ $values { "encoding" "an encoding descriptor" }
|
||||||
{ "quot" quotation }
|
{ "quot" quotation }
|
||||||
{ "byte-array" byte-array } }
|
{ "byte-array" byte-array } }
|
||||||
{ $description "Calls the quotation in a new dynamic scope with " { $link output-stream } " rebound to an output stream writing data to a byte array using an encoding." } ;
|
{ $description "Calls the quotation in a new dynamic scope with " { $link output-stream } " rebound to an output stream writing data to a byte array using an encoding." } ;
|
||||||
|
|
|
@ -14,7 +14,7 @@ HELP: num-types
|
||||||
{ $var-description "Number of distinct built-in types. This is one more than the maximum value from the " { $link tag } " primitive." } ;
|
{ $var-description "Number of distinct built-in types. This is one more than the maximum value from the " { $link tag } " primitive." } ;
|
||||||
|
|
||||||
HELP: type-number
|
HELP: type-number
|
||||||
{ $values { "class" class } { "n" { $maybe integer } } }
|
{ $values { "class" class } { "n" { $maybe integer } } }
|
||||||
{ $description "Outputs the built-in type number instances of " { $link class } ". Will output " { $link f } " if this is not a built-in class." }
|
{ $description "Outputs the built-in type number instances of " { $link class } ". Will output " { $link f } " if this is not a built-in class." }
|
||||||
{ $see-also builtin-class } ;
|
{ $see-also builtin-class } ;
|
||||||
|
|
||||||
|
|
|
@ -273,7 +273,7 @@ HELP: parse-file
|
||||||
HELP: run-file
|
HELP: run-file
|
||||||
{ $values { "path" "a pathname string" } }
|
{ $values { "path" "a pathname string" } }
|
||||||
{ $description "Parses the Factor source code stored in a file and runs it. The initial vocabulary search path is used." }
|
{ $description "Parses the Factor source code stored in a file and runs it. The initial vocabulary search path is used." }
|
||||||
{ $errors "Throws an error if loading the file fails, there input is malformed, or if a runtime error occurs while calling the parsed quotation." } ;
|
{ $errors "Throws an error if loading the file fails, there input is malformed, or if a runtime error occurs while calling the parsed quotation." } ;
|
||||||
|
|
||||||
HELP: ?run-file
|
HELP: ?run-file
|
||||||
{ $values { "path" "a pathname string" } }
|
{ $values { "path" "a pathname string" } }
|
||||||
|
|
|
@ -180,7 +180,7 @@ HELP: ?nth
|
||||||
|
|
||||||
HELP: ?set-nth
|
HELP: ?set-nth
|
||||||
{ $values { "elt" object } { "n" integer } { "seq" sequence } }
|
{ $values { "elt" object } { "n" integer } { "seq" sequence } }
|
||||||
{ $description "A forgiving version of " { $link set-nth } ". If the index is out of bounds, does nothing." } ;
|
{ $description "A forgiving version of " { $link set-nth } ". If the index is out of bounds, does nothing." } ;
|
||||||
|
|
||||||
HELP: ?first
|
HELP: ?first
|
||||||
{ $values { "seq" sequence } { "elt/f" { $maybe object } } }
|
{ $values { "seq" sequence } { "elt/f" { $maybe object } } }
|
||||||
|
|
|
@ -35,7 +35,7 @@ HELP: string-nth
|
||||||
{ $warning "This word is in the " { $vocab-link "strings.private" } " vocabulary because it does not perform type or bounds checking. User code should call " { $link nth } " instead." } ;
|
{ $warning "This word is in the " { $vocab-link "strings.private" } " vocabulary because it does not perform type or bounds checking. User code should call " { $link nth } " instead." } ;
|
||||||
|
|
||||||
HELP: set-string-nth
|
HELP: set-string-nth
|
||||||
{ $values { "ch" "a character" } { "n" fixnum } { "string" string } }
|
{ $values { "ch" "a character" } { "n" fixnum } { "string" string } }
|
||||||
{ $description "Unsafe string mutator, used to define " { $link set-nth } " on strings." }
|
{ $description "Unsafe string mutator, used to define " { $link set-nth } " on strings." }
|
||||||
{ $warning "This word is in the " { $vocab-link "strings.private" } " vocabulary because it does not perform type or bounds checking. User code should call " { $link set-nth } " instead." } ;
|
{ $warning "This word is in the " { $vocab-link "strings.private" } " vocabulary because it does not perform type or bounds checking. User code should call " { $link set-nth } " instead." } ;
|
||||||
|
|
||||||
|
|
|
@ -412,7 +412,7 @@ $nl
|
||||||
HELP: W{
|
HELP: W{
|
||||||
{ $syntax "W{ object }" }
|
{ $syntax "W{ object }" }
|
||||||
{ $values { "object" object } }
|
{ $values { "object" object } }
|
||||||
{ $description "Marks the beginning of a literal wrapper. Literal wrappers are terminated by " { $link POSTPONE: } } "." } ;
|
{ $description "Marks the beginning of a literal wrapper. Literal wrappers are terminated by " { $link POSTPONE: } } "." } ;
|
||||||
|
|
||||||
HELP: POSTPONE:
|
HELP: POSTPONE:
|
||||||
{ $syntax "POSTPONE: word" }
|
{ $syntax "POSTPONE: word" }
|
||||||
|
@ -631,7 +631,7 @@ HELP: P"
|
||||||
HELP: (
|
HELP: (
|
||||||
{ $syntax "( inputs -- outputs )" }
|
{ $syntax "( inputs -- outputs )" }
|
||||||
{ $values { "inputs" "a list of tokens" } { "outputs" "a list of tokens" } }
|
{ $values { "inputs" "a list of tokens" } { "outputs" "a list of tokens" } }
|
||||||
{ $description "Literal stack effect syntax. Also used by syntax words (such as " { $link POSTPONE: : } "), typically declaring the stack effect of the word definition which follows." }
|
{ $description "Literal stack effect syntax. Also used by syntax words (such as " { $link POSTPONE: : } "), typically declaring the stack effect of the word definition which follows." }
|
||||||
{ $notes "Useful for meta-programming with " { $link define-declared } "." }
|
{ $notes "Useful for meta-programming with " { $link define-declared } "." }
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $example
|
{ $example
|
||||||
|
|
|
@ -99,8 +99,8 @@ $nl
|
||||||
{
|
{
|
||||||
{ $snippet "\"inline\"" } ", "
|
{ $snippet "\"inline\"" } ", "
|
||||||
{ $snippet "\"foldable\"" } ", "
|
{ $snippet "\"foldable\"" } ", "
|
||||||
{ $snippet "\"flushable\"" } ", "
|
{ $snippet "\"flushable\"" } ", "
|
||||||
{ $snippet "\"recursive\"" }
|
{ $snippet "\"recursive\"" }
|
||||||
}
|
}
|
||||||
{ $link "declarations" }
|
{ $link "declarations" }
|
||||||
}
|
}
|
||||||
|
@ -153,7 +153,7 @@ $nl
|
||||||
{ $snippet "\"dependencies\"" } ", "
|
{ $snippet "\"dependencies\"" } ", "
|
||||||
|
|
||||||
}
|
}
|
||||||
{ "Used by the optimizing compiler when forgetting words for fast dependency lookup. See " { $link "compilation-units" } "." }
|
{ "Used by the optimizing compiler when forgetting words for fast dependency lookup. See " { $link "compilation-units" } "." }
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
{ $snippet "\"generic-call-sites\"" }
|
{ $snippet "\"generic-call-sites\"" }
|
||||||
|
@ -306,7 +306,7 @@ HELP: <word>
|
||||||
|
|
||||||
HELP: <uninterned-word>
|
HELP: <uninterned-word>
|
||||||
{ $values { "name" string } { "word" word } }
|
{ $values { "name" string } { "word" word } }
|
||||||
{ $description "Creates an uninterned word with the specified name, that is not equal to any other word in the system." }
|
{ $description "Creates an uninterned word with the specified name, that is not equal to any other word in the system." }
|
||||||
{ $notes "Unlike " { $link create-word } ", this word does not have to be called from inside " { $link with-compilation-unit } "." } ;
|
{ $notes "Unlike " { $link create-word } ", this word does not have to be called from inside " { $link with-compilation-unit } "." } ;
|
||||||
|
|
||||||
HELP: gensym
|
HELP: gensym
|
||||||
|
|
|
@ -8,7 +8,7 @@ HELP: run-balloon
|
||||||
"Run the Balloon Bomber emulator in a new window." $nl
|
"Run the Balloon Bomber emulator in a new window." $nl
|
||||||
{ $link rom-root } " must be set to the directory containing the "
|
{ $link rom-root } " must be set to the directory containing the "
|
||||||
"location of the Balloon Bomber ROM files. See "
|
"location of the Balloon Bomber ROM files. See "
|
||||||
{ $link { "balloon-bomber" "balloon-bomber" } } " for details."
|
{ $link { "balloon-bomber" "balloon-bomber" } } " for details."
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
ARTICLE: { "balloon-bomber" "balloon-bomber" } "Balloon Bomber Emulator"
|
ARTICLE: { "balloon-bomber" "balloon-bomber" } "Balloon Bomber Emulator"
|
||||||
|
|
|
@ -2,11 +2,11 @@ USING: help.markup help.syntax kernel math ;
|
||||||
IN: bloom-filters
|
IN: bloom-filters
|
||||||
|
|
||||||
HELP: <bloom-filter>
|
HELP: <bloom-filter>
|
||||||
{ $values { "error-rate" "The desired false positive rate. A " { $link float } " between 0 and 1." }
|
{ $values { "error-rate" "The desired false positive rate. A " { $link float } " between 0 and 1." }
|
||||||
{ "capacity" "The expected number of object in the set. A positive " { $link integer } "." }
|
{ "capacity" "The expected number of object in the set. A positive " { $link integer } "." }
|
||||||
{ "bloom-filter" bloom-filter } }
|
{ "bloom-filter" bloom-filter } }
|
||||||
{ $description "Creates an empty Bloom filter." }
|
{ $description "Creates an empty Bloom filter." }
|
||||||
{ $errors "Throws a " { $link invalid-size } " when unable to produce a filter meeting the given constraints. Throws a " { $link invalid-error-rate } " or a " { $link invalid-capacity } " when input is invalid." } ;
|
{ $errors "Throws a " { $link invalid-size } " when unable to produce a filter meeting the given constraints. Throws a " { $link invalid-error-rate } " or a " { $link invalid-capacity } " when input is invalid." } ;
|
||||||
|
|
||||||
|
|
||||||
HELP: bloom-filter-insert
|
HELP: bloom-filter-insert
|
||||||
|
@ -19,7 +19,7 @@ HELP: bloom-filter-member?
|
||||||
{ $values { "object" object }
|
{ $values { "object" object }
|
||||||
{ "bloom-filter" bloom-filter }
|
{ "bloom-filter" bloom-filter }
|
||||||
{ "?" boolean } }
|
{ "?" boolean } }
|
||||||
{ $description "Returns " { $link t } " if the object may be a member of Bloom filter, " { $link f } " otherwise. The false positive rate is configurable; there are no false negatives." } ;
|
{ $description "Returns " { $link t } " if the object may be a member of Bloom filter, " { $link f } " otherwise. The false positive rate is configurable; there are no false negatives." } ;
|
||||||
|
|
||||||
HELP: bloom-filter
|
HELP: bloom-filter
|
||||||
{ $class-description "This is the class for Bloom filters. These provide constant-time insertion and probabilistic membership-testing operations, but do not actually store any elements." } ;
|
{ $class-description "This is the class for Bloom filters. These provide constant-time insertion and probabilistic membership-testing operations, but do not actually store any elements." } ;
|
||||||
|
|
|
@ -19,13 +19,13 @@ HELP: search-from
|
||||||
{ "seq" sequence }
|
{ "seq" sequence }
|
||||||
{ "from" "a non-negative integer" }
|
{ "from" "a non-negative integer" }
|
||||||
{ "obj" object }
|
{ "obj" object }
|
||||||
{ "i/f" "the index of first match or " { $link f } }
|
{ "i/f" "the index of first match or " { $link f } }
|
||||||
}
|
}
|
||||||
{ $description "Performs an attempt to find the first "
|
{ $description "Performs an attempt to find the first "
|
||||||
"occurrence of pattern in " { $snippet "seq" }
|
"occurrence of pattern in " { $snippet "seq" }
|
||||||
" starting from " { $snippet "from" } " using "
|
" starting from " { $snippet "from" } " using "
|
||||||
"Boyer-Moore search algorithm. Output is the index "
|
"Boyer-Moore search algorithm. Output is the index "
|
||||||
"if the attempt was succeessful and " { $link f }
|
"if the attempt was succeessful and " { $link f }
|
||||||
" otherwise."
|
" otherwise."
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ HELP: run-brainfuck
|
||||||
{ $values { "code" string } }
|
{ $values { "code" string } }
|
||||||
{ $description
|
{ $description
|
||||||
"A brainfuck program is a sequence of eight commands that are "
|
"A brainfuck program is a sequence of eight commands that are "
|
||||||
"executed sequentially. An instruction pointer begins at the first "
|
"executed sequentially. An instruction pointer begins at the first "
|
||||||
"command, and each command is executed until the program terminates "
|
"command, and each command is executed until the program terminates "
|
||||||
"when the instruction pointer moves beyond the last command.\n"
|
"when the instruction pointer moves beyond the last command.\n"
|
||||||
"\n"
|
"\n"
|
||||||
|
|
|
@ -5,9 +5,9 @@ IN: combinators.extras
|
||||||
HELP: cond-case
|
HELP: cond-case
|
||||||
{ $values { "assoc" "a sequence of quotation pairs and an optional quotation" } }
|
{ $values { "assoc" "a sequence of quotation pairs and an optional quotation" } }
|
||||||
{ $description
|
{ $description
|
||||||
"Similar to " { $link case } ", this evaluates an " { $snippet "obj" } " according to the first quotation in each pair. If any quotation returns true, calls the second quotation without " { $snippet "obj" } " on the stack."
|
"Similar to " { $link case } ", this evaluates an " { $snippet "obj" } " according to the first quotation in each pair. If any quotation returns true, calls the second quotation without " { $snippet "obj" } " on the stack."
|
||||||
$nl
|
$nl
|
||||||
"If there is no quotation that returns true, the default case is taken. If the last element of " { $snippet "assoc" } " is a quotation, the quotation is called with " { $snippet "obj" } " on the stack. Otherwise, a " { $link no-cond } " error is raised."
|
"If there is no quotation that returns true, the default case is taken. If the last element of " { $snippet "assoc" } " is a quotation, the quotation is called with " { $snippet "obj" } " on the stack. Otherwise, a " { $link no-cond } " error is raised."
|
||||||
}
|
}
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $example
|
{ $example
|
||||||
|
|
|
@ -104,7 +104,7 @@ HELP: set-block-merging
|
||||||
|
|
||||||
HELP: set-block-pool
|
HELP: set-block-pool
|
||||||
{ $values { "?" boolean } }
|
{ $values { "?" boolean } }
|
||||||
{ $description "If set, this option causes all subsequent free blocks to be placed in the global pool. The default is " { $link f } "." } ;
|
{ $description "If set, this option causes all subsequent free blocks to be placed in the global pool. The default is " { $link f } "." } ;
|
||||||
|
|
||||||
HELP: set-cache-size
|
HELP: set-cache-size
|
||||||
{ $values { "size" integer } }
|
{ $values { "size" integer } }
|
||||||
|
|
|
@ -116,7 +116,7 @@ HELP: index-range
|
||||||
} } ;
|
} } ;
|
||||||
|
|
||||||
HELP: index-type
|
HELP: index-type
|
||||||
{ $class-description "The " { $snippet "index-type" } " slot of an " { $link index-elements } " or " { $link multi-index-elements } " tuple indicates the type of the index array's elements: one-byte " { $link ubyte-indexes } ", two-byte " { $link ushort-indexes } ", or four-byte " { $link uint-indexes } "." } ;
|
{ $class-description "The " { $snippet "index-type" } " slot of an " { $link index-elements } " or " { $link multi-index-elements } " tuple indicates the type of the index array's elements: one-byte " { $link ubyte-indexes } ", two-byte " { $link ushort-indexes } ", or four-byte " { $link uint-indexes } "." } ;
|
||||||
|
|
||||||
{ index-type ubyte-indexes ushort-indexes uint-indexes } related-words
|
{ index-type ubyte-indexes ushort-indexes uint-indexes } related-words
|
||||||
|
|
||||||
|
@ -194,7 +194,7 @@ HELP: points-mode
|
||||||
{ $class-description "This " { $link primitive-mode } " value instructs " { $link render } " to generate a point for each indexed vertex array element." } ;
|
{ $class-description "This " { $link primitive-mode } " value instructs " { $link render } " to generate a point for each indexed vertex array element." } ;
|
||||||
|
|
||||||
HELP: primitive-mode
|
HELP: primitive-mode
|
||||||
{ $class-description "The " { $snippet "primitive-mode" } " slot of a " { $link render-set } " tells " { $link render } " what kind of primitives to generate and how to assemble them from the selected elements of the active " { $link vertex-array } "." }
|
{ $class-description "The " { $snippet "primitive-mode" } " slot of a " { $link render-set } " tells " { $link render } " what kind of primitives to generate and how to assemble them from the selected elements of the active " { $link vertex-array } "." }
|
||||||
{ $list
|
{ $list
|
||||||
{ { $link points-mode } " causes each element to generate a point." }
|
{ { $link points-mode } " causes each element to generate a point." }
|
||||||
{ { $link lines-mode } " causes each pair of elements to generate a disconnected line." }
|
{ { $link lines-mode } " causes each pair of elements to generate a disconnected line." }
|
||||||
|
|
|
@ -59,7 +59,7 @@ HELP: <mask-state>
|
||||||
|
|
||||||
HELP: <multisample-state>
|
HELP: <multisample-state>
|
||||||
{ $values
|
{ $values
|
||||||
{ "multisample?" boolean } { "sample-alpha-to-coverage?" boolean } { "sample-alpha-to-one?" boolean } { "sample-coverage" { $maybe float } } { "invert-sample-coverage?" boolean }
|
{ "multisample?" boolean } { "sample-alpha-to-coverage?" boolean } { "sample-alpha-to-one?" boolean } { "sample-coverage" { $maybe float } } { "invert-sample-coverage?" boolean }
|
||||||
{ "multisample-state" multisample-state }
|
{ "multisample-state" multisample-state }
|
||||||
}
|
}
|
||||||
{ $description "Constructs a " { $link multisample-state } " tuple." } ;
|
{ $description "Constructs a " { $link multisample-state } " tuple." } ;
|
||||||
|
|
|
@ -117,14 +117,14 @@ HELP: clamp-texcoord-to-edge
|
||||||
{ $class-description "This " { $link texture-wrap } " value clamps texture coordinates to a texture image's edge." } ;
|
{ $class-description "This " { $link texture-wrap } " value clamps texture coordinates to a texture image's edge." } ;
|
||||||
|
|
||||||
HELP: cube-map-axis
|
HELP: cube-map-axis
|
||||||
{ $class-description "Objects of this class are stored in the " { $snippet "axis" } " slot of a " { $link cube-map-face } " to choose the referenced face: " { $link +X } ", " { $link +Y } ", " { $link +Z } ", " { $link -X } ", " { $link -Y } ", or " { $link -Z } "."
|
{ $class-description "Objects of this class are stored in the " { $snippet "axis" } " slot of a " { $link cube-map-face } " to choose the referenced face: " { $link +X } ", " { $link +Y } ", " { $link +Z } ", " { $link -X } ", " { $link -Y } ", or " { $link -Z } "."
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
HELP: cube-map-face
|
HELP: cube-map-face
|
||||||
{ $class-description "A " { $snippet "cube-map-face" } " tuple references a single face of a " { $link texture-cube-map } " object for use with " { $link allocate-texture } ", " { $link update-texture } ", or " { $link read-texture } "."
|
{ $class-description "A " { $snippet "cube-map-face" } " tuple references a single face of a " { $link texture-cube-map } " object for use with " { $link allocate-texture } ", " { $link update-texture } ", or " { $link read-texture } "."
|
||||||
{ $list
|
{ $list
|
||||||
{ "The " { $snippet "texture" } " slot indicates the cube map texture being referenced." }
|
{ "The " { $snippet "texture" } " slot indicates the cube map texture being referenced." }
|
||||||
{ "The " { $snippet "axis" } " slot indicates which face to reference: " { $link +X } ", " { $link +Y } ", " { $link +Z } ", " { $link -X } ", " { $link -Y } ", or " { $link -Z } "." }
|
{ "The " { $snippet "axis" } " slot indicates which face to reference: " { $link +X } ", " { $link +Y } ", " { $link +Z } ", " { $link -X } ", " { $link -Y } ", or " { $link -Z } "." }
|
||||||
} } ;
|
} } ;
|
||||||
|
|
||||||
HELP: filter-linear
|
HELP: filter-linear
|
||||||
|
|
|
@ -34,7 +34,7 @@ HELP: edge-attributes
|
||||||
{ $class-description "Represents Graphviz attributes that are valid for edges. See attributes marked " { $emphasis "E" } " in " { $url "http://graphviz.org/content/attrs" } ". Each slot must be " { $maybe string } "." } ;
|
{ $class-description "Represents Graphviz attributes that are valid for edges. See attributes marked " { $emphasis "E" } " in " { $url "http://graphviz.org/content/attrs" } ". Each slot must be " { $maybe string } "." } ;
|
||||||
|
|
||||||
HELP: graph-attributes
|
HELP: graph-attributes
|
||||||
{ $class-description "Represents Graphviz attributes that are valid for graphs and subgraphs (including clusters). See attributes marked " { $emphasis "G" } ", " { $emphasis "S" } ", and " { $emphasis "C" } " in " { $url "http://graphviz.org/content/attrs" } ". Each slot must be " { $maybe string } "." } ;
|
{ $class-description "Represents Graphviz attributes that are valid for graphs and subgraphs (including clusters). See attributes marked " { $emphasis "G" } ", " { $emphasis "S" } ", and " { $emphasis "C" } " in " { $url "http://graphviz.org/content/attrs" } ". Each slot must be " { $maybe string } "." } ;
|
||||||
|
|
||||||
HELP: node-attributes
|
HELP: node-attributes
|
||||||
{ $class-description "Represents Graphviz attributes that are valid for nodes. See attributes marked " { $emphasis "N" } " in " { $url "http://graphviz.org/content/attrs" } ". Each slot must be " { $maybe string } "." } ;
|
{ $class-description "Represents Graphviz attributes that are valid for nodes. See attributes marked " { $emphasis "N" } " in " { $url "http://graphviz.org/content/attrs" } ". Each slot must be " { $maybe string } "." } ;
|
||||||
|
|
|
@ -9,7 +9,7 @@ HELP: build-alien
|
||||||
{ "Agraph_t*" c-ptr }
|
{ "Agraph_t*" c-ptr }
|
||||||
{ "graph" graph }
|
{ "graph" graph }
|
||||||
}
|
}
|
||||||
{ $description "Constructs a C representation of the given " { $link graph } " in memory by using the " { $vocab-link "graphviz.ffi" } " vocabulary to destructively modify " { $snippet "Agraph_t*" } " (a " { $link c-ptr } " created by " { $link agopen } ")." }
|
{ $description "Constructs a C representation of the given " { $link graph } " in memory by using the " { $vocab-link "graphviz.ffi" } " vocabulary to destructively modify " { $snippet "Agraph_t*" } " (a " { $link c-ptr } " created by " { $link agopen } ")." }
|
||||||
{ $notes "User code should not call this word directly. Use the " { $vocab-link "graphviz.render" } " vocabulary instead." }
|
{ $notes "User code should not call this word directly. Use the " { $vocab-link "graphviz.render" } " vocabulary instead." }
|
||||||
{ $errors "Throws " { $link non-graph-error } " if applied to anything other than an instance of " { $link graph } "."
|
{ $errors "Throws " { $link non-graph-error } " if applied to anything other than an instance of " { $link graph } "."
|
||||||
$nl
|
$nl
|
||||||
|
|
|
@ -22,7 +22,7 @@ $nl
|
||||||
$nl
|
$nl
|
||||||
"But there are a couple things to keep in mind:"
|
"But there are a couple things to keep in mind:"
|
||||||
{ $list
|
{ $list
|
||||||
{ "Quotes in " { $link string } "s will be escaped (and null-terminators " { $snippet "\"\\0\"" } " removed), but otherwise Factor strings are printed as usual. So " { $snippet "\"a\\nb\"" } " will print a newline in the DOT code, not a literal 'backslash n'. This is handy anyway, because certain Graphviz layout engines will parse escape codes in DOT that Factor doesn't know about. For instance, to use the Graphviz escape sequence " { $snippet "\"\\l\"" } ", you have to use the Factor string " { $snippet "\"\\\\l\"" } "." }
|
{ "Quotes in " { $link string } "s will be escaped (and null-terminators " { $snippet "\"\\0\"" } " removed), but otherwise Factor strings are printed as usual. So " { $snippet "\"a\\nb\"" } " will print a newline in the DOT code, not a literal 'backslash n'. This is handy anyway, because certain Graphviz layout engines will parse escape codes in DOT that Factor doesn't know about. For instance, to use the Graphviz escape sequence " { $snippet "\"\\l\"" } ", you have to use the Factor string " { $snippet "\"\\\\l\"" } "." }
|
||||||
{ "Node port syntax doesn't work when node names are quoted. Instead, use the edge's " { $snippet "headport" } " and " { $snippet "tailport" } " attributes (see " { $vocab-link "graphviz.attributes" } ")." }
|
{ "Node port syntax doesn't work when node names are quoted. Instead, use the edge's " { $snippet "headport" } " and " { $snippet "tailport" } " attributes (see " { $vocab-link "graphviz.attributes" } ")." }
|
||||||
{ "HTML-like labels, which must use angle brackets (" { $snippet "<...>" } ") instead of quotes (" { $snippet "\"...\"" } "), are currently unsupported." }
|
{ "HTML-like labels, which must use angle brackets (" { $snippet "<...>" } ") instead of quotes (" { $snippet "\"...\"" } "), are currently unsupported." }
|
||||||
}
|
}
|
||||||
|
|
|
@ -75,7 +75,7 @@ HELP: <digraph>
|
||||||
"Constructs an empty, non-strict, directed " { $link graph } "."
|
"Constructs an empty, non-strict, directed " { $link graph } "."
|
||||||
}
|
}
|
||||||
{ $notes
|
{ $notes
|
||||||
"Because it's rare for " { $link graph } " " { $slot "id" } "s to be meaningful or useful, " { $link <digraph> } " automatically generates one, just as in " { $link <anon> } "."
|
"Because it's rare for " { $link graph } " " { $slot "id" } "s to be meaningful or useful, " { $link <digraph> } " automatically generates one, just as in " { $link <anon> } "."
|
||||||
|
|
||||||
$nl
|
$nl
|
||||||
|
|
||||||
|
@ -142,7 +142,7 @@ HELP: <graph>
|
||||||
"Constructs an empty, non-strict, undirected " { $link graph } "."
|
"Constructs an empty, non-strict, undirected " { $link graph } "."
|
||||||
}
|
}
|
||||||
{ $notes
|
{ $notes
|
||||||
"Because it's rare for " { $link graph } " " { $slot "id" } "s to be meaningful or useful, " { $link <graph> } " automatically generates one, just as in " { $link <anon> } "."
|
"Because it's rare for " { $link graph } " " { $slot "id" } "s to be meaningful or useful, " { $link <graph> } " automatically generates one, just as in " { $link <anon> } "."
|
||||||
|
|
||||||
$nl
|
$nl
|
||||||
|
|
||||||
|
@ -191,7 +191,7 @@ HELP: <strict-digraph>
|
||||||
"Constructs an empty, strict, directed " { $link graph } "."
|
"Constructs an empty, strict, directed " { $link graph } "."
|
||||||
}
|
}
|
||||||
{ $notes
|
{ $notes
|
||||||
"Because it's rare for " { $link graph } " " { $slot "id" } "s to be meaningful or useful, " { $link <strict-digraph> } " automatically generates one, just as in " { $link <anon> } "."
|
"Because it's rare for " { $link graph } " " { $slot "id" } "s to be meaningful or useful, " { $link <strict-digraph> } " automatically generates one, just as in " { $link <anon> } "."
|
||||||
|
|
||||||
$nl
|
$nl
|
||||||
|
|
||||||
|
@ -200,7 +200,7 @@ $nl
|
||||||
|
|
||||||
$nl
|
$nl
|
||||||
|
|
||||||
"In " { $emphasis "strict" } " " { $link graph } "s, there is at most one " { $link edge } " between any two " { $link node } "s, so duplicates are ignored by Graphviz."
|
"In " { $emphasis "strict" } " " { $link graph } "s, there is at most one " { $link edge } " between any two " { $link node } "s, so duplicates are ignored by Graphviz."
|
||||||
}
|
}
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $example "USING: graphviz prettyprint ;" "<strict-digraph> graph? ." "t" }
|
{ $example "USING: graphviz prettyprint ;" "<strict-digraph> graph? ." "t" }
|
||||||
|
@ -221,7 +221,7 @@ HELP: <strict-graph>
|
||||||
"Constructs an empty, strict, undirected " { $link graph } "."
|
"Constructs an empty, strict, undirected " { $link graph } "."
|
||||||
}
|
}
|
||||||
{ $notes
|
{ $notes
|
||||||
"Because it's rare for " { $link graph } " " { $slot "id" } "s to be meaningful or useful, " { $link <strict-graph> } " automatically generates one, just as in " { $link <anon> } "."
|
"Because it's rare for " { $link graph } " " { $slot "id" } "s to be meaningful or useful, " { $link <strict-graph> } " automatically generates one, just as in " { $link <anon> } "."
|
||||||
|
|
||||||
$nl
|
$nl
|
||||||
|
|
||||||
|
@ -230,7 +230,7 @@ $nl
|
||||||
|
|
||||||
$nl
|
$nl
|
||||||
|
|
||||||
"In " { $emphasis "strict" } " " { $link graph } "s, there is at most one " { $link edge } " between any two " { $link node } "s, so duplicates are ignored by Graphviz."
|
"In " { $emphasis "strict" } " " { $link graph } "s, there is at most one " { $link edge } " between any two " { $link node } "s, so duplicates are ignored by Graphviz."
|
||||||
}
|
}
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $example "USING: graphviz prettyprint ;" "<strict-graph> graph? ." "t" }
|
{ $example "USING: graphviz prettyprint ;" "<strict-graph> graph? ." "t" }
|
||||||
|
|
|
@ -76,7 +76,7 @@ $nl
|
||||||
$nl
|
$nl
|
||||||
"Throws " { $instance unsupported-encoding } " error if " { $link graph-encoding } " isn't one of " { $link utf8 } " or " { $link latin1 } "."
|
"Throws " { $instance unsupported-encoding } " error if " { $link graph-encoding } " isn't one of " { $link utf8 } " or " { $link latin1 } "."
|
||||||
}
|
}
|
||||||
{ $examples "To render a " { $link graph } " " { $snippet "G" } " using circo and save the output to a PNG file, you could write" { $code "G \"foo\" \"png\" \"circo\" graphviz" } "(assuming circo and PNG are supported by your Graphviz installation). This will save the output to the file " { $snippet "foo.png" } "." } ;
|
{ $examples "To render a " { $link graph } " " { $snippet "G" } " using circo and save the output to a PNG file, you could write" { $code "G \"foo\" \"png\" \"circo\" graphviz" } "(assuming circo and PNG are supported by your Graphviz installation). This will save the output to the file " { $snippet "foo.png" } "." } ;
|
||||||
|
|
||||||
HELP: graphviz*
|
HELP: graphviz*
|
||||||
{ $values
|
{ $values
|
||||||
|
@ -85,7 +85,7 @@ HELP: graphviz*
|
||||||
{ $description "Invokes the " { $link graphviz } " word using the value of " { $link default-layout } " as the layout engine. That is, the following two lines are equivalent:"
|
{ $description "Invokes the " { $link graphviz } " word using the value of " { $link default-layout } " as the layout engine. That is, the following two lines are equivalent:"
|
||||||
{ $code "graph path format default-layout get-global graphviz" "graph path format graphviz*" }
|
{ $code "graph path format default-layout get-global graphviz" "graph path format graphviz*" }
|
||||||
}
|
}
|
||||||
{ $examples "To render a " { $link graph } " " { $snippet "G" } " when you don't particularly care about the layout engine but want to save the output to a PNG file, you could write" { $code "G \"foo\" \"png\" graphviz*" } "(assuming that " { $link default-layout } " and PNG are supported by your Graphviz installation). This will save the output to the file " { $snippet "foo.png" } "." } ;
|
{ $examples "To render a " { $link graph } " " { $snippet "G" } " when you don't particularly care about the layout engine but want to save the output to a PNG file, you could write" { $code "G \"foo\" \"png\" graphviz*" } "(assuming that " { $link default-layout } " and PNG are supported by your Graphviz installation). This will save the output to the file " { $snippet "foo.png" } "." } ;
|
||||||
|
|
||||||
HELP: preview
|
HELP: preview
|
||||||
{ $values
|
{ $values
|
||||||
|
|
|
@ -29,7 +29,7 @@ HELP: load-reference-image
|
||||||
{ "path" "a pathname string" }
|
{ "path" "a pathname string" }
|
||||||
{ "image" image }
|
{ "image" image }
|
||||||
}
|
}
|
||||||
{ $description "Loads the " { $link { "images" "testing" "reference" } } " that corresponds to the original image at " { $snippet "path" } " into memory." } ;
|
{ $description "Loads the " { $link { "images" "testing" "reference" } } " that corresponds to the original image at " { $snippet "path" } " into memory." } ;
|
||||||
|
|
||||||
HELP: ls
|
HELP: ls
|
||||||
{ $values
|
{ $values
|
||||||
|
|
|
@ -8,7 +8,7 @@ HELP: run-lunar
|
||||||
"Run the Lunar Rescue emulator in a new window." $nl
|
"Run the Lunar Rescue emulator in a new window." $nl
|
||||||
{ $link rom-root } " must be set to the directory containing the "
|
{ $link rom-root } " must be set to the directory containing the "
|
||||||
"location of the Lunar Rescue ROM files. See "
|
"location of the Lunar Rescue ROM files. See "
|
||||||
{ $link { "lunar-rescue" "lunar-rescue" } } " for details."
|
{ $link { "lunar-rescue" "lunar-rescue" } } " for details."
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
ARTICLE: { "lunar-rescue" "lunar-rescue" } "Lunar Rescue Emulator"
|
ARTICLE: { "lunar-rescue" "lunar-rescue" } "Lunar Rescue Emulator"
|
||||||
|
|
|
@ -4,7 +4,7 @@ USING: help.markup help.syntax ;
|
||||||
IN: math.derivatives.syntax
|
IN: math.derivatives.syntax
|
||||||
|
|
||||||
HELP: DERIVATIVE:
|
HELP: DERIVATIVE:
|
||||||
{ $description "Defines the derivative of a word by setting its " { $snippet "derivative" } " word property. Reads a word followed by " { $snippet "n" } " quotations, giving the " { $snippet "n" } " partial derivatives of the word with respect to each of its arguments successively. Each quotation should take " { $snippet "n + 1" } " inputs, where the first input is an increment and the last " { $snippet "n" } " inputs are the point at which to evaluate the derivative. The derivative should be a linear function of the increment, and should have the same number of outputs as the original word." }
|
{ $description "Defines the derivative of a word by setting its " { $snippet "derivative" } " word property. Reads a word followed by " { $snippet "n" } " quotations, giving the " { $snippet "n" } " partial derivatives of the word with respect to each of its arguments successively. Each quotation should take " { $snippet "n + 1" } " inputs, where the first input is an increment and the last " { $snippet "n" } " inputs are the point at which to evaluate the derivative. The derivative should be a linear function of the increment, and should have the same number of outputs as the original word." }
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $unchecked-example "USING: math math.functions math.derivatives.syntax ;"
|
{ $unchecked-example "USING: math math.functions math.derivatives.syntax ;"
|
||||||
"DERIVATIVE: sin [ cos * ]"
|
"DERIVATIVE: sin [ cos * ]"
|
||||||
|
|
|
@ -15,7 +15,7 @@ HELP: define-dual
|
||||||
{ "word" word }
|
{ "word" word }
|
||||||
}
|
}
|
||||||
{ $description "Defines a word " { $snippet "d[word]" } " in the " { $vocab-link "math.dual" } " vocabulary that operates on dual numbers." }
|
{ $description "Defines a word " { $snippet "d[word]" } " in the " { $vocab-link "math.dual" } " vocabulary that operates on dual numbers." }
|
||||||
{ $notes "Uses the derivative word-prop, which holds a list of quotations giving the partial derivatives of the word with respect to each of its arguments. This can be set using " { $link POSTPONE: DERIVATIVE: } "." } ;
|
{ $notes "Uses the derivative word-prop, which holds a list of quotations giving the partial derivatives of the word with respect to each of its arguments. This can be set using " { $link POSTPONE: DERIVATIVE: } "." } ;
|
||||||
|
|
||||||
{ define-dual dual-op POSTPONE: DERIVATIVE: } related-words
|
{ define-dual dual-op POSTPONE: DERIVATIVE: } related-words
|
||||||
|
|
||||||
|
|
|
@ -101,7 +101,7 @@ HELP: round-to-decimal
|
||||||
|
|
||||||
HELP: round-to-even
|
HELP: round-to-even
|
||||||
{ $values { "x" real } { "y" real } }
|
{ $values { "x" real } { "y" real } }
|
||||||
{ $description "Rounds " { $snippet "x" } " towards the nearest even number. This is also known as banker's rounding or unbiased rounding." }
|
{ $description "Rounds " { $snippet "x" } " towards the nearest even number. This is also known as banker's rounding or unbiased rounding." }
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $example "USING: math.extras prettyprint ;" "0.5 round-to-even ." "0.0" }
|
{ $example "USING: math.extras prettyprint ;" "0.5 round-to-even ." "0.0" }
|
||||||
{ $example "USING: math.extras prettyprint ;" "1.5 round-to-even ." "2.0" } } ;
|
{ $example "USING: math.extras prettyprint ;" "1.5 round-to-even ." "2.0" } } ;
|
||||||
|
|
|
@ -96,7 +96,7 @@ HELP: m/version
|
||||||
|
|
||||||
HELP: m/noop
|
HELP: m/noop
|
||||||
{ $description
|
{ $description
|
||||||
"Used as a keep-alive. Also flushes any outstanding quiet gets."
|
"Used as a keep-alive. Also flushes any outstanding quiet gets."
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
HELP: m/stats
|
HELP: m/stats
|
||||||
|
|
|
@ -127,7 +127,7 @@ HELP: ensure-index
|
||||||
{ $unchecked-example "USING: mongodb.driver ;"
|
{ $unchecked-example "USING: mongodb.driver ;"
|
||||||
"\"db\" \"127.0.0.1\" 27017 <mdb>"
|
"\"db\" \"127.0.0.1\" 27017 <mdb>"
|
||||||
"[ \"mycollection\" nameIdx [ \"name\" asc ] keyspec <index-spec> ensure-index ] with-db" "" }
|
"[ \"mycollection\" nameIdx [ \"name\" asc ] keyspec <index-spec> ensure-index ] with-db" "" }
|
||||||
{ $unchecked-example "USING: mongodb.driver ;"
|
{ $unchecked-example "USING: mongodb.driver ;"
|
||||||
"\"db\" \"127.0.0.1\" 27017 <mdb>" "[ \"mycollection\" nameIdx [ \"name\" asc ] keyspec <index-spec> t >>unique? ensure-index ] with-db" "" } } ;
|
"\"db\" \"127.0.0.1\" 27017 <mdb>" "[ \"mycollection\" nameIdx [ \"name\" asc ] keyspec <index-spec> t >>unique? ensure-index ] with-db" "" } } ;
|
||||||
|
|
||||||
HELP: explain.
|
HELP: explain.
|
||||||
|
|
|
@ -8,7 +8,7 @@ HELP: breset
|
||||||
|
|
||||||
HELP: bshift
|
HELP: bshift
|
||||||
{ $values { "r" "the " { $link breset } " in scope" } { "quot" { $quotation ( pcc -- v ) } } }
|
{ $values { "r" "the " { $link breset } " in scope" } { "quot" { $quotation ( pcc -- v ) } } }
|
||||||
{ $description "Calls the quotation with the partial continuation on the stack. The quotation should have stack effect " { $snippet "( pcc -- v )" } ". The partial continuation can be called with " { $link call } " and has stack effect " { $snippet "( a -- b )" } "." }
|
{ $description "Calls the quotation with the partial continuation on the stack. The quotation should have stack effect " { $snippet "( pcc -- v )" } ". The partial continuation can be called with " { $link call } " and has stack effect " { $snippet "( a -- b )" } "." }
|
||||||
{ $notes "It is important to note that even if the quotation discards items on the stack, the stack will be restored to the way it was before it is called (which is true of continuation usage in general)." } ;
|
{ $notes "It is important to note that even if the quotation discards items on the stack, the stack will be restored to the way it was before it is called (which is true of continuation usage in general)." } ;
|
||||||
|
|
||||||
ARTICLE: "partial-continuations" "Partial continuations"
|
ARTICLE: "partial-continuations" "Partial continuations"
|
||||||
|
|
|
@ -105,7 +105,7 @@ HELP: pop3-account
|
||||||
{ { $slot "messages" } { "A sequence of email tuples in the mailbox containing each email's headers, number, uidl, and size." } }
|
{ { $slot "messages" } { "A sequence of email tuples in the mailbox containing each email's headers, number, uidl, and size." } }
|
||||||
}
|
}
|
||||||
"The " { $slot "host" } " is required; the rest are either set by default or optional." $nl
|
"The " { $slot "host" } " is required; the rest are either set by default or optional." $nl
|
||||||
"The " { $slot "user" } " and " { $slot "pwd" } " must either be set before using " { $link connect } " or immediately after it with the " { $link >user } " and " { $link >pwd } " words."
|
"The " { $slot "user" } " and " { $slot "pwd" } " must either be set before using " { $link connect } " or immediately after it with the " { $link >user } " and " { $link >pwd } " words."
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
HELP: message
|
HELP: message
|
||||||
|
|
|
@ -58,7 +58,7 @@ $nl
|
||||||
"In python, a method or function takes keyword arguments if its last parameter starts with \"**\". If the name of the last argument to a declared function is \"**\" then a " { $link hashtable } " can be sent to the function:"
|
"In python, a method or function takes keyword arguments if its last parameter starts with \"**\". If the name of the last argument to a declared function is \"**\" then a " { $link hashtable } " can be sent to the function:"
|
||||||
{ $code
|
{ $code
|
||||||
"PY-FROM: datetime => timedelta ( ** -- timedelta ) ;"
|
"PY-FROM: datetime => timedelta ( ** -- timedelta ) ;"
|
||||||
"PY-METHODS: timedelta => seconds ( self -- n ) ;"
|
"PY-METHODS: timedelta => seconds ( self -- n ) ;"
|
||||||
"H{ { \"hours\" 99 } { \"minutes\" 33 } } >py timedelta $seconds py> ."
|
"H{ { \"hours\" 99 } { \"minutes\" 33 } } >py timedelta $seconds py> ."
|
||||||
"12780"
|
"12780"
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,7 @@ HELP: 2map!
|
||||||
{ "seq1" sequence }
|
{ "seq1" sequence }
|
||||||
{ "seq2" sequence }
|
{ "seq2" sequence }
|
||||||
{ "quot" { $quotation ( ... elt1 elt2 -- ... newelt ) } } }
|
{ "quot" { $quotation ( ... elt1 elt2 -- ... newelt ) } } }
|
||||||
{ $description "Applies the quotation to each pair of elements from " { $snippet "seq1" } " and " { $snippet "seq2" } ", yielding a new element, and storing it back into " { $snippet "seq1" } ". Returns " { $snippet "seq1" } "." }
|
{ $description "Applies the quotation to each pair of elements from " { $snippet "seq1" } " and " { $snippet "seq2" } ", yielding a new element, and storing it back into " { $snippet "seq1" } ". Returns " { $snippet "seq1" } "." }
|
||||||
{ $see-also 2map map! } ;
|
{ $see-also 2map map! } ;
|
||||||
|
|
||||||
HELP: 2map-index
|
HELP: 2map-index
|
||||||
|
@ -34,7 +34,7 @@ HELP: 2map-index
|
||||||
{ "seq2" sequence }
|
{ "seq2" sequence }
|
||||||
{ "quot" { $quotation ( ... elt1 elt2 index -- ... newelt ) } }
|
{ "quot" { $quotation ( ... elt1 elt2 index -- ... newelt ) } }
|
||||||
{ "newseq" sequence } }
|
{ "newseq" sequence } }
|
||||||
{ $description "Calls the quotation with each pair of elements of the two sequences and their index on the stack, with the index on the top of the stack. Collects the outputs of the quotation and outputs them into a new sequence of the same type as the first sequence." }
|
{ $description "Calls the quotation with each pair of elements of the two sequences and their index on the stack, with the index on the top of the stack. Collects the outputs of the quotation and outputs them into a new sequence of the same type as the first sequence." }
|
||||||
{ $see-also 2map map-index } ;
|
{ $see-also 2map map-index } ;
|
||||||
|
|
||||||
HELP: count*
|
HELP: count*
|
||||||
|
@ -63,7 +63,7 @@ HELP: compact
|
||||||
{ "quot" { $quotation ( ... elt -- ... ? ) } }
|
{ "quot" { $quotation ( ... elt -- ... ? ) } }
|
||||||
{ "elt" object }
|
{ "elt" object }
|
||||||
{ "seq'" sequence } }
|
{ "seq'" sequence } }
|
||||||
{ $description "Generate a new sequence where all runs of elements for which the predicate returns true are replaced by a single instance of " { $snippet "elt" } ". Runs at the beginning or end of the sequence for which the predicate returns true are removed." }
|
{ $description "Generate a new sequence where all runs of elements for which the predicate returns true are replaced by a single instance of " { $snippet "elt" } ". Runs at the beginning or end of the sequence for which the predicate returns true are removed." }
|
||||||
{ $see-also collapse }
|
{ $see-also collapse }
|
||||||
{ $examples
|
{ $examples
|
||||||
"Collapse multiple spaces in a string down to a single space"
|
"Collapse multiple spaces in a string down to a single space"
|
||||||
|
|
|
@ -18,11 +18,11 @@ HELP: setwise-xor
|
||||||
|
|
||||||
HELP: symmetric-diff
|
HELP: symmetric-diff
|
||||||
{ $values { "set1" set } { "set2" set } { "set" set } }
|
{ $values { "set1" set } { "set2" set } { "set" set } }
|
||||||
{ $description "Find the symmetric difference of two sets. Outputs a set containing elements that in either set but not in both." } ;
|
{ $description "Find the symmetric difference of two sets. Outputs a set containing elements that in either set but not in both." } ;
|
||||||
|
|
||||||
HELP: proper-subset?
|
HELP: proper-subset?
|
||||||
{ $values { "set1" set } { "set2" set } { "?" boolean } }
|
{ $values { "set1" set } { "set2" set } { "?" boolean } }
|
||||||
{ $description "Find whether " { $snippet "set1" } " is a proper subset of " { $snippet "set2" } ". Returns true if " { $snippet "set1" } " is a subset of " { $snippet "set2" } " but " { $snippet "set2" } " is not a subset of " { $snippet "set1" } "." } ;
|
{ $description "Find whether " { $snippet "set1" } " is a proper subset of " { $snippet "set2" } ". Returns true if " { $snippet "set1" } " is a subset of " { $snippet "set2" } " but " { $snippet "set2" } " is not a subset of " { $snippet "set1" } "." } ;
|
||||||
|
|
||||||
ARTICLE: "sets.extras" "Extra sets words"
|
ARTICLE: "sets.extras" "Extra sets words"
|
||||||
"The " { $vocab-link "sets.extras" } " vocabulary is a collection of words related to sets."
|
"The " { $vocab-link "sets.extras" } " vocabulary is a collection of words related to sets."
|
||||||
|
|
|
@ -8,7 +8,7 @@ HELP: run-invaders
|
||||||
"Run the Space Invaders emulator in a new window." $nl
|
"Run the Space Invaders emulator in a new window." $nl
|
||||||
{ $link rom-root } " must be set to the directory containing the "
|
{ $link rom-root } " must be set to the directory containing the "
|
||||||
"location of the Space Invaders ROM files. See "
|
"location of the Space Invaders ROM files. See "
|
||||||
{ $link { "space-invaders" "space-invaders" } } " for details."
|
{ $link { "space-invaders" "space-invaders" } } " for details."
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
ARTICLE: { "space-invaders" "space-invaders" } "Space Invaders Emulator"
|
ARTICLE: { "space-invaders" "space-invaders" } "Space Invaders Emulator"
|
||||||
|
|
|
@ -84,10 +84,10 @@ HELP: implicit-end
|
||||||
{ implicit-start implicit-end } related-words
|
{ implicit-start implicit-end } related-words
|
||||||
|
|
||||||
HELP: merge
|
HELP: merge
|
||||||
{ $var-description "If false, deserialized yaml documents will contain instances of " { $link yaml-merge } " for !!merge keys and the value associated with this key will not be merged into the enclosing mapping. You can then call ?apply-merge-key on such a mapping to perform the merge." } ;
|
{ $var-description "If false, deserialized yaml documents will contain instances of " { $link yaml-merge } " for !!merge keys and the value associated with this key will not be merged into the enclosing mapping. You can then call ?apply-merge-key on such a mapping to perform the merge." } ;
|
||||||
|
|
||||||
HELP: value
|
HELP: value
|
||||||
{ $var-description "If false, deserialized yaml documents will contain instances of " { $link yaml-value } " for !!value keys and the value associated with this key will replace the enclosing mapping. You can then call scalar-value on such a mapping to get the default value." } ;
|
{ $var-description "If false, deserialized yaml documents will contain instances of " { $link yaml-value } " for !!value keys and the value associated with this key will replace the enclosing mapping. You can then call scalar-value on such a mapping to get the default value." } ;
|
||||||
ABOUT: "yaml-config"
|
ABOUT: "yaml-config"
|
||||||
{ yaml-merge merge } related-words
|
{ yaml-merge merge } related-words
|
||||||
{ yaml-value value } related-words
|
{ yaml-value value } related-words
|
||||||
|
|
|
@ -10,7 +10,7 @@ HELP: >yaml
|
||||||
{ "obj" object }
|
{ "obj" object }
|
||||||
{ "str" string }
|
{ "str" string }
|
||||||
}
|
}
|
||||||
{ $description "Serializes the object into a YAML formatted string with one document representing the object." } ;
|
{ $description "Serializes the object into a YAML formatted string with one document representing the object." } ;
|
||||||
|
|
||||||
HELP: >yaml-docs
|
HELP: >yaml-docs
|
||||||
{ $values
|
{ $values
|
||||||
|
@ -87,7 +87,7 @@ HELP: scalar-value
|
||||||
{ "obj" object }
|
{ "obj" object }
|
||||||
{ "obj'" object }
|
{ "obj'" object }
|
||||||
}
|
}
|
||||||
{ $description "If " { $snippet "obj" } " is hashtable, returns it's default value, else return " { $snippet "obj" } " itself." } ;
|
{ $description "If " { $snippet "obj" } " is hashtable, returns it's default value, else return " { $snippet "obj" } " itself." } ;
|
||||||
|
|
||||||
ARTICLE: "yaml-mapping" "Mapping between Factor and YAML types"
|
ARTICLE: "yaml-mapping" "Mapping between Factor and YAML types"
|
||||||
{ $heading "Types mapping" }
|
{ $heading "Types mapping" }
|
||||||
|
@ -232,7 +232,7 @@ t emitter-unicode set
|
||||||
H{
|
H{
|
||||||
{ \"name\" \"Mark McGwire\" }
|
{ \"name\" \"Mark McGwire\" }
|
||||||
{ \"hr\" 65 }
|
{ \"hr\" 65 }
|
||||||
{ \"avg\" 0.278 }
|
{ \"avg\" 0.278 }
|
||||||
}
|
}
|
||||||
H{
|
H{
|
||||||
{ \"name\" \"Sammy Sosa\" }
|
{ \"name\" \"Sammy Sosa\" }
|
||||||
|
|
Loading…
Reference in New Issue