<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Command line</title><link>https://sourceforge.net/p/ugp3/wiki/Command%2520line/</link><description>Recent changes to Command line</description><atom:link href="https://sourceforge.net/p/ugp3/wiki/Command%20line/feed" rel="self"/><language>en</language><lastBuildDate>Tue, 30 Jun 2015 08:35:51 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/ugp3/wiki/Command%20line/feed" rel="self" type="application/rss+xml"/><item><title>Command line modified by Giovanni Squillero</title><link>https://sourceforge.net/p/ugp3/wiki/Command%2520line/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v6
+++ v7
@@ -1,6 +1,6 @@
 # Command line options

-**Notez bien**: the behavior of `ugp3` is controlled by configuration files, not command line options. Our advice is to use command-line options only to override specific values in the configuration files.
+The behavior of `ugp3` is controlled by configuration files, not command line options. Command-line options should be used to tweak the execution, recover from an interrupted run, or temporary override specific values in the configuration files.

 ## Information

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Giovanni Squillero</dc:creator><pubDate>Tue, 30 Jun 2015 08:35:51 -0000</pubDate><guid>https://sourceforge.netf19bc23fc2c4e7eab2708fd77d5d6dbf30925255</guid></item><item><title>Command line modified by Jany Belluz</title><link>https://sourceforge.net/p/ugp3/wiki/Command%2520line/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v5
+++ v6
@@ -68,3 +68,6 @@

 **--removeTempFiles**: Overrides the option with the same name for the first population. See Population's Settings.

+**--enableScanOperators**: Enable "scan" operators by default. These are stable and work well but since they perform an almost exhaustive search in the neighbourhood of a solution, they produce many children and require numerous evaluations. You can enable those if your evaluator runs fast.
+
+**--enableExperimentalOperators**: Enable experimental operators by default, that is, all the algorithms that sound great but never really worked. Could boost MicroGP's performance or erase your hard drive.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Jany Belluz</dc:creator><pubDate>Thu, 27 Nov 2014 15:09:31 -0000</pubDate><guid>https://sourceforge.net075aa17fd44fd0716b4280e2f0a82030f0bc356c</guid></item><item><title>Command line modified by Giovanni Squillero</title><link>https://sourceforge.net/p/ugp3/wiki/Command%2520line/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v4
+++ v5
@@ -1,6 +1,8 @@
 # Command line options

 **Notez bien**: the behavior of `ugp3` is controlled by configuration files, not command line options. Our advice is to use command-line options only to override specific values in the configuration files.
