Examine individual changes
This page allows you to examine the variables generated by the Abuse Filter for an individual change.
Variables generated for this change
Variable | Value |
---|---|
Edit count of the user (user_editcount) | 117 |
Name of the user account (user_name) | 'ZCX islptng' |
Age of the user account (user_age) | 25825241 |
Page ID (page_id) | 21170 |
Page namespace (page_namespace) | 0 |
Page title (without namespace) (page_title) | 'RuleLoader' |
Full page title (page_prefixedtitle) | 'RuleLoader' |
Action (action) | 'edit' |
Edit summary/reason (summary) | '' |
Old content model (old_content_model) | 'wikitext' |
New content model (new_content_model) | 'wikitext' |
Old page wikitext, before the edit (old_wikitext) | '{{stub}}
'''RuleLoader''' is the algorithm used to simulate <code>.rule</code> files describing different types of [[CA]], also known as '''rule tables''' and '''rule trees'''. A description of the file format is provided in Golly's built-in help.<ref name="help_ruleloader" /><ref name="help_ruleformat" />
RuleLoader is capable of describing [[CA]] rules of different kinds, including asymmetric rules and hexagonal rules.
==Description==
The RuleLoader algorithm allows rules to be specified in external files. Given the rule string "Foo", RuleLoader will search for a file called <code>Foo.rule</code>.<ref name="help_ruleloader" />
A <code>.rule</code> file contains all the information about a rule: its name, documentation, table/tree data (used by the RuleLoader algorithm), and any color/icon information. The <code>.rule</code> format is textual and consists of one or more sections. Each section starts with a line of the form <tt>@XXX...</tt> where X is an uppercase letter. If there is more than one section with the same name then only the first one is used. Any unrecognized sections are silently ignored.<ref name="help_ruleformat" />
The currently recognized sections are:<ref name="help_ruleformat" />
* @RULE (mandatory, and must match the file name)
* @TABLE (optional, but mandatory when @TREE is not present)
* @TREE (optional, but mandatory when @TREE is not present)
* @COLORS (optional: sets the color of each state, if not present, show as from red to yellow)
* @ICONS (optional: sets the icon of each state, if not present, show as diamonds for vonNeumann, skewed hexagon for Hexagonal, or circles)
* @NAMES (optional: doesn't work in Golly but [lazyslug.com LifeViewer] sets the name of each state)
==Syntax==
===@RULE===
@RULE RuleName
where <code>RuleName</code> is the name of the rule. It must be the same as the file name.
===@COLORS===
Num Red Green Blue Note
where <code>Num</code> is the cell state number;<br>
<code>Red</code>, <code>Green</code> and <code>Blue</code> is the color, each 0-255;<br>
<code>Note</code> is optional, you can write anything here.
FromR FromG FromB ToR ToG ToB
Gradients.
===@ICONS===
XPM
xpxpict
where <code>xpmpict</code> is a long picture, written in XPM format.<br>
The width must be one of 7, 15, 31. The height is either the same of the width, or number of states times width.
===@NAMES===
Num Name
where <code>Num</code> is the cell state number;<br>
<code>Name</code> is the cell name.
===@TREE===
This section is human-unfriendly, and usually generated by scripts.
===@TABLE===
n_states: NumStates
neighborhood: Neighbor
symmetries: Symmetry
Transitions
where <code>NumStates</code> is the number of cells;<br>
<code>Neighbor</code> is the neighborhood, one of
hexagonal vonNeumann oneDimensional Moore
<code>Symmetry</code> is the neighborhood, one of
none permute rotate4 rotate4reflect
in <code>Transitions</code>, there are 2 type of commands.
var SetName = {Contents}
defines a set.
C,Conditions,NewC
defines a transition.
==Computational class==
Rule Table is a meta-language, and thus a direct classification of its computational power is impossible. It can, however, describe John Conway's Game of Life, which is known to be [[Turing-complete]]. It might be argued, therefore, that Rule Table is "[[meta Turing-complete]]" (that is, able to describe Turing-complete systems.)
Also, any meta-language-plus-input is equivalent to a programming language. So a trivial extension to Rule Table which turns it into a [[Matrioshka language]] (like [[Thue]] or [[ODDBALL]]) would be Turing-complete.
==See also==
* [[Nutshell]]
==References==
<references>
<ref name="help_ruleloader">[http://golly.sourceforge.net/Help/Algorithms/RuleLoader.html RuleLoader] {{deadlink}}</ref>
<ref name="help_ruleformat">[http://golly.sourceforge.net/Help/formats.html#rule Rule format] {{deadlink}}</ref></references>
==External links==
[[Category:Languages]]
[[Category:Meta-languages]]
[[Category:Implemented]]
__NOTOC__' |
New page wikitext, after the edit (new_wikitext) | '{{stub}}
'''RuleLoader''' is the algorithm used to simulate <code>.rule</code> files describing different types of [[CA]], also known as '''rule tables''' and '''rule trees'''. A description of the file format is provided in Golly's built-in help.<ref name="help_ruleloader" /><ref name="help_ruleformat" />
RuleLoader is capable of describing [[CA]] rules of different kinds, including asymmetric rules and hexagonal rules.
==Description==
The RuleLoader algorithm allows rules to be specified in external files. Given the rule string "Foo", RuleLoader will search for a file called <code>Foo.rule</code>.<ref name="help_ruleloader" />
A <code>.rule</code> file contains all the information about a rule: its name, documentation, table/tree data (used by the RuleLoader algorithm), and any color/icon information. The <code>.rule</code> format is textual and consists of one or more sections. Each section starts with a line of the form <tt>@XXX...</tt> where X is an uppercase letter. If there is more than one section with the same name then only the first one is used. Any unrecognized sections are silently ignored.<ref name="help_ruleformat" />
The currently recognized sections are:<ref name="help_ruleformat" />
* @RULE (mandatory, and must match the file name)
* @TABLE (optional, but mandatory when @TREE is not present)
* @TREE (optional, but mandatory when @TREE is not present)
* @COLORS (optional: sets the color of each state, if not present, show as from red to yellow)
* @ICONS (optional: sets the icon of each state, if not present, show as diamonds for vonNeumann, skewed hexagon for Hexagonal, or circles)
* @NAMES (optional: doesn't work in Golly but [lazyslug.com LifeViewer] sets the name of each state)
==Syntax==
===@RULE===
@RULE RuleName
where <code>RuleName</code> is the name of the rule. It must be the same as the file name.
===@COLORS===
Num Red Green Blue Note
where <code>Num</code> is the cell state number;<br>
<code>Red</code>, <code>Green</code> and <code>Blue</code> is the color, each 0-255;<br>
<code>Note</code> is optional, you can write anything here.
FromR FromG FromB ToR ToG ToB
Gradients.
===@ICONS===
XPM
xpxpict
where <code>xpmpict</code> is a long picture, written in XPM format.<br>
The width must be one of 7, 15, 31. The height is either the same of the width, or number of states times width.
===@NAMES===
Num Name
where <code>Num</code> is the cell state number;<br>
<code>Name</code> is the cell name.
===@TREE===
This section is human-unfriendly, and usually generated by scripts.
===@TABLE===
n_states: NumStates
neighborhood: Neighbor
symmetries: Symmetry
Transitions
where <code>NumStates</code> is the number of cells;<br>
<code>Neighbor</code> is the neighborhood, one of
hexagonal vonNeumann oneDimensional Moore
<code>Symmetry</code> is the neighborhood, one of
none permute rotate4 rotate4reflect
in <code>Transitions</code>, there are 2 type of commands.
var SetName = {Contents}
defines a set.
C,Conditions,NewC
defines a transition.
==Computational class==
Rule Table is a meta-language, and thus a direct classification of its computational power is impossible. It can, however, describe John Conway's Game of Life, which is known to be [[Turing-complete]]. It might be argued, therefore, that Rule Table is "[[meta Turing-complete]]" (that is, able to describe Turing-complete systems.)
Also, any meta-language-plus-input is equivalent to a programming language. So a trivial extension to Rule Table which turns it into a [[Matrioshka language]] (like [[Thue]] or [[ODDBALL]]) would be Turing-complete.
[[User:ZCX islptng|islptng]] has made a UTM simulator in RuleLoader, available [https://conwaylife.com/forums/viewtopic.php?f=12&t=6639&p=194757#p194757 here].
==See also==
* [[Nutshell]]
==References==
<references>
<ref name="help_ruleloader">[http://golly.sourceforge.net/Help/Algorithms/RuleLoader.html RuleLoader] {{deadlink}}</ref>
<ref name="help_ruleformat">[http://golly.sourceforge.net/Help/formats.html#rule Rule format] {{deadlink}}</ref></references>
==External links==
[[Category:Languages]]
[[Category:Meta-languages]]
[[Category:Implemented]]
__NOTOC__' |
Unified diff of changes made by edit (edit_diff) | '@@ -61,4 +61,6 @@
Also, any meta-language-plus-input is equivalent to a programming language. So a trivial extension to Rule Table which turns it into a [[Matrioshka language]] (like [[Thue]] or [[ODDBALL]]) would be Turing-complete.
+
+[[User:ZCX islptng|islptng]] has made a UTM simulator in RuleLoader, available [https://conwaylife.com/forums/viewtopic.php?f=12&t=6639&p=194757#p194757 here].
==See also==
' |
New page size (new_size) | 4172 |
Old page size (old_size) | 4011 |
Lines added in edit (added_lines) | [
0 => '',
1 => '[[User:ZCX islptng|islptng]] has made a UTM simulator in RuleLoader, available [https://conwaylife.com/forums/viewtopic.php?f=12&t=6639&p=194757#p194757 here].'
] |
Unix timestamp of change (timestamp) | '1731996248' |