+
+## Information

 These options make µGP display different information and then exit.

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Giovanni Squillero</dc:creator><pubDate>Sat, 11 Oct 2014 16:51:45 -0000</pubDate><guid>https://sourceforge.net935c66aed8a01a4c53031f14a9097c8116639c30</guid></item><item><title>Command line modified by Giovanni Squillero</title><link>https://sourceforge.net/p/ugp3/wiki/Command%2520line/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v3
+++ v4
@@ -0,0 +1,68 @@
+# Command line options
+
+**Notez bien**: the behavior of `ugp3` is controlled by configuration files, not command line options. Our advice is to use command-line options only to override specific values in the configuration files.
+
+These options make µGP display different information and then exit.
+
+**--version**: Version and compilation information.
+
+**--license**: Additional details about µGP license, namely the GNU General Public License [1].
+
+**--help**: A laconic note suggesting to read this wiki.
+
+## Logging
+
+These options controls the amount of information that µGP produces during the execution.
+
+
+**--debug**: Show detailed information about every single operation performed. Yes, it means a lot of data. Indeed, this option is probably useless unless you are filling a bug report.
+
+**--verbose**: Show more information than usual. Useful when the fitness function is computationally expensive.
+
+**--info**: Show the standard amount of information. Indeed, this the default option. Also note that the nice progress bars are only used with this verbosity level.
+
+**--warning**: Only show warnings and errors.
+
+**--error**: Only show errors.
+
+**--silent**: Nothing is shown. Never. This option is deprecated and useless. Nevertheless, it has been advocated by Dr. Massimiliano Schillaci, and therefore cannot be removed.
+
+**--log FILE VERBOSITY FORMAT**: Add a log stream. Data are saved in FILE; the verbosity level can be debug, verbose, info, warning, or error; the FORMAT can be either brief or extended. See the discussion on the logging context in the main settings for details.
+
+**--statisticsPathName FIL**: Save detailed statistics about the evolution in FILE in CSV format. Useful to debug the performance of the algorithm. If FILE already exists, µGP tries not to overwrite it. See format of evolution statistics.
+
+## Exploiting a previous run
+
+These options are used to control how µGP use the results of previous runs, or recover an interrupted experiment.
+
+
+**--recoveryInput STATUS**: Load the full toolkit status from the XML file STATUS and continue. I.e., fully recover an interrupted experiments. Everything is restored, including the internal status of the random number generator.
+
+**--recoveryInputPopulations FILE**: Overrides the configuration file. Load a population from FILE and starts evolution.
+
+**--recoveryDiscardFitness**: After recovery, invalidate all fitness values. This option is useful if the fitness evaluator has been changed.
+
+**--population FILE**: Loads a population from FILE.
+
+**--merge destination source**: Merges a population inside another one. Populations are numbered starting from zero up to one less than the total number of populations, in the same order as they have been initially created. For instance, to merge population number 3 and 
+number 0, leaving **the resulting population in place 0: --merge 0 **: This option may be used more than once. A single merge will occur for every use of the switch.
+
+## Last minute tweaking
+
+
+**--randomSeed**: Overrides the option with the same name in Main Settings
+
+**--recoveryOutput**: Overrides the option with the same name in Main Settings
+
+**--evaluatorPathName**: Overrides the option with the same name for the first population. See Population's Settings.
+
+**--concurrentEvaluations**: Overrides the option with the same name for the first population. See Population's Settings.
+
+**--evaluatorInputPathName**: Overrides the option with the same name for the first population. See Population's Settings.
+
+**--evaluatorOutputPathName**: Overrides the option with the same name for the first population. See Population's Settings.
+
+**--fitnessParameters**: Overrides the option with the same name for the first population. See Population's Settings.
+
+**--removeTempFiles**: Overrides the option with the same name for the first population. See Population's Settings.
+
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Giovanni Squillero</dc:creator><pubDate>Sat, 11 Oct 2014 16:51:18 -0000</pubDate><guid>https://sourceforge.netd7286acbb8f2920b10ce48a8e4663309f1ab718e</guid></item><item><title>Command line modified by Giovanni Squillero</title><link>https://sourceforge.net/p/ugp3/wiki/Command%2520line/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v2
+++ v3
@@ -1,174 +0,0 @@
-# Population's Constraints
-
-Basically, population's constraints describe the structure of an individual in the experiment you are trying to run. For example, if you are trying to find the highest point in an function with n variables, a work-in-progress individual in this problem will be a set of n real numbers; if you are trying to find an assembly program able to set apart between odd and even number, then your individual will be an assembly program.
-
-This is probably the most useful feature of µGP: thanks to the great flexibility of the constraints file, it is able to represent almost all kind of individuals, ranging from trivial to extremely complex. Note that `constraints.xml` is the default name for the file, but the effective name must be specified in the apposite option of your population's settings file (usually named population.settings.xml, but the effective name of the population file is specified in ugp3.settings.xml).
-
-Constraints strictly follow the internal structure of individuals (described here). The XML file defining constraints is composed of any number of type definitions, and one or more sections.
-
-~~~~ xml
-&amp;lt;constraints&amp;gt;
-    &amp;lt;typeDefinitions&amp;gt;
-        &amp;lt;item item_attributes=""&amp;gt;
-            ... 
-        &amp;lt;/item&amp;gt;
-        ...
-    &amp;lt;/typeDefinitions&amp;gt; 
-
-    &amp;lt;prologue prologue_attributes=""&amp;gt;
-        &amp;lt;expression&amp;gt;
-            ...
-        &amp;lt;/expression&amp;gt;
-        &amp;lt;parameters&amp;gt;
-            ...
-        &amp;lt;/parameters&amp;gt;
-    &amp;lt;/prologue&amp;gt;
-    &amp;lt;epilogue epilogue_attributes=""&amp;gt;
-        &amp;lt;expression&amp;gt;
-            ...
-        &amp;lt;/expression&amp;gt;
-        &amp;lt;parameters&amp;gt;
-            ...
-        &amp;lt;/parameters&amp;gt;
-    &amp;lt;/epilogue&amp;gt;
-
-    &amp;lt;sections&amp;gt;
-        &lt;section&gt;
-            ...
-        &lt;/section&gt;
-        &lt;section&gt;
-            ...
-        &lt;/section&gt;
-        ...
-    &amp;lt;/sections&amp;gt;
-&amp;lt;/constraints&amp;gt;
-~~~~
-
-## The Section Element
-
-Each section contains a prologue, and epilogue and an arbitrary number of subsections. Prologue and epilogue are full fledged macros, see their definition later.
-
-~~~~ xml
-&lt;section&gt;
-    &amp;lt;prologue prologue_attributes=""&amp;gt;
-        &amp;lt;expression&amp;gt;
-            ...
-        &amp;lt;/expression&amp;gt;
-        &amp;lt;parameters&amp;gt;
-            ...
-        &amp;lt;/parameters&amp;gt;
-    &amp;lt;/prologue&amp;gt;
-    &amp;lt;epilogue epilogue="" attributes=""&amp;gt;
-        &amp;lt;expression&amp;gt;
-            ...
-        &amp;lt;/expression&amp;gt;
-        &amp;lt;parameters&amp;gt;
-            ...
-        &amp;lt;/parameters&amp;gt;
-    &amp;lt;/epilogue&amp;gt;
-    &amp;lt;subSections&amp;gt;
-        &amp;lt;subSection subsection_attributes=""&amp;gt;
-            ...
-        &amp;lt;/subSection&amp;gt;
-        &amp;lt;subSection subsection_attributes=""&amp;gt;
-            ...
-        &amp;lt;/subSection&amp;gt;
-        ...
-    &amp;lt;/subSections&amp;gt;
-&lt;/section&gt;
-~~~~ 
-
-More details can be found in the Section page, Prologue page, and Epilogue page.
-
-## The Subsection Element
-
-Each subsection contains a prologue, and epilogue and an arbitrary number of macros. Also prologue and epilogue are macros, see their definition later.
-
-~~~~ xml
-&amp;lt;subSection subsection_attributes=""&amp;gt;
-    &amp;lt;prologue prologue_attributes=""&amp;gt;
-        &amp;lt;expression&amp;gt;
-            ...
-        &amp;lt;/expression&amp;gt;
-        &amp;lt;parameters&amp;gt;
-            ...
-        &amp;lt;/parameters&amp;gt;
-    &amp;lt;/prologue&amp;gt;
-    &amp;lt;epilogue epilogue_attributes=""&amp;gt;
-        &amp;lt;expression&amp;gt;
-            ...
-        &amp;lt;/expression&amp;gt;
-        &amp;lt;parameters&amp;gt;
-            ...
-        &amp;lt;/parameters&amp;gt;
-    &amp;lt;/epilogue&amp;gt;
-    &amp;lt;macros macros_attributes=""&amp;gt;
-        &amp;lt;macro macro_attributes=""&amp;gt;
-            ...
-        &amp;lt;/macro&amp;gt;
-        &amp;lt;macro macro_attributes=""&amp;gt;
-            ...
-        &amp;lt;/macro&amp;gt;
-        ... 
-    &amp;lt;macros&amp;gt;
-&amp;lt;/subSection&amp;gt;
-~~~~ 
-
-More details can be found in the Subsection page, Prologue page, and Epilogue page.
-
-## The Macro Element
-
-Macros are the building block of the individuals. A macro is composed of a fixed part (the expression) and a variable part (the parameters).
-
-~~~~ xml
-&amp;lt;macro macro_attributes=""&amp;gt;
-    &amp;lt;expression&amp;gt;
-        ...
-    &amp;lt;/expression&amp;gt;
-    &amp;lt;parameters&amp;gt;
-        &amp;lt;item item_attributes=""/&amp;gt;
-        &amp;lt;item item_attributes=""/&amp;gt;
-        ...
-    &amp;lt;/parameters&amp;gt;
-&amp;lt;/macro&amp;gt;
-~~~~ 
-
-More details can be found in the Macros page (the macro container) and the Macro page. Remember that also Prologue and Epilogue are macro.
-
-## Formats
-
-In each level of the hierarchy (section/subsection/macro) it is possible to change four formats. The expression is
-
-`&amp;lt;fooFormat&amp;gt;prefix&amp;lt;value/&amp;gt;postfix&amp;lt;/fooFormat&amp;gt;`
-
-Value is the internal identifier for the object.
-
-**commentFormat**: Format used to add comments. Note that µGP may add notes in the form of comments inside the generated code.
-
-**identifierFormat**: How the internal identifier can be translated into a valid identifier. Remember that internal identifiers uses all letters and numbers allowed in the BASE32 encoding (ABCDEFGHIJKLMNOPQRSTUVWXYZ234567). Symbols can appear in every position, without syntactic restrictions. Many applications, like the generation of assembly language, require that identifiers start with a letter. For instance,
-
-~~~~ xml
-&amp;lt;identifierFormat&amp;gt;J_&amp;lt;value/&amp;gt;&amp;lt;/identifierFormat&amp;gt;
-~~~~ 
-
-may generate assembly code like
-
-~~~~ asm
-jmp J_2NS345
-~~~~ 
-
-**labelFormat**: How the identifier of a macro is dumped if that macro is the target of some reference. The identifier has already been patched according to identifierFormat. For instance,
-
-~~~~ xml
-&amp;lt;identifierFormat&amp;gt;J_&amp;lt;value/&amp;gt;&amp;lt;/identifierFormat&amp;gt;
-&amp;lt;labelFormat&amp;gt;&amp;lt;value/&amp;gt;:&amp;lt;/labelFormat&amp;gt;
-~~~~ 
-may generate assembly code like
-
-~~~~ asm
-J_2NS345: sub ax, 2  
-~~~~ 
-
-**uniqueTagFormat**:
-
-Format used for the unique tag parameter (see macro).
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Giovanni Squillero</dc:creator><pubDate>Sat, 11 Oct 2014 16:46:25 -0000</pubDate><guid>https://sourceforge.net8a75cf87ed51f0b2ae4818c28f0b8a9b161facd4</guid></item><item><title>Command line modified by Giovanni Squillero</title><link>https://sourceforge.net/p/ugp3/wiki/Command%2520line/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -3,10 +3,6 @@
 Basically, population's constraints describe the structure of an individual in the experiment you are trying to run. For example, if you are trying to find the highest point in an function with n variables, a work-in-progress individual in this problem will be a set of n real numbers; if you are trying to find an assembly program able to set apart between odd and even number, then your individual will be an assembly program.

 This is probably the most useful feature of µGP: thanks to the great flexibility of the constraints file, it is able to represent almost all kind of individuals, ranging from trivial to extremely complex. Note that `constraints.xml` is the default name for the file, but the effective name must be specified in the apposite option of your population's settings file (usually named population.settings.xml, but the effective name of the population file is specified in ugp3.settings.xml).
-
-## Hierarchical Overview
-
-You may prefer the Population's Constraints Flat Overview.

 Constraints strictly follow the internal structure of individuals (described here). The XML file defining constraints is composed of any number of type definitions, and one or more sections.

@@ -135,8 +131,9 @@
         ...
     &amp;lt;/parameters&amp;gt;
 &amp;lt;/macro&amp;gt;
+~~~~ 
+
 More details can be found in the Macros page (the macro container) and the Macro page. Remember that also Prologue and Epilogue are macro.
-~~~~ 

 ## Formats

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Giovanni Squillero</dc:creator><pubDate>Sat, 11 Oct 2014 16:46:05 -0000</pubDate><guid>https://sourceforge.net8be0dcf2a9d5b75183924a17ba4ae3cfbd7d9c37</guid></item><item><title>Command line modified by Giovanni Squillero</title><link>https://sourceforge.net/p/ugp3/wiki/Command%2520line/</link><description>&lt;div class="markdown_content"&gt;&lt;h1 id="populations-constraints"&gt;Population's Constraints&lt;/h1&gt;
&lt;p&gt;Basically, population's constraints describe the structure of an individual in the experiment you are trying to run. For example, if you are trying to find the highest point in an function with n variables, a work-in-progress individual in this problem will be a set of n real numbers; if you are trying to find an assembly program able to set apart between odd and even number, then your individual will be an assembly program.&lt;/p&gt;
&lt;p&gt;This is probably the most useful feature of µGP: thanks to the great flexibility of the constraints file, it is able to represent almost all kind of individuals, ranging from trivial to extremely complex. Note that &lt;code&gt;constraints.xml&lt;/code&gt; is the default name for the file, but the effective name must be specified in the apposite option of your population's settings file (usually named population.settings.xml, but the effective name of the population file is specified in ugp3.settings.xml).&lt;/p&gt;
&lt;h2 id="hierarchical-overview"&gt;Hierarchical Overview&lt;/h2&gt;
&lt;p&gt;You may prefer the Population's Constraints Flat Overview.&lt;/p&gt;
&lt;p&gt;Constraints strictly follow the internal structure of individuals (described here). The XML file defining constraints is composed of any number of type definitions, and one or more sections.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="nt"&gt;&amp;lt;constraints&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;typeDefinitions&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;item&lt;/span&gt; &lt;span class="err"&gt;item_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            ... 
        &lt;span class="nt"&gt;&amp;lt;/item&amp;gt;&lt;/span&gt;
        ...
    &lt;span class="nt"&gt;&amp;lt;/typeDefinitions&amp;gt;&lt;/span&gt; 

    &lt;span class="nt"&gt;&amp;lt;prologue&lt;/span&gt; &lt;span class="err"&gt;prologue_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;expression&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/expression&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;parameters&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/parameters&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/prologue&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;epilogue&lt;/span&gt; &lt;span class="err"&gt;epilogue_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;expression&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/expression&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;parameters&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/parameters&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/epilogue&amp;gt;&lt;/span&gt;

    &lt;span class="nt"&gt;&amp;lt;sections&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;section&lt;/span&gt; &lt;span class="err"&gt;section_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/section&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;section&lt;/span&gt; &lt;span class="err"&gt;section_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/section&amp;gt;&lt;/span&gt;
        ...
    &lt;span class="nt"&gt;&amp;lt;/sections&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/constraints&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;h2 id="the-section-element"&gt;The Section Element&lt;/h2&gt;
&lt;p&gt;Each section contains a prologue, and epilogue and an arbitrary number of subsections. Prologue and epilogue are full fledged macros, see their definition later.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="nt"&gt;&amp;lt;section&lt;/span&gt; &lt;span class="err"&gt;section_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;prologue&lt;/span&gt; &lt;span class="err"&gt;prologue_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;expression&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/expression&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;parameters&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/parameters&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/prologue&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;epilogue&lt;/span&gt; &lt;span class="err"&gt;epilogue&lt;/span&gt; &lt;span class="err"&gt;attributes&lt;/span&gt; &lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;expression&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/expression&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;parameters&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/parameters&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/epilogue&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;subSections&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;subSection&lt;/span&gt; &lt;span class="err"&gt;subsection_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/subSection&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;subSection&lt;/span&gt; &lt;span class="err"&gt;subsection_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/subSection&amp;gt;&lt;/span&gt;
        ...
    &lt;span class="nt"&gt;&amp;lt;/subSections&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/section&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;More details can be found in the Section page, Prologue page, and Epilogue page.&lt;/p&gt;
&lt;h2 id="the-subsection-element"&gt;The Subsection Element&lt;/h2&gt;
&lt;p&gt;Each subsection contains a prologue, and epilogue and an arbitrary number of macros. Also prologue and epilogue are macros, see their definition later.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="nt"&gt;&amp;lt;subSection&lt;/span&gt; &lt;span class="err"&gt;subsection_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;prologue&lt;/span&gt; &lt;span class="err"&gt;prologue_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;expression&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/expression&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;parameters&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/parameters&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/prologue&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;epilogue&lt;/span&gt; &lt;span class="err"&gt;epilogue_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;expression&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/expression&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;parameters&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/parameters&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;/epilogue&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;macros&lt;/span&gt; &lt;span class="err"&gt;macros_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;macro&lt;/span&gt; &lt;span class="err"&gt;macro_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/macro&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;macro&lt;/span&gt; &lt;span class="err"&gt;macro_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
            ...
        &lt;span class="nt"&gt;&amp;lt;/macro&amp;gt;&lt;/span&gt;
        ... 
    &lt;span class="nt"&gt;&amp;lt;macros&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/subSection&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;More details can be found in the Subsection page, Prologue page, and Epilogue page.&lt;/p&gt;
&lt;h2 id="the-macro-element"&gt;The Macro Element&lt;/h2&gt;
&lt;p&gt;Macros are the building block of the individuals. A macro is composed of a fixed part (the expression) and a variable part (the parameters).&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="nt"&gt;&amp;lt;macro&lt;/span&gt; &lt;span class="err"&gt;macro_attributes&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;expression&amp;gt;&lt;/span&gt;
        ...
    &lt;span class="nt"&gt;&amp;lt;/expression&amp;gt;&lt;/span&gt;
    &lt;span class="nt"&gt;&amp;lt;parameters&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;item&lt;/span&gt; &lt;span class="err"&gt;item_attributes&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
        &lt;span class="nt"&gt;&amp;lt;item&lt;/span&gt; &lt;span class="err"&gt;item_attributes&lt;/span&gt; &lt;span class="nt"&gt;/&amp;gt;&lt;/span&gt;
        ...
    &lt;span class="nt"&gt;&amp;lt;/parameters&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/macro&amp;gt;&lt;/span&gt;
More details can be found in the Macros page (the macro container) and the Macro page. Remember that also Prologue and Epilogue are macro.
&lt;/pre&gt;&lt;/div&gt;
&lt;h2 id="formats"&gt;Formats&lt;/h2&gt;
&lt;p&gt;In each level of the hierarchy (section/subsection/macro) it is possible to change four formats. The expression is&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&amp;lt;fooFormat&amp;gt;prefix&amp;lt;value/&amp;gt;postfix&amp;lt;/fooFormat&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Value is the internal identifier for the object.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;commentFormat&lt;/strong&gt;: Format used to add comments. Note that µGP may add notes in the form of comments inside the generated code.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;identifierFormat&lt;/strong&gt;: How the internal identifier can be translated into a valid identifier. Remember that internal identifiers uses all letters and numbers allowed in the BASE32 encoding (ABCDEFGHIJKLMNOPQRSTUVWXYZ234567). Symbols can appear in every position, without syntactic restrictions. Many applications, like the generation of assembly language, require that identifiers start with a letter. For instance,&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="nt"&gt;&amp;lt;identifierFormat&amp;gt;&lt;/span&gt;J_&lt;span class="nt"&gt;&amp;lt;value/&amp;gt;&amp;lt;/identifierFormat&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;may generate assembly code like&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="n"&gt;jmp&lt;/span&gt; &lt;span class="n"&gt;J_2NS345&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;labelFormat&lt;/strong&gt;: How the identifier of a macro is dumped if that macro is the target of some reference. The identifier has already been patched according to identifierFormat. For instance,&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="nt"&gt;&amp;lt;identifierFormat&amp;gt;&lt;/span&gt;J_&lt;span class="nt"&gt;&amp;lt;value/&amp;gt;&amp;lt;/identifierFormat&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;labelFormat&amp;gt;&amp;lt;value/&amp;gt;&lt;/span&gt;:&lt;span class="nt"&gt;&amp;lt;/labelFormat&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;may generate assembly code like&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="n"&gt;J_2NS345&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;sub&lt;/span&gt; &lt;span class="n"&gt;ax&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;uniqueTagFormat&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;Format used for the unique tag parameter (see macro).&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Giovanni Squillero</dc:creator><pubDate>Sat, 11 Oct 2014 16:44:54 -0000</pubDate><guid>https://sourceforge.netef168bac5d23dcfaa678bfbf74cf9dd6f469fda6</guid></item></channel></rss>